; RAT Hardware Equates
|
|
|
- Loren Martin
- 10 years ago
- Views:
Transcription
1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Apple /// RAT Driver ; ; ; ; For Apple ][-//e Mouse Card ; ; rls - 11/85 ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;Rat Driver Specific Error Codes XNoRat.EQU 30 ;No Mouse Card In Specified Slot XInvRPrm.EQU 31 ;Invalid Mouse Parameters XInvROp.EQU 32 ;Invali operation request (such as trying ; to read the Mouse when it is inactive) ;Control/Status Equates ReqCode.EQU 0C0 ;Request code BufPtr.EQU 0C2 ;Buffer pointer CtlStat.EQU 0C2 ;Control/status code CSlist.EQU 0C3 ;Control/Status list pointer ReqKt.EQU 0C4 ;Requested byte count BRPtr.EQU 0C8 ;Bytes-read pointer SltC.EQU 0E0 ;Zpage temp for Mouse firmware check TmpM10.EQU 0E0 ;Temp for 16 bit integer to ASCII conv. TmpDig.EQU 0E2 ;Temp for ASCII digit RetKt.EQU 0E3 ;Returned byte count temp PrmTblEP.EQU 1401 ;Parameter Table Extended Page AllocSIR.EQU 1913 ;Allocate system internal resource DealcSIR.EQU 1916 ;Deallocate system internal resource QueEvent.EQU 191F ;Place event in queue SysErr.EQU 1928 ;System error handler ; RAT Hardware Equates AIODDR.EQU 0C080 ;6821 I/O - DDR Register A APIACR.EQU 0C081 ;6821 Control Register A BIODDR.EQU 0C082 ;6821 I/O - DDR Register B BPIACR.EQU 0C083 ;6821 Control Register B ; /// Hardware Equates ASltInt.EQU 0FFDD ;Any slot interrupt flag Ereg.EQU 0FFDF ;Environment register Breg.EQU 0FFEF ;RAM bank register VKIntCtl.EQU 0FFEC ;VIA #2 PCR VKIntFlg.EQU 0FFED ;VIA #2 IFR VKIntEn.EQU 0FFEE ;VIA #2 IER ; Macros.MACRO Slowdwn LDA Ereg ORA #80 STA Ereg.ENDM.MACRO SpeedUp LDA Ereg AND #7F STA Ereg.ENDM
2 .MACRO Set1Mhz ;Shift to granny PHP Slowdwn.ENDM.MACRO Set2Mhz ;Crank it up PHP SpeedUp.ENDM.MACRO IncAdr ;Increment 3 byte address INC %1 BNE $10 INC %1+1 BNE $10 SEC ROR %1+1 INC %1+PrmTblEP ;increment extended page $10.ENDM.PROC RatDriver.WORD 0FFFF ;Comment Flag.WORD 22 ;# of chars in comment.ascii "Apple // Mouse driver".ascii " -- rls 11/85" DIB.WORD 00 ;Link.WORD ENTRY.BYTE 04 ;Length of Driver Name.ASCII ".RAT " ;Device Name (pad to 15 char).byte 80 ;Activity Flag (80=TRUE) DIBslt.BYTE 0FF ;Slot # (not currently defined).byte 00 ;Unit #.BYTE 60 ;Type (char, read/write).byte 00 ;Subtype.BYTE 00 ;Filler.WORD 0000 ;Link.WORD 00 ;Manufacturer.WORD 1100 ;Version 1.1.WORD 00 ;No DCB used ; General driver variables OpnFlg.BYTE 00 ;<Device is OPEN> flag Iok.BYTE 00 ;<Mouse card found> flag NLFlg.BYTE 00 ;NewLine mode in effect flag NLNxt.BYTE 00 ;NewLine char goes next flag NLChar.BYTE 00 ;Newline character (for read) RdFlg.BYTE 00 ;Read in progress flag RdKt.BYTE 00 ;Counter for bytes read Ld0Flg.BYTE 00 ;Flag for truncating leading 0's FldKt.BYTE 00 ;Counter for fields processed WrtFlg.BYTE 00 ;Write in progress flag WrtKt.BYTE 00 ;Counter for bytes written
3 IntPer.BYTE 00 ;Interrupt period (x/60 second) SltNum.BYTE 00 ;Slot number (s0) Rtmp.BLOCK 5,0 ;Temporary storage TBufr.BLOCK 0E,0 ;Temporary buffer for strings ; RAT Variables BIStat.BYTE 00 ;Button and interrupt status YH.BYTE 00 ;Current Y coordinate (high) YL.BYTE 00 ;Current Y coordinate (low) XH.BYTE 00 ;Current X coordinate (high) XL.BYTE 00 ;Current X coordinate (low) CRMode.BYTE 00 ;Current Rat Mode ClpXlo.BLOCK 2,0 ;Current clamping values (low byte first) ClpXmx.BLOCK 2,0 ClpYlo.BLOCK 2,0 ClpYmx.BLOCK 2,0 PLen.EQU *-OpnFlg ;Parameter table length SClpTbl.BYTE 0,0,0FF,3,0,0,0FF,3 ;Standard clamping values table ; (used only to set current value ; table to internal mouse defaults) ; SIR table for VIA (synch mouse on VBL) VSIRaddr.WORD VSIRtbl VSIRTbl.BYTE 00 ;SIR number.byte 00 ;ID byte.word 00 ;No interrupts used here VSIRXbyt.BYTE 00 ;SIR X byte VSIRkt.EQU *-VSIRtbl ; SIR table for mouse interrupts SIRaddr.WORD SIRtbl SIRtbl.BYTE 00 ;SIR number.byte 00 ;ID byte.word Serve ;Interrupt handler address SIRXbyt.BYTE 00 ;SIR X byte SIRkt.EQU *-SIRtbl ; Event table for Mouse button event MBEaddr.WORD MBETbl MBETbl.BLOCK 5,0 ;Priority, id, address (low,high,x-byte) ; Event table for Mouse movement event MMEaddr.WORD MMETbl MMETbl.BLOCK 5,0 ; Event table for Mouse timer event MTEaddr.WORD MTETbl MTETbl.BLOCK 5,0 ; Request table ReqTbl.WORD DevRead-1.WORD DevWrite-1.WORD DevStat-1.WORD DevCtrl-1.WORD ICErr-1.WORD ICErr-1
4 .WORD DevOpen-1.WORD DevClose-1.WORD DevInit-1 ENTRY LDA ReqCode ;Request code check CMP #09 BCS ICErr ASL A ;Code ok TAY LDA ReqTbl+1,Y PHA LDA ReqTbl,Y PHA ; System errors ICErr LDA #20 ;Invalid Request Code Error JSR SysErr DNOErr LDA #23 ;Device Not Open Error JSR SysErr DevInit LDY DIBslt ;First check slot boundary CPY #04 BCS DSerr ;Out of bounds- exit w/c=1 LDA #0 ;Check for mousecard STA Iok ;Se card-found flag to false STA SltC ;Zero out low address pointer byte LDA DIBslt ;Get slot number ORA #0C0 ; and stuff in high address pointer STA SltC+1 Set1Mhz LDY #0C ;Check firmware sig #1 LDA (SltC),Y CMP #20 ;Sig #1 = $20? BNE DSerr ;No- bye LDY #0FB ;Check firmware sig #2 LDA (SltC),Y CMP #0D6 ;Sig #2 = $d6? BNE DSerr ;No- bye LDA #80 ;Ok- Set flag and clear carry STA Iok CLC BCC Rfnd ;Ok - card found DSerr SEC Rfnd Set2Mhz DevOpen BIT OpnFlg LDA #24 ;Device Not Available JSR SysErr $1 JSR InitRat ;Set mouse and variables to ;default startup state LDA #80 ;Set <Device Is Open> flag STA OpnFlg DevClose ASL OpnFlg ;Check status and clear flag
5 BCS DoClose JMP DNOErr DoClose LDA CRMode ;Check current mode BEQ $1 ;Rat is not running JSR RatOff ;Deactivate the Rat $1 LDA #SIRkt ;Deallocate resources and bug out LDX SIRaddr LDY SIRaddr+1 JSR DealcSIR DevRead BIT OpnFlg BMI $1 JMP DNOErr $1 LDA CRMode ;Check that Mouse card is active AND #1 BNE DoRead LDA XInvROp JSR SysErr DoRead JSR FixUp ;Play it safe- check & fix any buf. anomalies LDA #0 STA RetKt LDA #0FF ;set 1's compliment EOR ReqKt STA ReqKt $1 INC ReqKt BEQ RdEnd JSR GetByte LDY #0 STA (BufPtr),Y PHA IncAdr BufPtr INC RetKt PLA BIT NLFlg CMP NLChar BNE $1 RdEnd LDY #0 LDA RetKt STA (BRPtr),Y TYA ;0-> MSB INY STA (BRPtr),Y ; 'GetByte' does all the work of reading the mouse data, formatting, and ; returning the decimal digit to the main Read routine. GetByte BIT NLNxt ;Is NewLine char going next? BMI XferNL ;Yes- send it BIT RdFlg ;Are we in the middle of a read xfer? BMI Xfer ;Yes- branch LDA #80 ;Set xfer flag True so Mouse won't be read STA RdFlg ; until current values are pulled. ASL A ;0->A STA FldKt JSR Read ;Read Mouse and store current values JSR B2Str ;Convert binary Mouse data to string format LDA #0 STA RdKt ;Set bytes-read counter to 0
6 STA NLNxt ;Set NewLine char next flag to 0 BEQ Xfer ;Always XferNL ASL NLNxt ;Read/clear flag LDA NLChar BCS XfrEnd ;Always Xfer LDY RdKt ;Get rat data bytes read counter LDA TBufr,Y INY STY RdKt CMP #80 ;End of field? BCC Xfrend ;B/no AND #7F ;Clear bit 7 INC FldKt ;Increment field counter LDY FldKt ;And check for end of record CPY #3 BNE ChkNl ;B/not end LDY #0 ;Else clear read flag STY RdFlg ChkNl BIT NLFlg ;Is NewLine flag set? BPL Xfrend ;No- branch LDY #80 ;Set NewLine char goes next flag STY NLNxt Xfrend ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; 16 bit to ASCII conversion ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; B2Str LDY #0 ;Clear buffer index LDA XL ;Convert X coords LDX XH JSR Cnvrt LDA YL ;Convert Y coords LDX YH JSR Cnvrt LDA BIStat ;Convert status byte ROL A ;Shift button flag bits ROL A ROL A AND #03 ;Clear out junk bits EOR #03 ;and convert bits 0+1 to 2's comp. (0=4,1=3,2=2,3=1) SEC ADC #00 LDX #00 CLC ;Status is always positive JMP PosCon Cnvrt CPX #80 ;Check for negative number BCC PosCon ; and branch if not ;convert negative to psitive by performing 2's complement operation EOR #0FF ADC #00 PHA TXA EOR #0FF ADC #00 TAX PLA SEC PosCon STA TmpM10 STX TmpM10+1 LDA #"+"
7 BCC PutSgn LDA #"-" PutSgn STA TBufr,Y INY LDA #80 ;Set Leading 0 flag to True STA Ld0Flg LDX #5-1 ;Index for 5 digits max. per field NxDigt LDA #"0" STA TmpDig ;Start with "0" and work up Subtct LDA TmpM10 CMP LowTbl,X ;C=1 if >= LDA TmpM10+1 SBC HiTbl,X ;See if High and Low >= table BCC $1 ;B/less than STA TmpM10+1 ;Store result high LDA TmpM10 SBC LowTbl,X STA TmpM10 INC TmpDig ;Increment the digit BNE Subtct ;Always $1 LDA TmpDig CPX #0 ;Check if last digit BEQ $2 ;B/yes CMP #"0" BNE $2 BIT Ld0Flg BMI $3 $2 STA TBufr,Y ASL Ld0Flg INY $3 DEX BPL NxDigt ;Branch if field not finished ORA #80 ;Flag last character of field STA TBufr-1,Y HiTbl.BYTE 00 ;1.BYTE 00 ;10.BYTE 00 ;100.BYTE 03 ;1000.BYTE 27 ;10000 LowTbl.BYTE 01 ;1.BYTE 0A ;10.BYTE 64 ;100.BYTE 0E8 ;1000.BYTE 10 ;10000 DevWrite BIT OpnFlg BMI DoWrite JMP DNOErr DoWrite JSR FixUp LDA #0FF ;set 1's compliment EOR ReqKT STA ReqKt LDA #0FF EOR ReqKt+1 STA ReqKt+1 $1 INC ReqKt BNE $2
8 INC ReqKt+1 BNE $2 ;Finished $2 LDY #0 LDA (BufPtr),Y JSR PutByte IncAdr BufPtr JMP $1 PutByte BNE $1 ;1st check if Rat to be switched off LDA CRMode ;Check if Rat is active AND #1 BEQ PutExit ;Already off JMP RatOff ;Turn it off now and return to DoWrite $1 CMP #1 BNE PutExit ;Just ignore any other characters ; Turn Rat ON LDA CRMod ORA #1 JSR Set ;Set Rat mode (and CRMode) JSR Clear PutExit FixUp LDA BufPtr+1 BEQ $2 CMP #0FF BEQ $3 $2 LDA #80 STA BufPtr+1 DEC BufPtr+PrmTblEP LDA BufPtr+PrmTblEP CMP #7F BNE $4 LDA #20 STA BufPtr+1 LDA #8F STA BufPtr+PrmTblEP BNE $4 $3 CLC ROR BufPtr+1 INC BufPtr+PrmTblEP $4 STLen.EQU 0F ;Entries in status table StatTbl.WORD DS00-1.WORD SCtrl-1.WORD StatNL-1.WORD SStat-1.WORD SSet-1.WORD SRead-1.WORD SClear-1.WORD SPos-1.WORD SClamp-1.WORD SHome-1.WORD SButEvt-1.WORD SMovEvt-1.WORD STmrEvt-1.WORD SIntPer-1.WORD SR05-1
9 DevStat BIT OpnFlg BMI $1 JMP DNOErr $1 LDA CtlStat ;Status code check CMP #STLen BCC $2 LDA #21 JSR SysErr $2 ASL A ;Code ok TAY LDA StatTbl+1,Y PHA LDA StatTbl,Y PHA ; do nothing DS00 ;Return control parameters SCtrl LDY #0 LDA #PLen ;Return byte count PHP TAY $2 LDA OpnFlg,Y INY ;increment offset and put ;restore offset BPL $2 ; Return current NewLine character StatNl LDY #0 LDA NLFlg INY LDA NLChar ; Return and clear the current button/interrupt status byte value SStat PHP LDY #0 LDA BIStat STY BIStat ; Return current operation mode SSet LDY #0 LDA CRMode
10 ; Return mouse X, Y, Status values SRead JSR Read PHP LDY #0 LDX #4 $1 LDA BIStat,X INY DEX LDA #0 ;Clear BIStat STA BIStat ; No operation SClear ; No operation SPos ; Return current clamping values SClamp LDY #7 $1 LDA ClpXlo,Y ;Branch until all xferred ; No operation SHome ; Return Button Event parameter table SButEvt LDY #5 $1 LDA MBETbl,Y ; Return Mouse Movement Event parameter table SMovEvt LDY #5 $1 LDA MMETbl,Y ; Return Mouse Timer Event parameter table STmrEvt LDY #5 $1 LDA MTETbl,Y ; Return interrupt interval (x/60 seconds) SIntPer LDY #0
11 LDA IntPer ; Read byte from 6805 SR05 PHP LDY #0 LDA (CSList),Y ;Low address byte STA RTmp+1 INY LDA (CSList),Y ;High address byte STA RTmp LDA #0F0 ;Mouse code to read byte STA RTmp+2 LDX #2 ;3 bytes to send (code, addrl, addrh) LDX #0 ;1 byte to receive JSR GetRDat LDA RTmp LDY #2 ;Return in status buffer CTLen.EQU 0F ;Entries in status table CtrlTbl.WORD CReset-1.WORD CCtrl-1.WORD SetNL-1.WORD CStat-1.WORD CSet-1.WORD CRead-1.WORD CClear-1.WORD CPos-1.WORD CClamp-1.WORD CHome-1.WORD CButEvt-1.WORD CMovEvt-1.WORD CTmrEvt-1.WORD CIntPer-1.WORD CW05-1 DevCtrl BIT OpnFlg BMI $1 JMP DNOErr $1 LDA CtlStat ;Status code check CMP #CTLen BCC $2 JMP SCErr $2 ASL A ;Code ok TAY LDA CtrlTbl+1,Y PHA LDA CtrlTbl,Y PHA ; Reset- deactivate and set Mouse to initial startup defaults
12 CReset JSR RatOff ;Switch Mouse off JSR Clear ;Clear internal Mouse X,Y position JSR ReStor ; Set control parameters CCtrl LDY #0 LDA (CSList),Y ;Get parameter count CMP #PLen ;and make sure it matches BEQ $1 LDA #XInvRPrm JSR SysErr $1 PHP TAY $2 INY ;increment offset and get LDA (CSList),Y ;restore offset and put STA OpnFlg,Y BPL $2 ; Set NewLine character SetNL LDY #0 LDA (CSList),Y STA NLFlg INY LDA (CSList),Y STA NLChar ; no operation CStat ; Se Mouse operation mode CSet LDY #0 LDA (CSList),Y CMP #10 ;Valid mode <= $0F? BCC $1 LDA #XInvRPrm ;Error if not JSR SysErr ;No return $1 JSR Set CRead ;No operation CClear JSR Clear ; Set X,Y internal mouse position to passed values CPos PHP LDY #0 LDX #3 $1 LDA (CSList),Y STA RTmp,X INY DEX ;4 bytes xferred? ;B/no
13 LDA #40 ;6805 code to set internal position vars STA RTmp+4 LDX #4 CClamp LDY #7 ;Xfer 8 parameters $1 LDA (CSList),Y ;Gt clamp values from parm list STA ClpXlo,Y ;Store in current clamp table DEX JSR Clamp CHome JSR Home ; Setup Mouse Button event parameters CButEvt PHP LDY #5 $1 LDA (CSList),Y STA MBETbl,Y ; Setup Mouse Movement event parameters CMovEvt PHP LDY #5 $1 LDA (CSList),Y STA MMETbl,Y ; Setup Mouse Timer event parameters CTmrEvt PHP LDY #5 $1 LDA (CSList),Y STA MTETbl,Y ; Set interrupt interval (x/60 seconds) CIntPer LDY #0 LDA (CSList),Y STA IntPer JSR SetIntP ; Write byte to 6805 CW05 PHP
14 LDY #0 LDX #2 $1 LDA (CSList),Y STA RTmp,X INY DEX LDA #0F1 ;Mouse code to write byte STA RTmp+3 LDX #3 ;4 bytes to send (code, addrl, addrh, byte) SCErr LDA #21 ;Invalid Control/Status Code JSR SysErr ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; RAT 6805/6502 communication routines ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Initialize PIA pot B ; InitB PHP SlowDwn LDY SltNum LDA BPIACR,Y ;Set CRB for DDR active AND #0FB STA BPIACR,Y LDA #3E ;Set DDRB: 0,6,7=input / 1-5=output STA BIODDR,Y LDA BPIACR,Y ;Set CRB for I/O active ORA #4 STA BPIACR,Y SpeedUp ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Get RAT data from 6805 ; ; Enter with # of parms-1 in X reg ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; GetRDat Slowdwn LDY SltNum LDA APIACR,Y ;Set CRA for DDR active AND #0FB STA APIACR,Y LDA #00 ;All data lines= INPUT STA AIODDR,Y LDA APIACR,Y ;Set CRA for I/O active ORA #04 STA APIACR,Y RLup1 LDA BIODDR,Y ;Wait until PB6=1 ASL A BPL RLup1 LDA AIODDR,Y ;Read 6805 data byte STA Rtmp,X ;and stuff it. LDA BIODDR,Y ;Set PB4=1 (flag to 6805) ORA #10 STA BIODDR,Y
15 RLup2 LDA BIODDR,Y ;Wait until PB6=0 ASL A BMI RLup2 LDA BIODDR,Y ;Clear PB4=0 AND #0EF STA BIODDR,Y DEX ;Decrement & repeat until done BPL RLup1 SpeedUp ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Send Rat data to 6805 ; ; Enter with # of parms-1 in X reg ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; SndRDat Slowdwn LDY SltNum $1 LDA BIODDR,Y ;Wait until PB7 = 0 BMI $1 LDA APIACR,Y ;Set CRA for DDR active AND #0FB STA APIACR,Y LDA #0FF ;All data lines = OUTPUT STA AIODDR,Y SndNxt LDA APIACR,Y ;Set CRA for I/O active ORA #04 STA APIACR,Y LDA Rtmp,X ;Get data and xmit STA AIODDR,Y LDA BIODDR,Y ;Set PB5 = 1 ORA #20 STA BIODDR,Y SdLup1 LDA BIODDR,Y ;Wait until PB7 = 1 BPL SdLup1 AND #0DF ;Clear PB5 = 0 STA BIODDR,Y DEX BMI Snd_End ;Branch if done SdLup2 LDA BIODDR,Y ;Else - Wait until PB7 = 0 BMI SdLup2 BPL SndNxt ; and xmit more Snd_End SpeedUp InitRat BIT Iok ;Check if boot-up INIT went ok BMI DoInit ;Yes- goferit LDA #XNoRat ;No Mouse Card JSR SysErr ; Set driver parameters DoInit LDA DIBslt ;Get slot ORA #10 ;Format for SIR STA SIRtbl ;and stuff ASL A ;Format for indexing (s0) ASL A ASL A ASL A STA SltNum ;Save for future use LDA Breg ;Stuff Bank in SIR AND #0F STA VSIRXbyt STA SIRXbyt
16 LDA #SIRkt ;Length of SIR table LDX SIRaddr ;Get pointer to SIR table LDY SIRaddr+1 JSR AllocSIR BCC $1 ;Clear Mouse position variables LDA #25 ;Resource Not Available JSR SysErr $1 JSR InitB ;Initialize PIA port B JSR ReStor ;Set mouse/driver variables/defaults PHP LDX #0 ;1 parm to send LDA #50 ;1st init call STA Rtmp ;send it LDX #0 JSR GetRDat ;byte returned is NOT used ; Useless (at present) attempt to initially synchronize the Mouse ; with the ///'s VBL cycle. LDA #VSIRkt ;Set up SIR LDX VSIRaddr LDY VSIRaddr+1 JSR AllocSIR BCS IExit ;B/unable to allocate PHP ;Shut down interrupts LDA VKIntCtl ;Prepare VIA AND #1F ;Retain CB1 and CA1/CA2 status ORA #60 ;CB2=independent interrupt on pos. edge STA VKIntCtl LDA #8 ;Disable CB2 interrupt (will still be flagged) STA VKIntEn STA VKIntFlg ;Clear CB2 interrupt bit ; Reinstate any interrupts $2 BIT VKIntFlg ;check if VBL has triggered bit BEQ $2 ;keep polling until VBL LDA #VSIRkt ;Success- deallocate and continue LDX VSIRaddr LDY VSIRaddr+1 JSR DealcSIR PHP LDX #0 ;Now signal Mouse to synchronize LDA #50 STA Rtmp ;Finish up the init call IExit ; Interrupt handler for the mouse driver. Update BIStat, signal events Serve LDX #0 LDA #20 ;6805 "Serve" command STA RTmp LDX #0 ;Get 1 byte (interrupt flag) from 6805 JSR GetRDat LDA RTmp ; The byte returned flags the cause(s) of the interrupt and only affects bits ; 1-3 of BIStat. Prior (unread) interrupt flag bits are preserved. Events are ; checked and called if active (then cleared).
17 PHA ;Preserve interrupt stat ORA BIStat STA BIStat ;Strre current button/interrupt status PLA PHA AND #4 ;Check for button interrupt BEQ $1 LDA MBETbl ;Check if button event active BEQ $1 ;B/no LDX MBEaddr LDY MBEaddr+1 JSR QueEvent LDA #0 STA MBETbl $1 PLA PHA AND #2 ;Check for movement interrupt BEQ $2 LDA MMETbl ;Mouse movement event active? BEQ $2 ;B/no - check for timer interrupt/event LDX MMEaddr LDY MMEaddr+1 JSR QueEvent LDA #0 STA MMETbl $2 PLA AND #8 ;Check for timer event BEQ $3 LDA MTETbl ;Mouse timer event active? BEQ $ ;B/no - exit LDX MTEaddr LDY MTEaddr+1 JSR QueEvent LDA #0 STA MTETbl $3 LDA #2 ;Clear VIA 'Any Slot' interrupt flag STA ASltInt ; Read Mouse values Read PHP LDX #0 ;Send Read code to 6805 LDA #10 STA RTmp LDX #4 JSR GetRDat ;Now go read Mouse values LDX #3 ;and xfer to current storage $1 LDA RTmp+1,X STA BIStat+1,X DEX ;repeat until 4 coordinate bytes xferred LDA BIStat ;Retrieve current status AND #0E ;Preserve interrupt flags ORA RTmp ;Update current button/movement flags STA BIStat ;And store ; Set minimum and maximum mouse boundaries for X and Y positions
18 Clamp PHP LDA #60 ;"60" is 6805 code to set X clamp values STA RTmp+4 LDA ClpXlo ;1st= low byte of minimum STA Rtmp+3 LDA ClpXmx ;2nd= low byte of maximum STA Rtmp+2 LDA ClpXlo+1 ;3rd= high byte of minimum STA Rtmp+1 LDA ClpXmx+1 ;4th= high byte of maximum STA Rtmp LDX #4 ;Send 5 bytes to 6805 LDA #61 ;"61" is 6805 code to set Y clamp values STA RTmp+4 LDA ClpYlo STA Rtmp+3 LDA ClpYmx STA Rtmp+2 LDA ClpYlo+1 STA Rtmp+1 LDA ClpYmx+1 STA Rtmp LDX #4 ;Send 5 bytes to 6805 ; Set operating mode of Rat (A= valid mode of 0 - $0F) Set PHP STA RTmp STA CRMode ;Set current Mode LDX #0 ; Set Mouse internal registers to lower boundaries Home PHP LDA #70 STA RTmp LDX #0 ; Set Mouse and driver X,Y position variables to 0 Clear PHP LDA #30 ;6805 "clear" command STA RTmp LDX #0 LDY #3 ;Clear driver variables LDA #0 $1 STA YH,Y
19 ; Set Interrupt period to x/60 second (normally 1/60) SetIntP PHP LDA IntPer ;Get the period constant STA RTmp LDA #0A0 ;Code to set interrupt interval STA RTmp+1 LDX #01 ;Send 2 parameters to Mouse ; Miscellaneous routines RatOff PHP LDX #0 ;0-> 6805 turns Mouse off STX Rtmp STX CRMode ;Set current Mode RVrZap LDA #0 ;Clear out current RAT variables LDX #4 $1 STA BIStat,X DEX STA RdFlg ;Set Flags STA WrtFlg STA NLNxt LDA #01 STA IntPer ;Set interrupt period LDX #7 ;Set current clamp value table to standard $2 LDA SClpTbl,X STA ClpXlo,X DEX BPL $2 $3 ; Restore startup mouse variables/values ReStor JSR RVrZap ;Restore variables to startup conditions JSR SetIntP ;Restore mouse interrupt period JSR Clamp ;Set default clamp values.end Capture buffer closed. [72415,1607] RATDVR.TXT 15-Jan Accesses: 35 Enter command, N for next file
20 or <CR> for disposition menu!
Apple II Technical Notes
#1: Interrupt Environment with the Revised by: Matt Deatherage November 1988 Revised by: Rilla Reynolds November 1985 This Technical Note describes the interrupt environment one should take into account
The stack and the stack pointer
The stack and the stack pointer If you google the word stack, one of the definitions you will get is: A reserved area of memory used to keep track of a program's internal operations, including functions,
STANDARD ASCII NULL START OF HEADING START OF TEXT END OF TEXT END OF TRANSMISSION ENQUIRY ACKNOWLEDGE BELL BACKSPACE HORIZ.
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F Uppercase/Graphics
Apple II Technical Notes
Apple II Technical Notes Developer Technical Support #1: The GETLN Buffer and a ProDOS Clock Card Revised by: Matt Deatherage November 1988 Revised by: Pete McDonald November 1985 This Technical Note describes
WHAT IS MACHINE LANGUAGE?
WHAT IS MACHINE LANGUAGE? At the heart of every microcomputer, is a central microprocessor. It's a very special microchip which is the "brain" of the computer. The Commodore 64 is no exception. Every microprocessor
U:\montages\dominique\servo\moteur_AV_AR\program\moteur_AV_AR.asm jeudi 28 avril 2011 10:32
Norton Junior Moteur PWM AV - AR pour SLE BRESSUIRE PORTA ------------------------------------------------------- 0 = Entrée Servo 1 = PWM moteur 2 = Strap mode 3 = 4 = 5 = Relay AV - AR $Include 'C:\pemicro\ics08qtqyz\qtqy_registers.inc'
MACHINE ARCHITECTURE & LANGUAGE
in the name of God the compassionate, the merciful notes on MACHINE ARCHITECTURE & LANGUAGE compiled by Jumong Chap. 9 Microprocessor Fundamentals A system designer should consider a microprocessor-based
HC12 Assembly Language Programming
HC12 Assembly Language Programming Programming Model Addressing Modes Assembler Directives HC12 Instructions Flow Charts 1 Assembler Directives In order to write an assembly language program it is necessary
MOS T ic H N O LO O Y, INC. V A LLEY FORGE CORPORATE CENTER (216) 666 7950 950 RITTENHOUSE ROAD, NORRISTOWN, PA 19401
PR ELIM IN A R Y DATA SHEET MOS T ic H N O LO O Y, INC. V A LLEY FORGE CORPORATE CENTER (216) 666 7950 950 RITTENHOUSE ROAD, NORRISTOWN, PA 19401 M A Y, 1976 M C S6 5 0 0 M IC R O P R O C E S S O R S The
M6800. Assembly Language Programming
M6800 Assembly Language Programming 1 3. MC6802 MICROPROCESSOR MC6802 microprocessor runs in 1MHz clock cycle. It has 64 Kbyte memory address capacity using 16-bit addressing path (A0-A15). The 8-bit data
AN2183. Using FLASH as EEPROM on the MC68HC908GP32. Introduction. Semiconductor Products Sector Application Note
Order this document by /D Semiconductor Products Sector Application Note Using FLASH as EEPROM on the MC68HC908GP32 By Derrick H.J. Klotz Field Applications Engineer Toronto, Canada Introduction This application
13-1. This chapter explains how to use different objects.
13-1 13.Objects This chapter explains how to use different objects. 13.1. Bit Lamp... 13-3 13.2. Word Lamp... 13-5 13.3. Set Bit... 13-9 13.4. Set Word... 13-11 13.5. Function Key... 13-18 13.6. Toggle
Event counters in NOVA
Case study: how to use the event counters in NOVA? 1 Event counter support NOVA Technical Note 22 Event counters in NOVA Most of the measurement commands, like CV staircase or Record signals (> 1 ms) provide
WA Manager Alarming System Management Software Windows 98, NT, XP, 2000 User Guide
WA Manager Alarming System Management Software Windows 98, NT, XP, 2000 User Guide Version 2.1, 4/2010 Disclaimer While every effort has been made to ensure that the information in this guide is accurate
The Answer to the 14 Most Frequently Asked Modbus Questions
Modbus Frequently Asked Questions WP-34-REV0-0609-1/7 The Answer to the 14 Most Frequently Asked Modbus Questions Exactly what is Modbus? Modbus is an open serial communications protocol widely used in
Introduction to Microcontrollers
Introduction to Microcontrollers Motorola M68HC11 Specs Assembly Programming Language BUFFALO Topics of Discussion Microcontrollers M68HC11 Package & Pinouts Accumulators Index Registers Special Registers
CipherLab 5100 Time Attendance Utility Manual
CipherLab 5100 Time Attendance Utility Manual K:\Products\Product Technical\BI\BI-PC5100T\CipherLab5100TimeAttendnaceUtilityManual0707-process.doc Page 1 / 13 1 Login A popup form as follows will appear
Introduction. What is an Operating System?
Introduction What is an Operating System? 1 What is an Operating System? 2 Why is an Operating System Needed? 3 How Did They Develop? Historical Approach Affect of Architecture 4 Efficient Utilization
8085 INSTRUCTION SET
DATA TRANSFER INSTRUCTIONS Opcode Operand Description 8085 INSTRUCTION SET INSTRUCTION DETAILS Copy from source to destination OV Rd, Rs This instruction copies the contents of the source, Rs register
1 Classical Universal Computer 3
Chapter 6: Machine Language and Assembler Christian Jacob 1 Classical Universal Computer 3 1.1 Von Neumann Architecture 3 1.2 CPU and RAM 5 1.3 Arithmetic Logical Unit (ALU) 6 1.4 Arithmetic Logical Unit
The goal is to program the PLC and HMI to count with the following behaviors:
PLC and HMI Counting Lab The goal is to program the PLC and HMI to count with the following behaviors: 1. The counting should be started and stopped from buttons on the HMI 2. The direction of the count
Below is a diagram explaining the data packet and the timing related to the mouse clock while receiving a byte from the PS-2 mouse:
PS-2 Mouse: The Protocol: For out mini project we designed a serial port transmitter receiver, which uses the Baud rate protocol. The PS-2 port is similar to the serial port (performs the function of transmitting
20 Using Scripts. (Programming without Parts) 20-1
20 Using Scripts (Programming without Parts) This chapter explains the basics of creating and using programming scripts in GP-Pro EX. Please start by reading 20.1 Settings Menu (page 20-2) and then turn
THUMB Instruction Set
5 THUMB Instruction Set This chapter describes the THUMB instruction set. Format Summary 5-2 Opcode Summary 5-3 5. Format : move shifted register 5-5 5.2 Format 2: add/subtract 5-7 5.3 Format 3: move/compare/add/subtract
Modbus RTU Communications RX/WX and MRX/MWX
15 Modbus RTU Communications RX/WX and MRX/MWX In This Chapter.... Network Slave Operation Network Master Operation: RX / WX Network Master Operation: DL06 MRX / MWX 5 2 D0 Modbus Network Slave Operation
Freescale Semiconductor, I
nc. Application Note 6/2002 8-Bit Software Development Kit By Jiri Ryba Introduction 8-Bit SDK Overview This application note describes the features and advantages of the 8-bit SDK (software development
EPM2000 LabVIEW Building Applications Instructions
EPM2000 LabVIEW Building Applications Instructions Copyright (C) 2000 Molectron Detector, Incorporated Introduction The EPM2000 LabVIEW VI library is a collection of 57 configuration VIs that allow the
Microcontroller Basics A microcontroller is a small, low-cost computer-on-a-chip which usually includes:
Microcontroller Basics A microcontroller is a small, low-cost computer-on-a-chip which usually includes: An 8 or 16 bit microprocessor (CPU). A small amount of RAM. Programmable ROM and/or flash memory.
Programming Examples. B.1 Overview of Programming Examples. Practical Applications. Instructions Used
B Programming Examples B.1 Overview of Programming Examples Practical Applications Each FBD instruction triggers a specific operation. When you combine these instructions into a program, you can accomplish
================================================================
==== ==== ================================================================ DR 6502 AER 201S Engineering Design 6502 Execution Simulator ================================================================
Exceptions in MIPS. know the exception mechanism in MIPS be able to write a simple exception handler for a MIPS machine
7 Objectives After completing this lab you will: know the exception mechanism in MIPS be able to write a simple exception handler for a MIPS machine Introduction Branches and jumps provide ways to change
Modbus Tutorial 7/30/01. Tutorial on TTDM-PLUS and TTSIM System Integration using Modbus
Modbus Tutorial 7/30/01 Tutorial on TTDM-PLUS and TTSIM System Integration using Modbus There are two ways that system integrators can access leak detection information using the Modbus interface: either
How To Write A Microsoft Microsoft 8D (Droid) (Program) (Powerbook) (I386) (Microsoft) (Donga) (Opera) And (Dungeo) (Dugeo
CPU08 Central Processor Unit Reference Manual M68HC08 Microcontrollers CPU08RM Rev. 02/2006 freescale.com CPU08 Central Processor Unit Reference Manual To provide the most up-to-date information, the
UTILITY INSTRUCTION MANUAL BNP-B2196 (ENG)
UTILITY INSTRUCTION MANUAL BNP-B2196 (ENG) MELDASMAGIC is a registered trademark of Mitsubishi Electric Corporation. Microsoft and Windows are registered trademark of Microsoft Corporation in the USA.
8254 PROGRAMMABLE INTERVAL TIMER
PROGRAMMABLE INTERVAL TIMER Y Y Y Compatible with All Intel and Most Other Microprocessors Handles Inputs from DC to 10 MHz 8 MHz 8254 10 MHz 8254-2 Status Read-Back Command Y Y Y Y Y Six Programmable
Building A RISC Microcontroller in an FPGA
Building A RISC Microcontroller in an FPGA Name : Yap Zi He Course : 4 SEL Supervisor : PM Muhammad Mun im Ahmad Zabidi Introduction Reduce Instruction Set Computer (RISC) is a new trend on computer design.
WinCC. Configuration Manual. Manual Volume 2
WinCC Configuration Manual Manual Volume 2 This manual is part of the documentation package with the order number: 6AV6392-1CA05-0AB0 Release: September 1999 WinCC, SIMATIC, SINEC, STEP are trademarks
Virtual Integrated Design Getting started with RS232 Hex Com Tool v6.0
Virtual Integrated Design Getting started with RS232 Hex Com Tool v6.0 Copyright, 1999-2007 Virtual Integrated Design, All rights reserved. 1 Contents: 1. The Main Window. 2. The Port Setup Window. 3.
Real Time Monitor. A Real-Time Windows Operator Interface. DDE Compliant. (for remote data display)
Real Time Monitor A Real-Time Windows Operator Interface DDE Compliant (for remote data display) TABLE OF CONTENTS 1. INTRODUCTION...1 1.1 INSTALLATION...2 1.2 FIRST START UP - DDE CONFIGURE...2 1.3 AUTO-STARTUP...2
eztcp Technical Document Modbus/TCP of eztcp Caution: Specifications of this document may be changed without prior notice for improvement.
eztcp Technical Document Modbus/TCP of eztcp Version 1.3 Caution: Specifications of this document may be changed without prior notice for improvement. Sollae Systems Co., Ltd. http://www.sollae.co.kr Contents
ARM Thumb Microcontrollers. Application Note. Software ISO 7816 I/O Line Implementation. Features. Introduction
Software ISO 7816 I/O Line Implementation Features ISO 7816-3 compliant (direct convention) Byte reception and transmission with parity check Retransmission on error detection Automatic reception at the
Changing the Display Frequency During Scanning Within an ImageControls 3 Application
Changing the Display Frequency During Scanning Within an ImageControls 3 Date November 2008 Applies To Kofax ImageControls 2x, 3x Summary This application note contains example code for changing he display
PACKAGE OUTLINE DALLAS DS2434 DS2434 GND. PR 35 PACKAGE See Mech. Drawings Section
PRELIMINARY DS2434 Battery Identification Chip FEATURES Provides unique ID number to battery packs PACKAGE OUTLINE Eliminates thermistors by sensing battery temperature on chip DALLAS DS2434 1 2 3 256
AN601 I2C 2.8 Communication Protocol. SM130 SM130 - Mini APPLICATION NOTE
AN601 I2C 2.8 Communication Protocol SM130 SM130 - Mini APPLICATION NOTE 2 1. INTRODUCTION This application note explains I2C communication protocol with SM130 or SM130-Mini Mifare module based on the
To perform Ethernet setup and communication verification, first perform RS232 setup and communication verification:
PURPOSE Verify that communication is established for the following products programming option (488.2 compliant, SCPI only): DCS - M9C & DCS M130, DLM M9E & DLM-M9G & DLM M130, DHP - M9D, P series, SG,
DNP Master Ethernet Driver Help. 2015 Kepware Technologies
2015 Kepware Technologies 2 Table of Contents Table of Contents 2 8 Overview 8 Channel Setup 9 Communications General 9 Timing 10 Device Setup 11 Communications 12 Polling 14 Unsolicited Messaging 16 Event
System Calls Related to File Manipulation
KING FAHD UNIVERSITY OF PETROLEUM AND MINERALS Information and Computer Science Department ICS 431 Operating Systems Lab # 12 System Calls Related to File Manipulation Objective: In this lab we will be
Technical Support Bulletin Nr.18 Modbus Tips
Technical Support Bulletin Nr.18 Modbus Tips Contents! Definitions! Implemented commands! Examples of commands or frames! Calculating the logical area! Reading a signed variable! Example of commands supported
RS-485 Protocol Manual
RS-485 Protocol Manual Revision: 1.0 January 11, 2000 RS-485 Protocol Guidelines and Description Page i Table of Contents 1.0 COMMUNICATIONS BUS OVERVIEW... 1 2.0 DESIGN GUIDELINES... 1 2.1 Hardware Design
4310/4320 Wireless Position Monitor Burst Configuration and Diagnostics
Instruction Manual Supplement 4310/4320 Wireless Position Monitor 4310/4320 Wireless Position Monitor Burst Configuration and Diagnostics This document applies to: Fisher 4320 Device Type 1308 (hex) 4872
Model 288B Charge Plate Graphing Software Operators Guide
Monroe Electronics, Inc. Model 288B Charge Plate Graphing Software Operators Guide P/N 0340175 288BGraph (80207) Software V2.01 100 Housel Ave PO Box 535 Lyndonville NY 14098 1-800-821-6001 585-765-2254
HOMEWORKS. RS-232 Protocol. Data Protocol for Communicating with Lutron's HOMEWORKS System
HOMEWORKS TM HOMEWORKS TM RS-3 Protocol Data Protocol for Communicating with Lutron's HOMEWORKS System HomeWorks RS-3 Protocol Overview HARDWARE OVERVIEW 3 wire RS-3C protocol 9 pin female D type connector
General Precautions The user must operate each product according to the performance specifications described in the operation manuals.
General Precautions The user must operate each product according to the performance specifications described in the operation manuals. Before using the product under conditions which are not described
GeoVision Setup. Once all the settings for Windows are completed and you have all the hard drives setup you can install GeoVision.
GeoVision Setup Once all the settings for Windows are completed and you have all the hard drives setup you can install GeoVision. Start in order beginning with the drivers. When you install the drivers
Software User Guide UG-461
Software User Guide UG-461 One Technology Way P.O. Box 9106 Norwood, MA 02062-9106, U.S.A. Tel: 781.329.4700 Fax: 781.461.3113 www.analog.com ezlinx icoupler Isolated Interface Development Environment
AEI RAIL NETWORK SERVER User Manual
AEI RAIL NETWORK SERVER User Manual Copyright 2000 Signal Computer Consultants All rights reserved Signal Computer Consultants P.O. Box 18445 Pittsburgh, PA 15236 Tel. 888 872-4612 (toll free US and Canada
NETWORK ADMINISTRATION
NETWORK ADMINISTRATION INTRODUCTION The PressureMAP software provides users who have access to an Ethernet network supporting TCP/IP with the ability to remotely log into the MAP System via a network connection,
Access Central 4.2 Tenant Billing
Access Central 4.2 Tenant Billing Software Package Access Central/Tenant Billing is comprised of four executable programs which all must reside in the subdirectory named: c:\tc85dir 1. ACCESS CENTRAL.MDB
2 ASCII TABLE (DOS) 3 ASCII TABLE (Window)
1 ASCII TABLE 2 ASCII TABLE (DOS) 3 ASCII TABLE (Window) 4 Keyboard Codes The Diagram below shows the codes that are returned when a key is pressed. For example, pressing a would return 0x61. If it is
Tera Term Telnet. Introduction
Tera Term Telnet Introduction Starting Telnet Tera Term is a terminal emulation program that enables you to log in to a remote computer, provided you have a registered account on that machine. To start
AKD EtherNet/IP Communication
AKD EtherNet/IP Communication Edition August 2012, Revision C Valid for firmware version 1.7 Patents Pending Part Number 903-200008-00 Keep all manuals as a product component during the life span of the
GEIGER COUNTER "Gamma Check Pro"
GEIGER COUNTER "Gamma Check Pro" OPERATING INSTRUCTIONS FOR THE SOFTWARE Item no. 1377508 VERSION 11/15 TABLE OF CONTENTS Page 1. Functions of the Software... 3 2. Software/Driver Installation... 3 3.
Cluster APIs. Cluster APIs
Cluster APIs Cluster APIs Cluster APIs include: Cluster Control APIs Cluster Resource Group APIs Cluster Resource Group Exit Program Topics covered here are: Cluster APIs Cluster Resource Services Characteristics
How It All Works. Other M68000 Updates. Basic Control Signals. Basic Control Signals
CPU Architectures Motorola 68000 Several CPU architectures exist currently: Motorola Intel AMD (Advanced Micro Devices) PowerPC Pick one to study; others will be variations on this. Arbitrary pick: Motorola
KCU-02 Monitor. Software Installation User Manual. For Windows XP and Windows 7
KCU-02 Monitor Software Installation User Manual For Windows XP and Windows 7 Headquarters : No.3, Lane 201, Chien Fu ST., Chyan Jenn Dist., Kaohsiung, TAIWAN Tel : + 886-7-8121771 Fax : + 886-7-8121775
Jorix kernel: real-time scheduling
Jorix kernel: real-time scheduling Joris Huizer Kwie Min Wong May 16, 2007 1 Introduction As a specialized part of the kernel, we implemented two real-time scheduling algorithms: RM (rate monotonic) and
µtasker Document FTP Client
Embedding it better... µtasker Document FTP Client utaskerftp_client.doc/1.01 Copyright 2012 M.J.Butcher Consulting Table of Contents 1. Introduction...3 2. FTP Log-In...4 3. FTP Operation Modes...4 4.
NAND Flash Memories. Using Linux MTD compatible mode. on ELNEC Universal Device Programmers. (Quick Guide)
NAND Flash Memories Using Linux MTD compatible mode on ELNEC Universal Device Programmers (Quick Guide) Application Note April 2012 an_elnec_linux_mtd, version 1.04 Version 1.04/04.2012 Page 1 of 16 As
Application Note. Introduction AN2471/D 3/2003. PC Master Software Communication Protocol Specification
Application Note 3/2003 PC Master Software Communication Protocol Specification By Pavel Kania and Michal Hanak S 3 L Applications Engineerings MCSL Roznov pod Radhostem Introduction The purpose of this
Programming and Using the Courier V.Everything Modem for Remote Operation of DDF6000
Programming and Using the Courier V.Everything Modem for Remote Operation of DDF6000 1.0 Introduction A Technical Application Note from Doppler System July 5, 1999 Version 3.x of the DDF6000, running version
Apple ][ ProDOS 1.7 Operating System Source Listing
apple Apple ][ Computer Information Apple ][ ProDOS 1.7 Operating System Source Listing Apple Computer July 1988 Apple ][ ProDOS 1.7 Operating System Source Listing -- Apple Computer -- July 1988 -- Page
How to Obtain an OPC License--5. Creating a System Code 5 Entering an Authorization Code 6. Getting Started with SNMP Editor--7
Contents Introduction--1 Product definition 1 Implementing SNMP 2 Integrating SNMP into the user interface 3 Components of OPC SNMP Gateway 4 How to Obtain an OPC License--5 Creating a System Code 5 Entering
SD Specifications Part A2 SD Host Controller Simplified Specification
SD Specifications Part A2 SD Host Controller Simplified Specification Version 2.00 February 8, 2007 Technical Committee SD Association Revision History Date Version Changes compared to previous issue April
Software Manual RS232 Laser Merge Module. Document # SU-256521-09 Rev A
Laser Merge Module Document # SU-256521-09 Rev A The information presented in this document is proprietary to Spectral Applied Research Inc. and cannot be used for any purpose other than that for which
How To Set The Sensor On A Powerpoint 3.5 (Powerpoint) On A Blackberry 2.5A (Powerplant) On An Iphone Or Ipad (Powerplant) On The Blackberry 3.2 (
VMBGPOD Touch panel with Oled display for VELBUS system 1 Binairy format: bits Description
Technical Note. Micron NAND Flash Controller via Xilinx Spartan -3 FPGA. Overview. TN-29-06: NAND Flash Controller on Spartan-3 Overview
Technical Note TN-29-06: NAND Flash Controller on Spartan-3 Overview Micron NAND Flash Controller via Xilinx Spartan -3 FPGA Overview As mobile product capabilities continue to expand, so does the demand
Arduino Internet Connectivity: Maintenance Manual Julian Ryan Draft No. 7 April 24, 2015
Arduino Internet Connectivity: Maintenance Manual Julian Ryan Draft No. 7 April 24, 2015 CEN 4935 Senior Software Engineering Project Instructor: Dr. Janusz Zalewski Software Engineering Program Florida
DeviceNet Bus Software Help for Programming an Allen Bradley Control System
FBP FieldBusPlug V7 DeviceNet Bus Software Help for Programming an Allen Bradley Control System DeviceNet Software Help for Programming an Allen Bradley Control System Contents Page General Purpose...
MODULE BOUSSOLE ÉLECTRONIQUE CMPS03 Référence : 0660-3
MODULE BOUSSOLE ÉLECTRONIQUE CMPS03 Référence : 0660-3 CMPS03 Magnetic Compass. Voltage : 5v only required Current : 20mA Typ. Resolution : 0.1 Degree Accuracy : 3-4 degrees approx. after calibration Output
28 Simply Confirming Onsite
28 Simply Confirming Onsite Status 28.1 This chapter describes available monitoring tools....28-2 28.2 Monitoring Operational Status...28-5 28.3 Monitoring Device Values... 28-11 28.4 Monitoring Symbol
User Manual. DG LINK Application Program 071-0056-50. www.tektronix.com. This document applies to firmware version 2.00 and above.
User Manual DG LINK Application Program 071-0056-50 This document applies to firmware version 2.00 and above. www.tektronix.com Copyright Tektronix Japan, Ltd. All rights reserved. Copyright Tektronix,
ACCESS 9340 and 9360 Meter Ethernet Communications Card 9340-60-ETHER
User s Guide PMCM-ETHCC-0208 2/2008 ACCESS 9340 and 9360 Meter Ethernet Communications Card 9340-60-ETHER TABLE OF CONTENTS INTRODUCTION... 2 Supported Ethernet Protocols... 2 Hardware... 2 Meter Firmware...
Section 29. Real-Time Clock and Calendar (RTCC)
Section 29. Real-Time Clock and Calendar (RTCC) HIGHLIGHTS This section of the manual contains the following topics: 29.1 Introduction... 29-2 29.2 Status and Control Registers... 29-3 29.3 Modes of Operation...
Keil C51 Cross Compiler
Keil C51 Cross Compiler ANSI C Compiler Generates fast compact code for the 8051 and it s derivatives Advantages of C over Assembler Do not need to know the microcontroller instruction set Register allocation
MICROPROCESSOR AND MICROCOMPUTER BASICS
Introduction MICROPROCESSOR AND MICROCOMPUTER BASICS At present there are many types and sizes of computers available. These computers are designed and constructed based on digital and Integrated Circuit
Z80 Instruction Set. Z80 Assembly Language
75 Z80 Assembly Language The assembly language allows the user to write a program without concern for memory addresses or machine instruction formats. It uses symbolic addresses to identify memory locations
Appendix C: Keyboard Scan Codes
Thi d t t d ith F M k 4 0 2 Appendix C: Keyboard Scan Codes Table 90: PC Keyboard Scan Codes (in hex) Key Down Up Key Down Up Key Down Up Key Down Up Esc 1 81 [ { 1A 9A, < 33 B3 center 4C CC 1! 2 82 ]
1. Computer System Structure and Components
1 Computer System Structure and Components Computer System Layers Various Computer Programs OS System Calls (eg, fork, execv, write, etc) KERNEL/Behavior or CPU Device Drivers Device Controllers Devices
How to design and implement firmware for embedded systems
How to design and implement firmware for embedded systems Last changes: 17.06.2010 Author: Rico Möckel The very beginning: What should I avoid when implementing firmware for embedded systems? Writing code
Time functions. Functions of the relay. instabus EIB Application program description. September 2001. 12 A1 Binary 510D01
September 2 2 A Binary 5D Product family: Product type: Manufacturer: Output Binary output, -fold Siemens Name: Load switch UP 5 Order no.: 5WG 5-2AB Functional description Using the application program
CANnes PC CAN Interface Manual
CANnes PC CAN Interface Manual Version: 1.21 October 1 st, 2004 D 20375 Hamburg, Germany Phone +49-40-51 48 06 0 FAX: +49-40-51 48 06 60 2 CANnes Card Manual V1.21 Version Version Date Author Comment 1.00
PROPERTY MANAGEMENT SYSTEM
PROPERTY MANAGEMENT SYSTEM COMMUNICATION INTERFACE SPECIFICATION NEC America, Inc. NDA-305-00 Revision.0 June, 998 Stock # 24727 LIABILITY DISCLAIMER NEC America reserves the right to change the specifications,
8903/CN ControlNet Communications Interface
8903/CN ControlNet Communications Interface Technical Manual HA469263U001 Issue 2 Compatible with 890 Firmware Version 1.4 onwards Copyright 2005 SSD Drives Limited (formerly Eurotherm Drives Limited)
EZ DUPE DVD/CD Duplicator
EZ DUPE DVD/CD Duplicator User s Manual Version 3.0 0 TABLE OF CONTENTS Introduction 2 Setup 11 LCD Front Panel Overview 2 o Auto Start Time 11 Menu Overview 3-5 o Display Mode 12 Functions 6 o Button
Nemo 96HD/HD+ MODBUS
18/12/12 Pagina 1 di 28 MULTIFUNCTION FIRMWARE 2.30 Nemo 96HD/HD+ MODBUS COMMUNICATION PROTOCOL CONTENTS 1.0 ABSTRACT 2.0 DATA MESSAGE DESCRIPTION 2.1 Parameters description 2.2 Data format 2.3 Description
How To Use A Water Quality Monitor (Wqmsw)
Water Quality Monitor WQM Host Software User s Guide The user s guide is an evolving document. If you find sections that are unclear, or missing information, please let us know. Please check our website
DS1721 2-Wire Digital Thermometer and Thermostat
www.dalsemi.com FEATURES Temperature measurements require no external components with ±1 C accuracy Measures temperatures from -55 C to +125 C; Fahrenheit equivalent is -67 F to +257 F Temperature resolution
Card Swipe and ibutton Access Configuration
Card Swipe and ibutton Access Configuration Model CTM 200 Revision: 3066 Beta Avenue Burnaby, B.C. V5G 4K4 Phone: 604.294.4465 Fax: 604.294.4471 [email protected] Revision Control 2 Revision Control
Have both hardware and software. Want to hide the details from the programmer (user).
Input/Output Devices Chapter 5 of Tanenbaum. Have both hardware and software. Want to hide the details from the programmer (user). Ideally have the same interface to all devices (device independence).
I.S. 1 remote I/O system Redundant coupling via PROFIBUS DP
I.S. 1 remote I/O system Redundant coupling via PROFIBUS DP 1. Functions An I. S. 1 fieldstation can be equipped with a primary and a redundant central unit (), whereby each has its own independent PROFIBUS
