diff --git a/applesqueezer/sdcard/AS.EQUATES.S b/applesqueezer/sdcard/AS.EQUATES.S index 2798798..d24cc53 100644 --- a/applesqueezer/sdcard/AS.EQUATES.S +++ b/applesqueezer/sdcard/AS.EQUATES.S @@ -37,18 +37,16 @@ exdram_address_set_addr_high = $e30004 ; 00/xx00 exdram_address_set_addr_bank = $e30006 ; xx/0000 exdram_address_access = $e30008 ; R/W auto-increment to end of main bank -SD_ADDRESS_SET_MSB = $e40000 -SD_ADDRESS_SET_MSB_1 = $e40002 -SD_ADDRESS_SET_MSB_2 = $e40004 -SD_ADDRESS_SET_MSB_3 = $e40006 +SD_ADDRESS_SET_MSB = $e40000 +SD_ADDRESS_SET_MSB_1 = $e40002 +SD_ADDRESS_SET_MSB_2 = $e40004 +SD_ADDRESS_SET_MSB_3 = $e40006 SD_START_READ = $e40008 ; starts reading the sector (if it was idle) -SD_ACCESS = $e4000a +SD_READ = $e4000a SD_START_WRITE = $e4000c ; starts writing the sector (if it was idle) -SD_IDLE = $e4000e -SD_CARD_INSERTED = $e40012 ; 0: no card inserted, 1: card inserted -* STA_NOINIT = 1 ; Drive not initialized -* STA_NODISK = 2 ; No medium in the drive +STA_NOINIT = 1 ; Drive not initialized +STA_NODISK = 2 ; No medium in the drive TRUE = 1 FALSE = 0 @@ -74,14 +72,29 @@ diskSwitchedBit = $0001 diskInDriveBit = $0010 diskModifyBit = $0100 -devPROFILE10MB = $0002 -devRAMDISK = $000e ; device ID for RAM/ROM disks -devHDD = $0013 ; device ID for HDD (generic) +dftHDD = $0013 ; device ID for HDD (generic) -dchar = $08 -dblockcount = $0a -ddeviceid = $34 -ddevnumber = $3e +dchar = $08 +dblockcount = $0a +ddeviceid = $34 +ddevnumber = $3e + +*----------------------------------- +* AS DRIVER EQUATES +*----------------------------------- + +maxIMAGES = 1 ; no more than N images +blockSIZE = 512 ; ProDOS 8 block size +maxBLOCKS = $ffffffff ; that is a huge number of blocks + +* 0 0000 => 0 0000 +* B 1011 => B 1011 restartable + not speed dependent +* A 1010 => E 1110 block device | write allowed | read allowed +* 0 0000 => 8 1000 format allowed + +dftCHAR = $0BA8 ; default characteristics 0BA8 + +dftVERSION = $1000 ; v1 *----------------------------------- * GS/OS DIRECT PAGE @@ -104,3 +117,5 @@ cachePriority = $1A cachePointer = $1C dibPointer = $20 +workSpace = $6a ; Thank you common.equ.src + diff --git a/applesqueezer/sdcard/ASSD.DRIVER OLD.S b/applesqueezer/sdcard/ASSD.DRIVER OLD.S new file mode 100644 index 0000000..fc73e47 --- /dev/null +++ b/applesqueezer/sdcard/ASSD.DRIVER OLD.S @@ -0,0 +1,571 @@ +* +* AppleSqueezer - SD Driver +* +* (c) 2023, Niek Van Suchtelen +* (c) 2023, Brutal Deluxe Software +* + +* v1.0 (202304) - AV +* Reads a sector +* Type must be $BB +* Auxtype must be $0101 +* +* v1.1 (202306) - AV +* Writes a sector too! +* +* v1.2 (202307) - AV +* Uses disk insertion status +* +* v1.3 (202307) - AV +* Formatting options + + mx %00 + rel + typ $bb + dsk ASSDDriver + + use AS.EQUATES.S + + use 4/Sch.Macs + use 4/Util.Macs + +*----------------------------------- +* AS DRIVER EQUATES +*----------------------------------- + +maxIMAGES = 1 ; no more than N images +blockSIZE = 512 ; ProDOS 8 block size +maxBLOCKS = $ffffffff ; that is a huge number of blocks +maxBLOCKP = 65536 ; 65536 blocks for ProDOS 8 + +* 0 0000 +* 3 0011 not speed dependent +* E 1110 block device + write allowed + read allowed +* C 1100 format allowed + removable media + +dftCHAR = $8BEC ; default characteristics +dftSLOT = $8000 ; not slot dependent +dftUNIT = $0001 ; unit 1 +dftVERSION = $1000 ; v1 + +*----------------------------------------------- + +* +* Entry point +* + +RAMDisk da MyDIB-RAMDisk ; offset to 1st DIB + dw maxIMAGES ; number of devices + dw $0000 ; no configuration list + +* +* Dispatch routine +* + +entryPOINT phk ; Dispatch + plb + cmp #$0009 + bcc L0012 + lda #$0020 + bra L001D +L0012 asl + tax + stz errCODE + jsr (tblDISPATCH,x) + lda errCODE +L001D cmp #$0001 + rtl + +tblDISPATCH da DStartup ; Driver_Startup + da DOpen ; Driver_Open + da DRead ; Driver_Read + da DWrite ; Driver_Write + da DClose ; Driver_Close + da DStatus ; Driver_Status + da DControl ; Driver_Control + da DFlush ; Driver_Flush + da DShutdown ; Driver_Shutdown + +* +* Driver_Startup +* + +DStartup + ldal FL_IDLE + and #$ff + cmp #$01 + bne DShutdown ; no AS found + + ldal FL_VERSION + and #$ff + cmp #minVERSION + bcc DShutdown ; no minimum version + + lda #1 ; we're on + sta fgSTARTED + + sep #$30 + ldx #0 +]lp lda proDEVNAME+3,x + sta MyDevName+1,x + inx + cpx #10 + bcc ]lp + stx MyDevName + rep #$30 + + PushWord #0 + PushLong #myTASK + _SchAddTask + pla + rts + +* +* Driver_Shutdown +* + +DShutdown stz fgSTARTED + +* +* Driver_Open +* Driver_Close +* Driver_Flush +* + +DOpen ; Driver_Open +DClose ; Driver_Close +DFlush ; Driver_Flush + rts + +* +* Driver_Read +* + +DRead jsr doSETUP + bcc dr1 + rts + +*--- The AS magic is here + +dr1 sep #$20 + ldal $c034 + inc + stal $c034 + rep #$20 + + pei bufferPtr+1 ; save pointer + + sep #$20 + lda blockNum+3 + stal SD_ADDRESS_SET_MSB + lda blockNum+2 + stal SD_ADDRESS_SET_MSB_1 + lda blockNum+1 + stal SD_ADDRESS_SET_MSB_2 + lda blockNum + stal SD_ADDRESS_SET_MSB_3 + + lda #1 + stal SD_START_READ + + ldx nbPAGES ; number of 512-byte pages to copy +dr2 ldy #0 ; read one block + sep #$20 +]lp ldal SD_READ + sta [bufferPtr],y + iny + cpy #blockSIZE + bcc ]lp + + rep #$20 ; move destination pointer + lda bufferPtr+1 + clc + adc #>blockSIZE ; rwBlockSize+1 + sta bufferPtr+1 + + dex ; next block + bne dr2 + + pla ; restore pointer + sta bufferPtr+1 + rts + +*--- The AS magic ends here + +* +* Driver_Write +* + +DWrite jsr doSETUP + bcc dw1 + rts + +*--- The AS magic is here + +dw1 pei bufferPtr+1 ; save pointer + + sep #$20 + lda blockNum+3 + stal SD_ADDRESS_SET_MSB + lda blockNum+2 + stal SD_ADDRESS_SET_MSB_1 + lda blockNum+1 + stal SD_ADDRESS_SET_MSB_2 + lda blockNum + stal SD_ADDRESS_SET_MSB_3 + + lda #1 + stal SD_START_WRITE + + ldx nbPAGES ; number of 512-byte pages to copy +dw2 ldy #0 ; read one block + sep #$20 +]lp lda [bufferPtr],y + stal SD_READ + iny + cpy #blockSIZE + bcc ]lp + + rep #$20 ; move destination pointer + lda bufferPtr+1 + clc + adc #>blockSIZE ; rwBlockSize+1 + sta bufferPtr+1 + + dex ; next block + bne dw2 + + pla ; restore pointer + sta bufferPtr+1 + rts + +*--- The AS magic ends here + +* +* Driver_Status +* + +DStatus lda statusCode + cmp #4+1 + bcc DStatus1 + lda #$0021 ; drvrBadCode + sta errCODE + rts + +DStatus1 asl + tax + stz transferCount + stz transferCount+2 + jsr (tblSTATUS,x) + rts + +tblSTATUS da SGetStatus ; GetDeviceStatus + da SGet ; GetConfigParameters + da SGet ; GetWaitStatus + da SGetFormatOptions ; GetFormatOptions + da SNada ; GetPartitionMap + +SNada rts + +*----------- GetDeviceStatus + +SGetStatus lda #2 ; GetDeviceStatus + sta transferCount + + lda requestCount ; check length of buffer + cmp #6 + bcc SGS1 + lda #6 + sta transferCount + + ldy #2 ; we can send the number of blocks + lda #maxBLOCKS + sta [statusListPtr],y + iny + iny + lda #^maxBLOCKS + sta [statusListPtr],y + +SGS1 ldx #diskInDriveBit + ldal SD_CARD_INSERTED ; check if a card is inserted + and #$ff + cmp #1 + beq SGS2 ; yes, a SD card is inserted + inx +SGS2 txa + ora #uncertainBlockCountBit ; we are uncertain of the block count + sta [statusListPtr] + rts + +*----------- GetConfigParameters / GetWaitStatus + +SGet lda #0 ; GetConfigParameters + sta [statusListPtr] ; GetWaitStatus + lda #2 + sta transferCount + rts + +*----------- GetFormatOptions + +SGetFormatOptions + lda requestCount ; check size of buffer + cmp #formatOptionsTableEnd-formatOptionsTable + bcc SGetFormat1 + + ldy #0 ; and move data +]lp lda formatOptionsTable,y + sta [statusListPtr],y + iny + iny + cpy #formatOptionsTableEnd-formatOptionsTable + bcc ]lp + sty transferCount ; save size + +SGetFormat1 rts + +* +* Driver_Control +* + +DControl jsr checkSWITCHED + bcc DControl1 + rts + +DControl1 lda controlCode + cmp #9+1 + bcc DControl2 + + lda #$0021 + sta errCODE + rts + +DControl2 asl + tax + stz transferCount + stz transferCount+2 + jsr (tblCONTROL,x) + rts + +tblCONTROL da CNada ; 0 ResetDevice + da CFormatDevice ; 1 FormatDevice + da CNada ; 2 EjectMedium + da CSet ; 3 SetConfigParameters + da CSet ; 4 SetWaitStatus + da CSetFormatOptions ; 5 SetFormatOptions + da CNada ; 6 AssignPartitionOwner + da CNada ; 7 ArmSignal + da CNada ; 8 DisarmSignal + da CNada ; 9 SetPartitionMap + +CNada rts + +*----------- FormatDevice + +CFormatDevice + lda fgFORMAT ; if 1, the Format call + bne CFormat1 ; was already called + rts + +CFormat1 rts + +*----------- SetFormatOptions + +CSetFormatOptions + lda [controlListPtr] + beq CSFO9 ; empty option is not ours + cmp #3 ; 1-2 only + bcs CSFO9 + + cmp #1 + bne CSFOHFS + + ldx #^maxBLOCKS ; it is 1, default values for HFS + ldy #maxBLOCKS + bra CSFOAll + +CSFOHFS ldx #^maxBLOCKP ; it is 2, default values for ProDOS + ldy #maxBLOCKP + +CSFOAll sty fBlockCount + stx fBlockCount+2 + +CSFO9 rts + +*----------- SetConfigParameters / SetWaitStatus + +CSet lda [controlListPtr] ; SetConfigParameters + bne CSetERR ; SetWaitStatus + rts +CSetERR lda #$0022 + sta errCODE + rts + +*---------------------------- + +* Status flag of the current device +* $0001: image has been switched (disk switched) +* $0010: image is active (disk in drive) +* $0100: image has been modified + +* +* Checks everything is OK +* + +doSETUP jsr checkSWITCHED + bcc ds2 + rts + +ds2 lda requestCount ; nb of bytes to read + ora requestCount+2 + bne ds4 + + lda #$002C ; invalidByteCount + sta errCODE + sec + rts + +* $0102_0400 = + +*--- requestcount : $0200 => 1 +*--- From a Block to a RAM address + +ds4 lda requestCount+3 ; number of pages + and #$00ff ; to calculate + lsr + lda requestCount+1 ; $01020400 => $010204 => $8102 + ror + sta nbPAGES ; to calculate + + lda requestCount ; multiple of $0200 + and #blockSIZE-1 + beq ds6 + + lda #$002D ; bad block count + sta errCODE + sec + rts + +*--- Generic transfer now + +ds6 lda requestCount ; assume transfer=request + sta transferCount + lda requestCount+2 + sta transferCount+2 + + clc + rts + +*---------------------------- + +checkSWITCHED + ldal SD_CARD_INSERTED + and #$ff + cmp #1 + beq cs1 + + jsl SET_DISKSW + +* lda #1 +* sta fgSTARTED + lda #$002e + sta errCODE + sec + rts + +cs1 clc + rts + +*---------------------------- Check RAMDISK was init'ed + +myTASK PushLong #proVOLUME + PushWord #$2008 + jsl GSOS2 + bcc myTASK1 + + PushLong #proFORMAT + PushWord #$2024 + jsl GSOS2 + + lda #1 ; tell the driver we've been there + stal fgFORMAT ; a format will now be a real format + + lda #$4000 ; no more silent formatting + stal proFORMAT+14 + +myTASK1 rtl + +*---------------------------- GS/OS + +proVOLUME dw 2 + adrl proDEVNAME + adrl outVOLNAME + +proFORMAT dw 5 ; +00 + adrl proDEVNAME ; +02 + adrl proVOLNAME ; +06 + dw 6 ; +10 + dw 6 ; +12 - Default is ProDOS + dw $2000 ; +14 - Cant rename, can change selection, silent formatting + +proDEVNAME strl '.ASSDDevice' +proVOLNAME strl ':AppleSSD' + +outVOLNAME dw 36 ; (word) output buffer + ds 34 ; (word) strl + (array) string + +*---------------------------- + + +formatOptionsTable + +* 8 bytes + dw 2 ; numOptions + dw 2 ; numDisplayed + dw 1 ; recommendedOption + dw 1 ; currentOption + +* 16 bytes + dw 1 ; formatOptionNum + dw 2 ; linkRefNum + dw %0000_1101 ; flags 1101 - GB size - Apple format + adrl maxBLOCKS ; blockCount is the max for HFS + dw blockSIZE ; blockSize is 512 bytes + dw 0 ; interleaveFactor + dw 32 ; mediaSize 11 - GB size + +* 16 bytes + dw 2 ; formatOptionNum + dw 0 ; linkRefNum + dw %0000_1001 ; flags 1001 - MB size - Apple format + adrl maxBLOCKP ; blockCount is 65536 for ProDOS 8 + dw blockSIZE ; blockSize is 512 bytes for ProDOS 8 + dw 0 ; interleaveFactor + dw 32 ; mediaSize 10 - MB size + +formatOptionsTableEnd + +*--- Default formatting options + +fBlockCount adrl maxBLOCKS ; 65536 + +*---------------------------- + +fgSTARTED ds 2 ; 0: not started, 1: started +fgFORMAT ds 2 ; 0: GS/OS Format never called, 1 instead +errCODE ds 2 +thePAGE ds 4 ; page to read/write: $hh/ll00 +nbPAGES ds 2 ; number of blockSIZEP pages to copy + +MyDIB ds 4 ; +00 pointer to the next DIB + adrl entryPOINT ; +04 driver entry point + dw dftCHAR ; +08 characteristics + adrl maxBLOCKS ; +0A block count +MyDevName ds 32 ; +0E device name + dw dftSLOT ; +2E slot number + dw dftUNIT ; +30 unit number + dw dftVERSION ; +32 version + dw devRAMDISK ; +34 device ID - LOGO + dw $0000 ; +36 first linked device + dw $0000 ; +38 next linked device + adrl $00000000 ; +3A extended DIB ptr + dw $0000 ; +3E device number diff --git a/applesqueezer/sdcard/ASSD.DRIVER.S b/applesqueezer/sdcard/ASSD.DRIVER.S index 115bedd..dadf0d4 100644 --- a/applesqueezer/sdcard/ASSD.DRIVER.S +++ b/applesqueezer/sdcard/ASSD.DRIVER.S @@ -13,11 +13,6 @@ * v1.1 (202306) - AV * Writes a sector too! * -* v1.2 (202307) - AV -* Uses disk insertion status -* -* v1.3 (202307) - AV -* Formatting options mx %00 rel @@ -25,29 +20,9 @@ dsk ASSDDriver use AS.EQUATES.S - - use 4/Sch.Macs + use 4/Util.Macs -*----------------------------------- -* AS DRIVER EQUATES -*----------------------------------- - -maxIMAGES = 1 ; no more than N images -blockSIZE = 512 ; ProDOS 8 block size -maxBLOCKS = $ffffffff ; that is a huge number of blocks -maxBLOCKP = 65536 ; 65536 blocks for ProDOS 8 - -* 0 0000 -* 3 0011 not speed dependent -* E 1110 block device + write allowed + read allowed -* C 1100 format allowed + removable media - -dftCHAR = $8BEC ; default characteristics -dftSLOT = $8000 ; not slot dependent -dftUNIT = $0001 ; unit 1 -dftVERSION = $1000 ; v1 - *----------------------------------------------- * @@ -103,21 +78,6 @@ DStartup lda #1 ; we're on sta fgSTARTED - - sep #$30 - ldx #0 -]lp lda proDEVNAME+3,x - sta MyDevName+1,x - inx - cpx #10 - bcc ]lp - stx MyDevName - rep #$30 - - PushWord #0 - PushLong #myTASK - _SchAddTask - pla rts * @@ -143,51 +103,102 @@ DFlush ; Driver_Flush DRead jsr doSETUP bcc dr1 + + brk $bd rts *--- The AS magic is here -dr1 sep #$20 - ldal $c034 - inc - stal $c034 - rep #$20 +dr1 pei workSpace+2 + pei workSpace +* pei bufferPtr+1 ; save pointer - pei bufferPtr+1 ; save pointer +* sep #$20 +* lda blockNum+3 +* stal SD_ADDRESS_SET_MSB +* lda blockNum+2 +* stal SD_ADDRESS_SET_MSB_1 +* lda blockNum+1 +* stal SD_ADDRESS_SET_MSB_2 +* lda blockNum +* stal SD_ADDRESS_SET_MSB_3 + lda #^SD_ADDRESS_SET_MSB ; #$00e4 + sta workSpace+2 + + lda #SD_ADDRESS_SET_MSB ; $00 + sta workSpace sep #$20 lda blockNum+3 - stal SD_ADDRESS_SET_MSB - lda blockNum+2 - stal SD_ADDRESS_SET_MSB_1 - lda blockNum+1 - stal SD_ADDRESS_SET_MSB_2 - lda blockNum - stal SD_ADDRESS_SET_MSB_3 + sta [workSpace] + rep #$20 - lda #1 - stal SD_START_READ - - ldx nbPAGES ; number of 512-byte pages to copy -dr2 ldy #0 ; read one block + lda #SD_ADDRESS_SET_MSB_1 ; $02 + sta workSpace sep #$20 -]lp ldal SD_ACCESS + lda blockNum+2 + sta [workSpace] + rep #$20 + + lda #SD_ADDRESS_SET_MSB_2 ; $04 + sta workSpace + sep #$20 + lda blockNum+1 + sta [workSpace] + rep #$20 + + lda #SD_ADDRESS_SET_MSB_3 ; $06 + sta workSpace + sep #$20 + lda blockNum + sta [workSpace] + rep #$20 + +* lda #1 +* stal SD_START_READ + + lda #SD_START_READ ; $08 + sta workSpace + sep #$20 + lda #1 + sta [workSpace] + rep #$20 + + lda #SD_READ ; $0a + sta workSpace + sep #$20 + ldy #0 +]lp lda [workSpace] sta [bufferPtr],y iny - cpy #blockSIZE - bcc ]lp - - rep #$20 ; move destination pointer - lda bufferPtr+1 - clc - adc #>blockSIZE ; rwBlockSize+1 - sta bufferPtr+1 - - dex ; next block - bne dr2 + cpy #512 + bne ]lp + rep #$20 - pla ; restore pointer - sta bufferPtr+1 +* ldx nbPAGES ; number of 512-byte pages to copy +*dr2 ldy #0 ; read one block +* sep #$20 +*]lp ldal SD_READ +* sta [bufferPtr],y +* iny +* cpy #blockSIZE +* bcc ]lp +* +* rep #$20 ; move destination pointer +* lda bufferPtr+1 +* clc +* adc #>blockSIZE ; rwBlockSize+1 +* sta bufferPtr+1 +* +* dex ; next block +* bne dr2 + +* pla ; restore pointer +* sta bufferPtr+1 + pla + sta workSpace + pla + sta workSpace+2 rts *--- The AS magic ends here @@ -221,7 +232,7 @@ dw1 pei bufferPtr+1 ; save pointer dw2 ldy #0 ; read one block sep #$20 ]lp lda [bufferPtr],y - stal SD_ACCESS + stal SD_READ iny cpy #blockSIZE bcc ]lp @@ -262,7 +273,7 @@ DStatus1 asl tblSTATUS da SGetStatus ; GetDeviceStatus da SGet ; GetConfigParameters da SGet ; GetWaitStatus - da SGetFormatOptions ; GetFormatOptions + da SGet ; GetFormatOptions da SNada ; GetPartitionMap SNada rts @@ -287,10 +298,8 @@ SGetStatus lda #2 ; GetDeviceStatus sta [statusListPtr],y SGS1 ldx #diskInDriveBit - ldal SD_CARD_INSERTED ; check if a card is inserted - and #$ff - cmp #1 - beq SGS2 ; yes, a SD card is inserted + lda fgSTARTED ; send the status of the driver + bne SGS2 inx SGS2 txa ora #uncertainBlockCountBit ; we are uncertain of the block count @@ -305,24 +314,6 @@ SGet lda #0 ; GetConfigParameters sta transferCount rts -*----------- GetFormatOptions - -SGetFormatOptions - lda requestCount ; check size of buffer - cmp #formatOptionsTableEnd-formatOptionsTable - bcc SGetFormat1 - - ldy #0 ; and move data -]lp lda formatOptionsTable,y - sta [statusListPtr],y - iny - iny - cpy #formatOptionsTableEnd-formatOptionsTable - bcc ]lp - sty transferCount ; save size - -SGetFormat1 rts - * * Driver_Control * @@ -347,11 +338,11 @@ DControl2 asl rts tblCONTROL da CNada ; 0 ResetDevice - da CFormatDevice ; 1 FormatDevice + da CNada ; 1 FormatDevice da CNada ; 2 EjectMedium da CSet ; 3 SetConfigParameters da CSet ; 4 SetWaitStatus - da CSetFormatOptions ; 5 SetFormatOptions + da CSet ; 5 SetFormatOptions da CNada ; 6 AssignPartitionOwner da CNada ; 7 ArmSignal da CNada ; 8 DisarmSignal @@ -359,38 +350,6 @@ tblCONTROL da CNada ; 0 ResetDevice CNada rts -*----------- FormatDevice - -CFormatDevice - lda fgFORMAT ; if 1, the Format call - bne CFormat1 ; was already called - rts - -CFormat1 rts - -*----------- SetFormatOptions - -CSetFormatOptions - lda [controlListPtr] - beq CSFO9 ; empty option is not ours - cmp #3 ; 1-2 only - bcs CSFO9 - - cmp #1 - bne CSFOHFS - - ldx #^maxBLOCKS ; it is 1, default values for HFS - ldy #maxBLOCKS - bra CSFOAll - -CSFOHFS ldx #^maxBLOCKP ; it is 2, default values for ProDOS - ldy #maxBLOCKP - -CSFOAll sty fBlockCount - stx fBlockCount+2 - -CSFO9 rts - *----------- SetConfigParameters / SetWaitStatus CSet lda [controlListPtr] ; SetConfigParameters @@ -458,15 +417,13 @@ ds6 lda requestCount ; assume transfer=request *---------------------------- checkSWITCHED - ldal SD_CARD_INSERTED - and #$ff - cmp #1 - beq cs1 + lda fgSTARTED + bne cs1 jsl SET_DISKSW -* lda #1 -* sta fgSTARTED + lda #1 + sta fgSTARTED lda #$002e sta errCODE sec @@ -475,83 +432,9 @@ checkSWITCHED cs1 clc rts -*---------------------------- Check RAMDISK was init'ed - -myTASK PushLong #proVOLUME - PushWord #$2008 - jsl GSOS2 - bcc myTASK1 - - PushLong #proFORMAT - PushWord #$2024 - jsl GSOS2 - - lda #1 ; tell the driver we've been there - stal fgFORMAT ; a format will now be a real format - - lda #$4000 ; no more silent formatting - stal proFORMAT+14 - -myTASK1 rtl - -*---------------------------- GS/OS - -proVOLUME dw 2 - adrl proDEVNAME - adrl outVOLNAME - -proFORMAT dw 5 ; +00 - adrl proDEVNAME ; +02 - adrl proVOLNAME ; +06 - dw 6 ; +10 - dw 6 ; +12 - Default is ProDOS - dw $2000 ; +14 - Cant rename, can change selection, silent formatting - -proDEVNAME strl '.ASSDDevice' -proVOLNAME strl ':AppleSSD' - -outVOLNAME dw 36 ; (word) output buffer - ds 34 ; (word) strl + (array) string - -*---------------------------- - - -formatOptionsTable - -* 8 bytes - dw 2 ; numOptions - dw 2 ; numDisplayed - dw 1 ; recommendedOption - dw 1 ; currentOption - -* 16 bytes - dw 1 ; formatOptionNum - dw 2 ; linkRefNum - dw %0000_1101 ; flags 1101 - GB size - Apple format - adrl maxBLOCKS ; blockCount is the max for HFS - dw blockSIZE ; blockSize is 512 bytes - dw 0 ; interleaveFactor - dw 32 ; mediaSize 11 - GB size - -* 16 bytes - dw 2 ; formatOptionNum - dw 0 ; linkRefNum - dw %0000_1001 ; flags 1001 - MB size - Apple format - adrl maxBLOCKP ; blockCount is 65536 for ProDOS 8 - dw blockSIZE ; blockSize is 512 bytes for ProDOS 8 - dw 0 ; interleaveFactor - dw 32 ; mediaSize 10 - MB size - -formatOptionsTableEnd - -*--- Default formatting options - -fBlockCount adrl maxBLOCKS ; 65536 - *---------------------------- fgSTARTED ds 2 ; 0: not started, 1: started -fgFORMAT ds 2 ; 0: GS/OS Format never called, 1 instead errCODE ds 2 thePAGE ds 4 ; page to read/write: $hh/ll00 nbPAGES ds 2 ; number of blockSIZEP pages to copy @@ -559,12 +442,13 @@ nbPAGES ds 2 ; number of blockSIZEP pages to copy MyDIB ds 4 ; +00 pointer to the next DIB adrl entryPOINT ; +04 driver entry point dw dftCHAR ; +08 characteristics - adrl maxBLOCKS ; +0A block count -MyDevName ds 32 ; +0E device name - dw dftSLOT ; +2E slot number - dw dftUNIT ; +30 unit number + ds 4 ; +0A block count + str 'ASSDDevice' ; +0E device name + ds 21 ; 32 - 12 = 20 + dw $0000 ; +2E slot number + dw $0000 ; +30 unit number dw dftVERSION ; +32 version - dw devRAMDISK ; +34 device ID - LOGO + dw dftHDD ; +34 device ID dw $0000 ; +36 first linked device dw $0000 ; +38 next linked device adrl $00000000 ; +3A extended DIB ptr diff --git a/applesqueezer/sdcard/ASSDDriver b/applesqueezer/sdcard/ASSDDriver deleted file mode 100644 index 71cd0d0..0000000 Binary files a/applesqueezer/sdcard/ASSDDriver and /dev/null differ diff --git a/applesqueezer/sdcard/ASSDDriver#BB0101 b/applesqueezer/sdcard/ASSDDriver#BB0101 new file mode 100644 index 0000000..bbe3dda Binary files /dev/null and b/applesqueezer/sdcard/ASSDDriver#BB0101 differ diff --git a/applesqueezer/sdcard/ASSDDriver_Output.txt b/applesqueezer/sdcard/ASSDDriver_Output.txt index 78c4dc5..55e5303 100644 --- a/applesqueezer/sdcard/ASSDDriver_Output.txt +++ b/applesqueezer/sdcard/ASSDDriver_Output.txt @@ -7,7 +7,7 @@ 4 | 1 ASSD.DRIVER.S 4 | Comment | 11 | | 0 | 00/0000 | * (c) 2023, Niek Van Suchtelen 5 | 1 ASSD.DRIVER.S 5 | Comment | 11 | | 0 | 00/0000 | * (c) 2023, Brutal Deluxe Software 6 | 1 ASSD.DRIVER.S 6 | Comment | 11 | | 0 | 00/0000 | * - 7 | 1 ASSD.DRIVER.S 7 | Empty | 11 | | 0 | 00/0000 | + 7 | 1 ASSD.DRIVER.S 7 | Empty | 11 | | 0 | 00/0000 | 8 | 1 ASSD.DRIVER.S 8 | Comment | 11 | | 0 | 00/0000 | * v1.0 (202304) - AV 9 | 1 ASSD.DRIVER.S 9 | Comment | 11 | | 0 | 00/0000 | * Reads a sector 10 | 1 ASSD.DRIVER.S 10 | Comment | 11 | | 0 | 00/0000 | * Type must be $BB @@ -16,698 +16,574 @@ 13 | 1 ASSD.DRIVER.S 13 | Comment | 11 | | 0 | 00/0000 | * v1.1 (202306) - AV 14 | 1 ASSD.DRIVER.S 14 | Comment | 11 | | 0 | 00/0000 | * Writes a sector too! 15 | 1 ASSD.DRIVER.S 15 | Comment | 11 | | 0 | 00/0000 | * - 16 | 1 ASSD.DRIVER.S 16 | Comment | 11 | | 0 | 00/0000 | * v1.2 (202307) - AV - 17 | 1 ASSD.DRIVER.S 17 | Comment | 11 | | 0 | 00/0000 | * Uses disk insertion status - 18 | 1 ASSD.DRIVER.S 18 | Comment | 11 | | 0 | 00/0000 | * - 19 | 1 ASSD.DRIVER.S 19 | Comment | 11 | | 0 | 00/0000 | * v1.3 (202307) - AV - 20 | 1 ASSD.DRIVER.S 20 | Comment | 11 | | 0 | 00/0000 | * Formatting options - 21 | 1 ASSD.DRIVER.S 21 | Empty | 11 | | 0 | 00/0000 | - 22 | 1 ASSD.DRIVER.S 22 | Directive | 00 | | 0 | 00/0000 | mx %00 - 23 | 1 ASSD.DRIVER.S 23 | Directive | 00 | | 0 | 00/0000 | rel - 24 | 1 ASSD.DRIVER.S 24 | Directive | 00 | | 0 | 00/0000 | typ $bb - 25 | 1 ASSD.DRIVER.S 25 | Directive | 00 | | 0 | 00/0000 | dsk ASSDDriver - 26 | 1 ASSD.DRIVER.S 26 | Empty | 00 | | 0 | 00/0000 | - 27 | 1 ASSD.DRIVER.S 27 | Directive | 00 | | 0 | 00/0000 | use AS.EQUATES.S - 28 | 2 AS.EQUATES.S 1 | Comment | 00 | | 0 | 00/0000 | * - 29 | 2 AS.EQUATES.S 2 | Comment | 00 | | 0 | 00/0000 | * AppleSqueezer - Equates - 30 | 2 AS.EQUATES.S 3 | Comment | 00 | | 0 | 00/0000 | * - 31 | 2 AS.EQUATES.S 4 | Comment | 00 | | 0 | 00/0000 | * (c) 2023, Niek Van Suchtelen - 32 | 2 AS.EQUATES.S 5 | Comment | 00 | | 0 | 00/0000 | * (c) 2023, Brutal Deluxe Software - 33 | 2 AS.EQUATES.S 6 | Comment | 00 | | 0 | 00/0000 | * - 34 | 2 AS.EQUATES.S 7 | Empty | 00 | | 0 | 00/0000 | - 35 | 2 AS.EQUATES.S 8 | Comment | 00 | | 0 | 00/0000 | *----------------------------------- - 36 | 2 AS.EQUATES.S 9 | Comment | 00 | | 0 | 00/0000 | * APPLESQUEEZER EQUATES - 37 | 2 AS.EQUATES.S 10 | Comment | 00 | | 0 | 00/0000 | *----------------------------------- - 38 | 2 AS.EQUATES.S 11 | Empty | 00 | | 0 | 00/0000 | - 39 | 2 AS.EQUATES.S 12 | Comment | 00 | | 0 | 00/0000 | * data - 40 | 2 AS.EQUATES.S 13 | Comment | 00 | | 0 | 00/0000 | * bit 0: 1 if Acceralation is enabled - 41 | 2 AS.EQUATES.S 14 | Comment | 00 | | 0 | 00/0000 | * bit 1: 1 if Built-RAM is enabled - 42 | 2 AS.EQUATES.S 15 | Comment | 00 | | 0 | 00/0000 | * bit 2: 1 if Extra RAM is enabled - 43 | 2 AS.EQUATES.S 16 | Comment | 00 | | 0 | 00/0000 | * bit 3-7: values unknown - 44 | 2 AS.EQUATES.S 17 | Empty | 00 | | 0 | 00/0000 | - 45 | 2 AS.EQUATES.S 18 | Equivalence | 00 | | 0 | 00/0000 | FL_WRITE = $e20000 - 46 | 2 AS.EQUATES.S 19 | Equivalence | 00 | | 0 | 00/0000 | FL_READ_REQUEST = $e20002 - 47 | 2 AS.EQUATES.S 20 | Equivalence | 00 | | 0 | 00/0000 | FL_READ = $e20004 - 48 | 2 AS.EQUATES.S 21 | Equivalence | 00 | | 0 | 00/0000 | FL_CS = $e20006 - 49 | 2 AS.EQUATES.S 22 | Equivalence | 00 | | 0 | 00/0000 | FL_READY = $e20008 - 50 | 2 AS.EQUATES.S 23 | Equivalence | 00 | | 0 | 00/0000 | FL_IDLE = $e2000a - 51 | 2 AS.EQUATES.S 24 | Equivalence | 00 | | 0 | 00/0000 | FL_VERSION = $e2000c - 52 | 2 AS.EQUATES.S 25 | Empty | 00 | | 0 | 00/0000 | - 53 | 2 AS.EQUATES.S 26 | Equivalence | 00 | | 0 | 00/0000 | CMD_WRITE_ENABLE = $06 - 54 | 2 AS.EQUATES.S 27 | Equivalence | 00 | | 0 | 00/0000 | CMD_WRITE_DISABLE = $04 - 55 | 2 AS.EQUATES.S 28 | Equivalence | 00 | | 0 | 00/0000 | CMD_PAGE_PROGRAM = $02 - 56 | 2 AS.EQUATES.S 29 | Equivalence | 00 | | 0 | 00/0000 | CMD_SECTOR_ERASE = $d8 - 57 | 2 AS.EQUATES.S 30 | Equivalence | 00 | | 0 | 00/0000 | CMD_BULK_ERASE = $c7 - 58 | 2 AS.EQUATES.S 31 | Equivalence | 00 | | 0 | 00/0000 | CMD_READ_DATA_BYTES = $03 - 59 | 2 AS.EQUATES.S 32 | Equivalence | 00 | | 0 | 00/0000 | CMD_READ_STATUS_REGISTER = $05 - 60 | 2 AS.EQUATES.S 33 | Empty | 00 | | 0 | 00/0000 | - 61 | 2 AS.EQUATES.S 34 | Equivalence | 00 | | 0 | 00/0000 | exdram_address_set_main_bank = $e30000 ; 00..0E - 62 | 2 AS.EQUATES.S 35 | Equivalence | 00 | | 0 | 00/0000 | exdram_address_set_addr_low = $e30002 ; 00/00xx - 63 | 2 AS.EQUATES.S 36 | Equivalence | 00 | | 0 | 00/0000 | exdram_address_set_addr_high = $e30004 ; 00/xx00 - 64 | 2 AS.EQUATES.S 37 | Equivalence | 00 | | 0 | 00/0000 | exdram_address_set_addr_bank = $e30006 ; xx/0000 - 65 | 2 AS.EQUATES.S 38 | Equivalence | 00 | | 0 | 00/0000 | exdram_address_access = $e30008 ; R/W auto-increment to end of main bank - 66 | 2 AS.EQUATES.S 39 | Empty | 00 | | 0 | 00/0000 | - 67 | 2 AS.EQUATES.S 40 | Equivalence | 00 | | 0 | 00/0000 | SD_ADDRESS_SET_MSB = $e40000 - 68 | 2 AS.EQUATES.S 41 | Equivalence | 00 | | 0 | 00/0000 | SD_ADDRESS_SET_MSB_1 = $e40002 - 69 | 2 AS.EQUATES.S 42 | Equivalence | 00 | | 0 | 00/0000 | SD_ADDRESS_SET_MSB_2 = $e40004 - 70 | 2 AS.EQUATES.S 43 | Equivalence | 00 | | 0 | 00/0000 | SD_ADDRESS_SET_MSB_3 = $e40006 - 71 | 2 AS.EQUATES.S 44 | Equivalence | 00 | | 0 | 00/0000 | SD_START_READ = $e40008 ; starts reading the sector (if it was idle) - 72 | 2 AS.EQUATES.S 45 | Equivalence | 00 | | 0 | 00/0000 | SD_ACCESS = $e4000a - 73 | 2 AS.EQUATES.S 46 | Equivalence | 00 | | 0 | 00/0000 | SD_START_WRITE = $e4000c ; starts writing the sector (if it was idle) - 74 | 2 AS.EQUATES.S 47 | Equivalence | 00 | | 0 | 00/0000 | SD_CARD_INSERTED = $e40012 ; 0: no card inserted, 1: card inserted - 75 | 2 AS.EQUATES.S 48 | Empty | 00 | | 0 | 00/0000 | - 76 | 2 AS.EQUATES.S 49 | Equivalence | 00 | | 0 | 00/0000 | STA_NOINIT = 1 ; Drive not initialized - 77 | 2 AS.EQUATES.S 50 | Equivalence | 00 | | 0 | 00/0000 | STA_NODISK = 2 ; No medium in the drive - 78 | 2 AS.EQUATES.S 51 | Empty | 00 | | 0 | 00/0000 | - 79 | 2 AS.EQUATES.S 52 | Equivalence | 00 | | 0 | 00/0000 | TRUE = 1 - 80 | 2 AS.EQUATES.S 53 | Equivalence | 00 | | 0 | 00/0000 | FALSE = 0 - 81 | 2 AS.EQUATES.S 54 | Empty | 00 | | 0 | 00/0000 | - 82 | 2 AS.EQUATES.S 55 | Equivalence | 00 | | 0 | 00/0000 | minVERSION = 7 ; minimum core version to handle the driver - 83 | 2 AS.EQUATES.S 56 | Empty | 00 | | 0 | 00/0000 | - 84 | 2 AS.EQUATES.S 57 | Comment | 00 | | 0 | 00/0000 | *--- Speed settings - 85 | 2 AS.EQUATES.S 58 | Comment | 00 | | 0 | 00/0000 | * From 233 (3 MHz) to 255 (full speed) - 86 | 2 AS.EQUATES.S 59 | Comment | 00 | | 0 | 00/0000 | * Setting is not preserved - 87 | 2 AS.EQUATES.S 60 | Empty | 00 | | 0 | 00/0000 | - 88 | 2 AS.EQUATES.S 61 | Equivalence | 00 | | 0 | 00/0000 | AS_SPEED = $e50000 ; just write a speed byte - 89 | 2 AS.EQUATES.S 62 | Empty | 00 | | 0 | 00/0000 | - 90 | 2 AS.EQUATES.S 63 | Comment | 00 | | 0 | 00/0000 | *----------------------------------- - 91 | 2 AS.EQUATES.S 64 | Comment | 00 | | 0 | 00/0000 | * GS/OS EQUATES - 92 | 2 AS.EQUATES.S 65 | Comment | 00 | | 0 | 00/0000 | *----------------------------------- - 93 | 2 AS.EQUATES.S 66 | Empty | 00 | | 0 | 00/0000 | - 94 | 2 AS.EQUATES.S 67 | Equivalence | 00 | | 0 | 00/0000 | GSOS2 = $E100B0 - 95 | 2 AS.EQUATES.S 68 | Equivalence | 00 | | 0 | 00/0000 | MOVE_INFO = $01FC70 - 96 | 2 AS.EQUATES.S 69 | Equivalence | 00 | | 0 | 00/0000 | SET_DISKSW = $01FC90 - 97 | 2 AS.EQUATES.S 70 | Empty | 00 | | 0 | 00/0000 | - 98 | 2 AS.EQUATES.S 71 | Equivalence | 00 | | 0 | 00/0000 | uncertainBlockCountBit = $8000 - 99 | 2 AS.EQUATES.S 72 | Equivalence | 00 | | 0 | 00/0000 | diskSwitchedBit = $0001 - 100 | 2 AS.EQUATES.S 73 | Equivalence | 00 | | 0 | 00/0000 | diskInDriveBit = $0010 - 101 | 2 AS.EQUATES.S 74 | Equivalence | 00 | | 0 | 00/0000 | diskModifyBit = $0100 - 102 | 2 AS.EQUATES.S 75 | Empty | 00 | | 0 | 00/0000 | - 103 | 2 AS.EQUATES.S 76 | Equivalence | 00 | | 0 | 00/0000 | devPROFILE10MB = $0002 - 104 | 2 AS.EQUATES.S 77 | Equivalence | 00 | | 0 | 00/0000 | devRAMDISK = $000e ; device ID for RAM/ROM disks - 105 | 2 AS.EQUATES.S 78 | Equivalence | 00 | | 0 | 00/0000 | devHDD = $0013 ; device ID for HDD (generic) - 106 | 2 AS.EQUATES.S 79 | Empty | 00 | | 0 | 00/0000 | - 107 | 2 AS.EQUATES.S 80 | Equivalence | 00 | | 0 | 00/0000 | dchar = $08 - 108 | 2 AS.EQUATES.S 81 | Equivalence | 00 | | 0 | 00/0000 | dblockcount = $0a - 109 | 2 AS.EQUATES.S 82 | Equivalence | 00 | | 0 | 00/0000 | ddeviceid = $34 - 110 | 2 AS.EQUATES.S 83 | Equivalence | 00 | | 0 | 00/0000 | ddevnumber = $3e - 111 | 2 AS.EQUATES.S 84 | Empty | 00 | | 0 | 00/0000 | - 112 | 2 AS.EQUATES.S 85 | Comment | 00 | | 0 | 00/0000 | *----------------------------------- - 113 | 2 AS.EQUATES.S 86 | Comment | 00 | | 0 | 00/0000 | * GS/OS DIRECT PAGE - 114 | 2 AS.EQUATES.S 87 | Comment | 00 | | 0 | 00/0000 | *----------------------------------- - 115 | 2 AS.EQUATES.S 88 | Empty | 00 | | 0 | 00/0000 | - 116 | 2 AS.EQUATES.S 89 | Equivalence | 00 | | 0 | 00/0000 | deviceNum = $00 - 117 | 2 AS.EQUATES.S 90 | Equivalence | 00 | | 0 | 00/0000 | callNum = $02 - 118 | 2 AS.EQUATES.S 91 | Equivalence | 00 | | 0 | 00/0000 | bufferPtr = $04 - 119 | 2 AS.EQUATES.S 92 | Equivalence | 00 | | 0 | 00/0000 | statusListPtr = $04 - 120 | 2 AS.EQUATES.S 93 | Equivalence | 00 | | 0 | 00/0000 | controlListPtr = $04 - 121 | 2 AS.EQUATES.S 94 | Equivalence | 00 | | 0 | 00/0000 | requestCount = $08 - 122 | 2 AS.EQUATES.S 95 | Equivalence | 00 | | 0 | 00/0000 | transferCount = $0C - 123 | 2 AS.EQUATES.S 96 | Equivalence | 00 | | 0 | 00/0000 | blockNum = $10 - 124 | 2 AS.EQUATES.S 97 | Equivalence | 00 | | 0 | 00/0000 | blockSize = $14 - 125 | 2 AS.EQUATES.S 98 | Equivalence | 00 | | 0 | 00/0000 | FSTNum = $16 ; * - 126 | 2 AS.EQUATES.S 99 | Equivalence | 00 | | 0 | 00/0000 | statusCode = $16 ; * - 127 | 2 AS.EQUATES.S 100 | Equivalence | 00 | | 0 | 00/0000 | controlCode = $16 ; * - 128 | 2 AS.EQUATES.S 101 | Equivalence | 00 | | 0 | 00/0000 | volumeID = $18 - 129 | 2 AS.EQUATES.S 102 | Equivalence | 00 | | 0 | 00/0000 | cachePriority = $1A - 130 | 2 AS.EQUATES.S 103 | Equivalence | 00 | | 0 | 00/0000 | cachePointer = $1C - 131 | 2 AS.EQUATES.S 104 | Equivalence | 00 | | 0 | 00/0000 | dibPointer = $20 - 132 | 2 AS.EQUATES.S 105 | Empty | 00 | | 0 | 00/0000 | - 133 | 2 AS.EQUATES.S 106 | Empty | 00 | | 0 | 00/0000 | - 134 | 1 ASSD.DRIVER.S 28 | Empty | 00 | | 0 | 00/0000 | - 135 | 1 ASSD.DRIVER.S 29 | Directive | 00 | | 0 | 00/0000 | use 4/Sch.Macs - 136 | 1 ASSD.DRIVER.S 30 | Directive | 00 | | 0 | 00/0000 | use 4/Util.Macs - 137 | 1 ASSD.DRIVER.S 31 | Empty | 00 | | 0 | 00/0000 | - 138 | 1 ASSD.DRIVER.S 32 | Comment | 00 | | 0 | 00/0000 | *----------------------------------- - 139 | 1 ASSD.DRIVER.S 33 | Comment | 00 | | 0 | 00/0000 | * AS DRIVER EQUATES - 140 | 1 ASSD.DRIVER.S 34 | Comment | 00 | | 0 | 00/0000 | *----------------------------------- - 141 | 1 ASSD.DRIVER.S 35 | Empty | 00 | | 0 | 00/0000 | - 142 | 1 ASSD.DRIVER.S 36 | Equivalence | 00 | | 0 | 00/0000 | maxIMAGES = 1 ; no more than N images - 143 | 1 ASSD.DRIVER.S 37 | Equivalence | 00 | | 0 | 00/0000 | blockSIZE = 512 ; ProDOS 8 block size - 144 | 1 ASSD.DRIVER.S 38 | Equivalence | 00 | | 0 | 00/0000 | maxBLOCKS = $ffffffff ; that is a huge number of blocks - 145 | 1 ASSD.DRIVER.S 39 | Equivalence | 00 | | 0 | 00/0000 | maxBLOCKP = 65536 ; 65536 blocks for ProDOS 8 - 146 | 1 ASSD.DRIVER.S 40 | Empty | 00 | | 0 | 00/0000 | - 147 | 1 ASSD.DRIVER.S 41 | Comment | 00 | | 0 | 00/0000 | * 0 0000 - 148 | 1 ASSD.DRIVER.S 42 | Comment | 00 | | 0 | 00/0000 | * 3 0011 not speed dependent - 149 | 1 ASSD.DRIVER.S 43 | Comment | 00 | | 0 | 00/0000 | * E 1110 block device + write allowed + read allowed - 150 | 1 ASSD.DRIVER.S 44 | Comment | 00 | | 0 | 00/0000 | * C 1100 format allowed + removable media - 151 | 1 ASSD.DRIVER.S 45 | Empty | 00 | | 0 | 00/0000 | - 152 | 1 ASSD.DRIVER.S 46 | Equivalence | 00 | | 0 | 00/0000 | dftCHAR = $8BEC ; default characteristics - 153 | 1 ASSD.DRIVER.S 47 | Equivalence | 00 | | 0 | 00/0000 | dftSLOT = $8000 ; not slot dependent - 154 | 1 ASSD.DRIVER.S 48 | Equivalence | 00 | | 0 | 00/0000 | dftUNIT = $0001 ; unit 1 - 155 | 1 ASSD.DRIVER.S 49 | Equivalence | 00 | | 0 | 00/0000 | dftVERSION = $1000 ; v1 - 156 | 1 ASSD.DRIVER.S 50 | Empty | 00 | | 0 | 00/0000 | - 157 | 1 ASSD.DRIVER.S 51 | Comment | 00 | | 0 | 00/0000 | *----------------------------------------------- - 158 | 1 ASSD.DRIVER.S 52 | Empty | 00 | | 0 | 00/0000 | - 159 | 1 ASSD.DRIVER.S 53 | Comment | 00 | | 0 | 00/0000 | * - 160 | 1 ASSD.DRIVER.S 54 | Comment | 00 | | 0 | 00/0000 | * Entry point - 161 | 1 ASSD.DRIVER.S 55 | Comment | 00 | | 0 | 00/0000 | * - 162 | 1 ASSD.DRIVER.S 56 | Empty | 00 | | 0 | 00/0000 | - 163 | 1 ASSD.DRIVER.S 57 | Data | 00 | | 2 | 00/0000 : 15 03 | RAMDisk da MyDIB-RAMDisk ; offset to 1st DIB - 164 | 1 ASSD.DRIVER.S 58 | Data | 00 | | 2 | 00/0002 : 01 00 | dw {1} ; number of devices - 165 | 1 ASSD.DRIVER.S 59 | Data | 00 | | 2 | 00/0004 : 00 00 | dw $0000 ; no configuration list - 166 | 1 ASSD.DRIVER.S 60 | Empty | 00 | | 0 | 00/0006 | - 167 | 1 ASSD.DRIVER.S 61 | Comment | 00 | | 0 | 00/0006 | * - 168 | 1 ASSD.DRIVER.S 62 | Comment | 00 | | 0 | 00/0006 | * Dispatch routine - 169 | 1 ASSD.DRIVER.S 63 | Comment | 00 | | 0 | 00/0006 | * - 170 | 1 ASSD.DRIVER.S 64 | Empty | 00 | | 0 | 00/0006 | - 171 | 1 ASSD.DRIVER.S 65 | Code | 00 | | 1 | 00/0006 : 4B | entryPOINT phk ; Dispatch - 172 | 1 ASSD.DRIVER.S 66 | Code | 00 | | 1 | 00/0007 : AB | plb - 173 | 1 ASSD.DRIVER.S 67 | Code | 00 | | 3 | 00/0008 : C9 09 00 | cmp #$0009 - 174 | 1 ASSD.DRIVER.S 68 | Code | 00 | | 2 | 00/000B : 90 05 | bcc L0012 - 175 | 1 ASSD.DRIVER.S 69 | Code | 00 | | 3 | 00/000D : A9 20 00 | lda #$0020 - 176 | 1 ASSD.DRIVER.S 70 | Code | 00 | | 2 | 00/0010 : 80 0B | bra L001D - 177 | 1 ASSD.DRIVER.S 71 | Code | 00 | | 1 | 00/0012 : 0A | L0012 asl - 178 | 1 ASSD.DRIVER.S 72 | Code | 00 | | 1 | 00/0013 : AA | tax - 179 | 1 ASSD.DRIVER.S 73 | Code | 00 | 2 | 3 | 00/0014 : 9C 0D 03 | stz errCODE - 180 | 1 ASSD.DRIVER.S 74 | Code | 00 | 2 | 3 | 00/0017 : FC 21 00 | jsr (tblDISPATCH,x) - 181 | 1 ASSD.DRIVER.S 75 | Code | 00 | 2 | 3 | 00/001A : AD 0D 03 | lda errCODE - 182 | 1 ASSD.DRIVER.S 76 | Code | 00 | | 3 | 00/001D : C9 01 00 | L001D cmp #$0001 - 183 | 1 ASSD.DRIVER.S 77 | Code | 00 | | 1 | 00/0020 : 6B | rtl - 184 | 1 ASSD.DRIVER.S 78 | Empty | 00 | | 0 | 00/0021 | - 185 | 1 ASSD.DRIVER.S 79 | Data | 00 | 2 | 2 | 00/0021 : 33 00 | tblDISPATCH da DStartup ; Driver_Startup - 186 | 1 ASSD.DRIVER.S 80 | Data | 00 | 2 | 2 | 00/0023 : 7A 00 | da DOpen ; Driver_Open - 187 | 1 ASSD.DRIVER.S 81 | Data | 00 | 2 | 2 | 00/0025 : 7B 00 | da DRead ; Driver_Read - 188 | 1 ASSD.DRIVER.S 82 | Data | 00 | 2 | 2 | 00/0027 : D5 00 | da DWrite ; Driver_Write - 189 | 1 ASSD.DRIVER.S 83 | Data | 00 | 2 | 2 | 00/0029 : 7A 00 | da DClose ; Driver_Close - 190 | 1 ASSD.DRIVER.S 84 | Data | 00 | 2 | 2 | 00/002B : 22 01 | da DStatus ; Driver_Status - 191 | 1 ASSD.DRIVER.S 85 | Data | 00 | 2 | 2 | 00/002D : A0 01 | da DControl ; Driver_Control - 192 | 1 ASSD.DRIVER.S 86 | Data | 00 | 2 | 2 | 00/002F : 7A 00 | da DFlush ; Driver_Flush - 193 | 1 ASSD.DRIVER.S 87 | Data | 00 | 2 | 2 | 00/0031 : 77 00 | da DShutdown ; Driver_Shutdown - 194 | 1 ASSD.DRIVER.S 88 | Empty | 00 | | 0 | 00/0033 | - 195 | 1 ASSD.DRIVER.S 89 | Comment | 00 | | 0 | 00/0033 | * - 196 | 1 ASSD.DRIVER.S 90 | Comment | 00 | | 0 | 00/0033 | * Driver_Startup - 197 | 1 ASSD.DRIVER.S 91 | Comment | 00 | | 0 | 00/0033 | * - 198 | 1 ASSD.DRIVER.S 92 | Empty | 00 | | 0 | 00/0033 | - 199 | 1 ASSD.DRIVER.S 93 | Empty | 00 | | 0 | 00/0033 | DStartup - 200 | 1 ASSD.DRIVER.S 94 | Code | 00 | | 4 | 00/0033 : AF 0A 00 E2 | ldal {$e2000a} - 201 | 1 ASSD.DRIVER.S 95 | Code | 00 | | 3 | 00/0037 : 29 FF 00 | and #$ff - 202 | 1 ASSD.DRIVER.S 96 | Code | 00 | | 3 | 00/003A : C9 01 00 | cmp #$01 - 203 | 1 ASSD.DRIVER.S 97 | Code | 00 | | 2 | 00/003D : D0 38 | bne DShutdown ; no AS found - 204 | 1 ASSD.DRIVER.S 98 | Empty | 00 | | 0 | 00/003F | - 205 | 1 ASSD.DRIVER.S 99 | Code | 00 | | 4 | 00/003F : AF 0C 00 E2 | ldal {$e2000c} - 206 | 1 ASSD.DRIVER.S 100 | Code | 00 | | 3 | 00/0043 : 29 FF 00 | and #$ff - 207 | 1 ASSD.DRIVER.S 101 | Code | 00 | | 3 | 00/0046 : C9 07 00 | cmp #{7} - 208 | 1 ASSD.DRIVER.S 102 | Code | 00 | | 2 | 00/0049 : 90 2C | bcc DShutdown ; no minimum version - 209 | 1 ASSD.DRIVER.S 103 | Empty | 00 | | 0 | 00/004B | - 210 | 1 ASSD.DRIVER.S 104 | Code | 00 | | 3 | 00/004B : A9 01 00 | lda #1 ; we're on - 211 | 1 ASSD.DRIVER.S 105 | Code | 00 | 2 | 3 | 00/004E : 8D 09 03 | sta fgSTARTED - 212 | 1 ASSD.DRIVER.S 106 | Empty | 00 | | 0 | 00/0051 | - 213 | 1 ASSD.DRIVER.S 107 | Code | 11 | | 2 | 00/0051 : E2 30 | sep #$30 - 214 | 1 ASSD.DRIVER.S 108 | Code | 11 | | 2 | 00/0053 : A2 00 | ldx #0 - 215 | 1 ASSD.DRIVER.S 109 | Code | 11 | 2 | 3 | 00/0055 : BD A4 02 | ozunid_1 lda proDEVNAME+3,x - 216 | 1 ASSD.DRIVER.S 110 | Code | 11 | 2 | 3 | 00/0058 : 9D 24 03 | sta MyDevName+1,x - 217 | 1 ASSD.DRIVER.S 111 | Code | 11 | | 1 | 00/005B : E8 | inx - 218 | 1 ASSD.DRIVER.S 112 | Code | 11 | | 2 | 00/005C : E0 0A | cpx #10 - 219 | 1 ASSD.DRIVER.S 113 | Code | 11 | | 2 | 00/005E : 90 F5 | bcc ozunid_1 - 220 | 1 ASSD.DRIVER.S 114 | Code | 11 | 2 | 3 | 00/0060 : 8E 23 03 | stx MyDevName - 221 | 1 ASSD.DRIVER.S 115 | Code | 00 | | 2 | 00/0063 : C2 30 | rep #$30 - 222 | 1 ASSD.DRIVER.S 116 | Empty | 00 | | 0 | 00/0065 | - 223 | 1 ASSD.DRIVER.S 117 | Macro | 00 | | 0 | 00/0065 | PushWord #0 - 225 | 1 ASSD.DRIVER.S 117 | Code | 00 | | 3 | 00/0065 : F4 00 00 | PEA #0 - 228 | 1 ASSD.DRIVER.S 118 | Macro | 00 | | 0 | 00/0068 | PushLong #myTASK - 232 | 1 ASSD.DRIVER.S 118 | Code | 00 | 1 >>16 | 3 | 00/0068 : F4 00 00 | PEA #^#myTASK - 239 | 1 ASSD.DRIVER.S 118 | Code | 00 | 2 | 3 | 00/006B : F4 5C 02 | PEA #myTASK - 242 | 1 ASSD.DRIVER.S 119 | Macro | 00 | | 0 | 00/006E | _SchAddTask - 244 | 1 ASSD.DRIVER.S 119 | Code | 00 | | 3 | 00/006E : A2 07 09 | LDX #$907 ; load tool call # - 245 | 1 ASSD.DRIVER.S 119 | Code | 00 | | 4 | 00/0071 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 246 | 1 ASSD.DRIVER.S 120 | Code | 00 | | 1 | 00/0075 : 68 | pla - 247 | 1 ASSD.DRIVER.S 121 | Code | 00 | | 1 | 00/0076 : 60 | rts - 248 | 1 ASSD.DRIVER.S 122 | Empty | 00 | | 0 | 00/0077 | - 249 | 1 ASSD.DRIVER.S 123 | Comment | 00 | | 0 | 00/0077 | * - 250 | 1 ASSD.DRIVER.S 124 | Comment | 00 | | 0 | 00/0077 | * Driver_Shutdown - 251 | 1 ASSD.DRIVER.S 125 | Comment | 00 | | 0 | 00/0077 | * - 252 | 1 ASSD.DRIVER.S 126 | Empty | 00 | | 0 | 00/0077 | - 253 | 1 ASSD.DRIVER.S 127 | Code | 00 | 2 | 3 | 00/0077 : 9C 09 03 | DShutdown stz fgSTARTED - 254 | 1 ASSD.DRIVER.S 128 | Empty | 00 | | 0 | 00/007A | - 255 | 1 ASSD.DRIVER.S 129 | Comment | 00 | | 0 | 00/007A | * - 256 | 1 ASSD.DRIVER.S 130 | Comment | 00 | | 0 | 00/007A | * Driver_Open - 257 | 1 ASSD.DRIVER.S 131 | Comment | 00 | | 0 | 00/007A | * Driver_Close - 258 | 1 ASSD.DRIVER.S 132 | Comment | 00 | | 0 | 00/007A | * Driver_Flush - 259 | 1 ASSD.DRIVER.S 133 | Comment | 00 | | 0 | 00/007A | * - 260 | 1 ASSD.DRIVER.S 134 | Empty | 00 | | 0 | 00/007A | - 261 | 1 ASSD.DRIVER.S 135 | Empty | 00 | | 0 | 00/007A | DOpen ; Driver_Open - 262 | 1 ASSD.DRIVER.S 136 | Empty | 00 | | 0 | 00/007A | DClose ; Driver_Close - 263 | 1 ASSD.DRIVER.S 137 | Empty | 00 | | 0 | 00/007A | DFlush ; Driver_Flush - 264 | 1 ASSD.DRIVER.S 138 | Code | 00 | | 1 | 00/007A : 60 | rts - 265 | 1 ASSD.DRIVER.S 139 | Empty | 00 | | 0 | 00/007B | - 266 | 1 ASSD.DRIVER.S 140 | Comment | 00 | | 0 | 00/007B | * - 267 | 1 ASSD.DRIVER.S 141 | Comment | 00 | | 0 | 00/007B | * Driver_Read - 268 | 1 ASSD.DRIVER.S 142 | Comment | 00 | | 0 | 00/007B | * - 269 | 1 ASSD.DRIVER.S 143 | Empty | 00 | | 0 | 00/007B | - 270 | 1 ASSD.DRIVER.S 144 | Code | 00 | 2 | 3 | 00/007B : 20 09 02 | DRead jsr doSETUP - 271 | 1 ASSD.DRIVER.S 145 | Code | 00 | | 2 | 00/007E : 90 01 | bcc dr1 - 272 | 1 ASSD.DRIVER.S 146 | Code | 00 | | 1 | 00/0080 : 60 | rts - 273 | 1 ASSD.DRIVER.S 147 | Empty | 00 | | 0 | 00/0081 | - 274 | 1 ASSD.DRIVER.S 148 | Comment | 00 | | 0 | 00/0081 | *--- The AS magic is here - 275 | 1 ASSD.DRIVER.S 149 | Empty | 00 | | 0 | 00/0081 | - 276 | 1 ASSD.DRIVER.S 150 | Code | 10 | | 2 | 00/0081 : E2 20 | dr1 sep #$20 - 277 | 1 ASSD.DRIVER.S 151 | Code | 10 | | 4 | 00/0083 : AF 34 C0 00 | ldal $c034 - 278 | 1 ASSD.DRIVER.S 152 | Code | 10 | | 1 | 00/0087 : 1A | inc - 279 | 1 ASSD.DRIVER.S 153 | Code | 10 | | 4 | 00/0088 : 8F 34 C0 00 | stal $c034 - 280 | 1 ASSD.DRIVER.S 154 | Code | 00 | | 2 | 00/008C : C2 20 | rep #$20 - 281 | 1 ASSD.DRIVER.S 155 | Empty | 00 | | 0 | 00/008E | - 282 | 1 ASSD.DRIVER.S 156 | Code | 00 | | 2 | 00/008E : D4 05 | pei {$04}+1 ; save pointer - 283 | 1 ASSD.DRIVER.S 157 | Empty | 00 | | 0 | 00/0090 | - 284 | 1 ASSD.DRIVER.S 158 | Code | 10 | | 2 | 00/0090 : E2 20 | sep #$20 - 285 | 1 ASSD.DRIVER.S 159 | Code | 10 | | 2 | 00/0092 : A5 13 | lda {$10}+3 - 286 | 1 ASSD.DRIVER.S 160 | Code | 10 | | 4 | 00/0094 : 8F 00 00 E4 | stal {$e40000} - 287 | 1 ASSD.DRIVER.S 161 | Code | 10 | | 2 | 00/0098 : A5 12 | lda {$10}+2 - 288 | 1 ASSD.DRIVER.S 162 | Code | 10 | | 4 | 00/009A : 8F 02 00 E4 | stal {$e40002} - 289 | 1 ASSD.DRIVER.S 163 | Code | 10 | | 2 | 00/009E : A5 11 | lda {$10}+1 - 290 | 1 ASSD.DRIVER.S 164 | Code | 10 | | 4 | 00/00A0 : 8F 04 00 E4 | stal {$e40004} - 291 | 1 ASSD.DRIVER.S 165 | Code | 10 | | 2 | 00/00A4 : A5 10 | lda {$10} - 292 | 1 ASSD.DRIVER.S 166 | Code | 10 | | 4 | 00/00A6 : 8F 06 00 E4 | stal {$e40006} - 293 | 1 ASSD.DRIVER.S 167 | Empty | 10 | | 0 | 00/00AA | - 294 | 1 ASSD.DRIVER.S 168 | Code | 10 | | 2 | 00/00AA : A9 01 | lda #1 - 295 | 1 ASSD.DRIVER.S 169 | Code | 10 | | 4 | 00/00AC : 8F 08 00 E4 | stal {$e40008} - 296 | 1 ASSD.DRIVER.S 170 | Empty | 10 | | 0 | 00/00B0 | - 297 | 1 ASSD.DRIVER.S 171 | Code | 10 | 2 | 3 | 00/00B0 : AE 13 03 | ldx nbPAGES ; number of 512-byte pages to copy - 298 | 1 ASSD.DRIVER.S 172 | Code | 10 | | 3 | 00/00B3 : A0 00 00 | dr2 ldy #0 ; read one block - 299 | 1 ASSD.DRIVER.S 173 | Code | 10 | | 2 | 00/00B6 : E2 20 | sep #$20 - 300 | 1 ASSD.DRIVER.S 174 | Code | 10 | | 4 | 00/00B8 : AF 0A 00 E4 | ozunid_2 ldal {$e4000a} - 301 | 1 ASSD.DRIVER.S 175 | Code | 10 | | 2 | 00/00BC : 97 04 | sta [{$04}],y - 302 | 1 ASSD.DRIVER.S 176 | Code | 10 | | 1 | 00/00BE : C8 | iny - 303 | 1 ASSD.DRIVER.S 177 | Code | 10 | | 3 | 00/00BF : C0 00 02 | cpy #{512} - 304 | 1 ASSD.DRIVER.S 178 | Code | 10 | | 2 | 00/00C2 : 90 F4 | bcc ozunid_2 - 305 | 1 ASSD.DRIVER.S 179 | Empty | 10 | | 0 | 00/00C4 | - 306 | 1 ASSD.DRIVER.S 180 | Code | 00 | | 2 | 00/00C4 : C2 20 | rep #$20 ; move destination pointer - 307 | 1 ASSD.DRIVER.S 181 | Code | 00 | | 2 | 00/00C6 : A5 05 | lda {$04}+1 - 308 | 1 ASSD.DRIVER.S 182 | Code | 00 | | 1 | 00/00C8 : 18 | clc - 309 | 1 ASSD.DRIVER.S 183 | Code | 00 | | 3 | 00/00C9 : 69 02 00 | adc #>{512} ; rwBlockSize+1 - 310 | 1 ASSD.DRIVER.S 184 | Code | 00 | | 2 | 00/00CC : 85 05 | sta {$04}+1 - 311 | 1 ASSD.DRIVER.S 185 | Empty | 00 | | 0 | 00/00CE | - 312 | 1 ASSD.DRIVER.S 186 | Code | 00 | | 1 | 00/00CE : CA | dex ; next block - 313 | 1 ASSD.DRIVER.S 187 | Code | 00 | | 2 | 00/00CF : D0 E2 | bne dr2 - 314 | 1 ASSD.DRIVER.S 188 | Empty | 00 | | 0 | 00/00D1 | - 315 | 1 ASSD.DRIVER.S 189 | Code | 00 | | 1 | 00/00D1 : 68 | pla ; restore pointer - 316 | 1 ASSD.DRIVER.S 190 | Code | 00 | | 2 | 00/00D2 : 85 05 | sta {$04}+1 - 317 | 1 ASSD.DRIVER.S 191 | Code | 00 | | 1 | 00/00D4 : 60 | rts - 318 | 1 ASSD.DRIVER.S 192 | Empty | 00 | | 0 | 00/00D5 | - 319 | 1 ASSD.DRIVER.S 193 | Comment | 00 | | 0 | 00/00D5 | *--- The AS magic ends here - 320 | 1 ASSD.DRIVER.S 194 | Empty | 00 | | 0 | 00/00D5 | - 321 | 1 ASSD.DRIVER.S 195 | Comment | 00 | | 0 | 00/00D5 | * - 322 | 1 ASSD.DRIVER.S 196 | Comment | 00 | | 0 | 00/00D5 | * Driver_Write - 323 | 1 ASSD.DRIVER.S 197 | Comment | 00 | | 0 | 00/00D5 | * - 324 | 1 ASSD.DRIVER.S 198 | Empty | 00 | | 0 | 00/00D5 | - 325 | 1 ASSD.DRIVER.S 199 | Code | 00 | 2 | 3 | 00/00D5 : 20 09 02 | DWrite jsr doSETUP - 326 | 1 ASSD.DRIVER.S 200 | Code | 00 | | 2 | 00/00D8 : 90 01 | bcc dw1 - 327 | 1 ASSD.DRIVER.S 201 | Code | 00 | | 1 | 00/00DA : 60 | rts - 328 | 1 ASSD.DRIVER.S 202 | Empty | 00 | | 0 | 00/00DB | - 329 | 1 ASSD.DRIVER.S 203 | Comment | 00 | | 0 | 00/00DB | *--- The AS magic is here - 330 | 1 ASSD.DRIVER.S 204 | Empty | 00 | | 0 | 00/00DB | - 331 | 1 ASSD.DRIVER.S 205 | Code | 00 | | 2 | 00/00DB : D4 05 | dw1 pei {$04}+1 ; save pointer - 332 | 1 ASSD.DRIVER.S 206 | Empty | 00 | | 0 | 00/00DD | - 333 | 1 ASSD.DRIVER.S 207 | Code | 10 | | 2 | 00/00DD : E2 20 | sep #$20 - 334 | 1 ASSD.DRIVER.S 208 | Code | 10 | | 2 | 00/00DF : A5 13 | lda {$10}+3 - 335 | 1 ASSD.DRIVER.S 209 | Code | 10 | | 4 | 00/00E1 : 8F 00 00 E4 | stal {$e40000} - 336 | 1 ASSD.DRIVER.S 210 | Code | 10 | | 2 | 00/00E5 : A5 12 | lda {$10}+2 - 337 | 1 ASSD.DRIVER.S 211 | Code | 10 | | 4 | 00/00E7 : 8F 02 00 E4 | stal {$e40002} - 338 | 1 ASSD.DRIVER.S 212 | Code | 10 | | 2 | 00/00EB : A5 11 | lda {$10}+1 - 339 | 1 ASSD.DRIVER.S 213 | Code | 10 | | 4 | 00/00ED : 8F 04 00 E4 | stal {$e40004} - 340 | 1 ASSD.DRIVER.S 214 | Code | 10 | | 2 | 00/00F1 : A5 10 | lda {$10} - 341 | 1 ASSD.DRIVER.S 215 | Code | 10 | | 4 | 00/00F3 : 8F 06 00 E4 | stal {$e40006} - 342 | 1 ASSD.DRIVER.S 216 | Empty | 10 | | 0 | 00/00F7 | - 343 | 1 ASSD.DRIVER.S 217 | Code | 10 | | 2 | 00/00F7 : A9 01 | lda #1 - 344 | 1 ASSD.DRIVER.S 218 | Code | 10 | | 4 | 00/00F9 : 8F 0C 00 E4 | stal {$e4000c} - 345 | 1 ASSD.DRIVER.S 219 | Empty | 10 | | 0 | 00/00FD | - 346 | 1 ASSD.DRIVER.S 220 | Code | 10 | 2 | 3 | 00/00FD : AE 13 03 | ldx nbPAGES ; number of 512-byte pages to copy - 347 | 1 ASSD.DRIVER.S 221 | Code | 10 | | 3 | 00/0100 : A0 00 00 | dw2 ldy #0 ; read one block - 348 | 1 ASSD.DRIVER.S 222 | Code | 10 | | 2 | 00/0103 : E2 20 | sep #$20 - 349 | 1 ASSD.DRIVER.S 223 | Code | 10 | | 2 | 00/0105 : B7 04 | ozunid_3 lda [{$04}],y - 350 | 1 ASSD.DRIVER.S 224 | Code | 10 | | 4 | 00/0107 : 8F 0A 00 E4 | stal {$e4000a} - 351 | 1 ASSD.DRIVER.S 225 | Code | 10 | | 1 | 00/010B : C8 | iny - 352 | 1 ASSD.DRIVER.S 226 | Code | 10 | | 3 | 00/010C : C0 00 02 | cpy #{512} - 353 | 1 ASSD.DRIVER.S 227 | Code | 10 | | 2 | 00/010F : 90 F4 | bcc ozunid_3 - 354 | 1 ASSD.DRIVER.S 228 | Empty | 10 | | 0 | 00/0111 | - 355 | 1 ASSD.DRIVER.S 229 | Code | 00 | | 2 | 00/0111 : C2 20 | rep #$20 ; move destination pointer - 356 | 1 ASSD.DRIVER.S 230 | Code | 00 | | 2 | 00/0113 : A5 05 | lda {$04}+1 - 357 | 1 ASSD.DRIVER.S 231 | Code | 00 | | 1 | 00/0115 : 18 | clc - 358 | 1 ASSD.DRIVER.S 232 | Code | 00 | | 3 | 00/0116 : 69 02 00 | adc #>{512} ; rwBlockSize+1 - 359 | 1 ASSD.DRIVER.S 233 | Code | 00 | | 2 | 00/0119 : 85 05 | sta {$04}+1 - 360 | 1 ASSD.DRIVER.S 234 | Empty | 00 | | 0 | 00/011B | - 361 | 1 ASSD.DRIVER.S 235 | Code | 00 | | 1 | 00/011B : CA | dex ; next block - 362 | 1 ASSD.DRIVER.S 236 | Code | 00 | | 2 | 00/011C : D0 E2 | bne dw2 - 363 | 1 ASSD.DRIVER.S 237 | Empty | 00 | | 0 | 00/011E | - 364 | 1 ASSD.DRIVER.S 238 | Code | 00 | | 1 | 00/011E : 68 | pla ; restore pointer - 365 | 1 ASSD.DRIVER.S 239 | Code | 00 | | 2 | 00/011F : 85 05 | sta {$04}+1 - 366 | 1 ASSD.DRIVER.S 240 | Code | 00 | | 1 | 00/0121 : 60 | rts - 367 | 1 ASSD.DRIVER.S 241 | Empty | 00 | | 0 | 00/0122 | - 368 | 1 ASSD.DRIVER.S 242 | Comment | 00 | | 0 | 00/0122 | *--- The AS magic ends here - 369 | 1 ASSD.DRIVER.S 243 | Empty | 00 | | 0 | 00/0122 | - 370 | 1 ASSD.DRIVER.S 244 | Comment | 00 | | 0 | 00/0122 | * - 371 | 1 ASSD.DRIVER.S 245 | Comment | 00 | | 0 | 00/0122 | * Driver_Status - 372 | 1 ASSD.DRIVER.S 246 | Comment | 00 | | 0 | 00/0122 | * - 373 | 1 ASSD.DRIVER.S 247 | Empty | 00 | | 0 | 00/0122 | - 374 | 1 ASSD.DRIVER.S 248 | Code | 00 | | 2 | 00/0122 : A5 16 | DStatus lda {$16} - 375 | 1 ASSD.DRIVER.S 249 | Code | 00 | | 3 | 00/0124 : C9 05 00 | cmp #4+1 - 376 | 1 ASSD.DRIVER.S 250 | Code | 00 | | 2 | 00/0127 : 90 07 | bcc DStatus1 - 377 | 1 ASSD.DRIVER.S 251 | Code | 00 | | 3 | 00/0129 : A9 21 00 | lda #$0021 ; drvrBadCode - 378 | 1 ASSD.DRIVER.S 252 | Code | 00 | 2 | 3 | 00/012C : 8D 0D 03 | sta errCODE - 379 | 1 ASSD.DRIVER.S 253 | Code | 00 | | 1 | 00/012F : 60 | rts - 380 | 1 ASSD.DRIVER.S 254 | Empty | 00 | | 0 | 00/0130 | - 381 | 1 ASSD.DRIVER.S 255 | Code | 00 | | 1 | 00/0130 : 0A | DStatus1 asl - 382 | 1 ASSD.DRIVER.S 256 | Code | 00 | | 1 | 00/0131 : AA | tax - 383 | 1 ASSD.DRIVER.S 257 | Code | 00 | | 2 | 00/0132 : 64 0C | stz {$0C} - 384 | 1 ASSD.DRIVER.S 258 | Code | 00 | | 2 | 00/0134 : 64 0E | stz {$0C}+2 - 385 | 1 ASSD.DRIVER.S 259 | Code | 00 | 2 | 3 | 00/0136 : FC 3A 01 | jsr (tblSTATUS,x) - 386 | 1 ASSD.DRIVER.S 260 | Code | 00 | | 1 | 00/0139 : 60 | rts - 387 | 1 ASSD.DRIVER.S 261 | Empty | 00 | | 0 | 00/013A | - 388 | 1 ASSD.DRIVER.S 262 | Data | 00 | 2 | 2 | 00/013A : 45 01 | tblSTATUS da SGetStatus ; GetDeviceStatus - 389 | 1 ASSD.DRIVER.S 263 | Data | 00 | 2 | 2 | 00/013C : 7C 01 | da SGet ; GetConfigParameters - 390 | 1 ASSD.DRIVER.S 264 | Data | 00 | 2 | 2 | 00/013E : 7C 01 | da SGet ; GetWaitStatus - 391 | 1 ASSD.DRIVER.S 265 | Data | 00 | 2 | 2 | 00/0140 : 87 01 | da SGetFormatOptions; GetFormatOptions - 392 | 1 ASSD.DRIVER.S 266 | Data | 00 | 2 | 2 | 00/0142 : 44 01 | da SNada ; GetPartitionMap - 393 | 1 ASSD.DRIVER.S 267 | Empty | 00 | | 0 | 00/0144 | - 394 | 1 ASSD.DRIVER.S 268 | Code | 00 | | 1 | 00/0144 : 60 | SNada rts - 395 | 1 ASSD.DRIVER.S 269 | Empty | 00 | | 0 | 00/0145 | - 396 | 1 ASSD.DRIVER.S 270 | Comment | 00 | | 0 | 00/0145 | *----------- GetDeviceStatus - 397 | 1 ASSD.DRIVER.S 271 | Empty | 00 | | 0 | 00/0145 | - 398 | 1 ASSD.DRIVER.S 272 | Code | 00 | | 3 | 00/0145 : A9 02 00 | SGetStatus lda #2 ; GetDeviceStatus - 399 | 1 ASSD.DRIVER.S 273 | Code | 00 | | 2 | 00/0148 : 85 0C | sta {$0C} - 400 | 1 ASSD.DRIVER.S 274 | Empty | 00 | | 0 | 00/014A | - 401 | 1 ASSD.DRIVER.S 275 | Code | 00 | | 2 | 00/014A : A5 08 | lda {$08} ; check length of buffer - 402 | 1 ASSD.DRIVER.S 276 | Code | 00 | | 3 | 00/014C : C9 06 00 | cmp #6 - 403 | 1 ASSD.DRIVER.S 277 | Code | 00 | | 2 | 00/014F : 90 14 | bcc SGS1 - 404 | 1 ASSD.DRIVER.S 278 | Code | 00 | | 3 | 00/0151 : A9 06 00 | lda #6 - 405 | 1 ASSD.DRIVER.S 279 | Code | 00 | | 2 | 00/0154 : 85 0C | sta {$0C} - 406 | 1 ASSD.DRIVER.S 280 | Empty | 00 | | 0 | 00/0156 | - 407 | 1 ASSD.DRIVER.S 281 | Code | 00 | | 3 | 00/0156 : A0 02 00 | ldy #2 ; we can send the number of blocks - 408 | 1 ASSD.DRIVER.S 282 | Code | 00 | | 3 | 00/0159 : A9 FF FF | lda #{$ffffffff} - 409 | 1 ASSD.DRIVER.S 283 | Code | 00 | | 2 | 00/015C : 97 04 | sta [{$04}],y - 410 | 1 ASSD.DRIVER.S 284 | Code | 00 | | 1 | 00/015E : C8 | iny - 411 | 1 ASSD.DRIVER.S 285 | Code | 00 | | 1 | 00/015F : C8 | iny - 412 | 1 ASSD.DRIVER.S 286 | Code | 00 | | 3 | 00/0160 : A9 FF FF | lda #^{$ffffffff} - 413 | 1 ASSD.DRIVER.S 287 | Code | 00 | | 2 | 00/0163 : 97 04 | sta [{$04}],y - 414 | 1 ASSD.DRIVER.S 288 | Empty | 00 | | 0 | 00/0165 | - 415 | 1 ASSD.DRIVER.S 289 | Code | 00 | | 3 | 00/0165 : A2 10 00 | SGS1 ldx #{$0010} - 416 | 1 ASSD.DRIVER.S 290 | Code | 00 | | 4 | 00/0168 : AF 12 00 E4 | ldal {$e40012} ; check if a card is inserted - 417 | 1 ASSD.DRIVER.S 291 | Code | 00 | | 3 | 00/016C : 29 FF 00 | and #$ff - 418 | 1 ASSD.DRIVER.S 292 | Code | 00 | | 3 | 00/016F : C9 01 00 | cmp #1 - 419 | 1 ASSD.DRIVER.S 293 | Code | 00 | | 2 | 00/0172 : F0 01 | beq SGS2 ; yes, a SD card is inserted - 420 | 1 ASSD.DRIVER.S 294 | Code | 00 | | 1 | 00/0174 : E8 | inx - 421 | 1 ASSD.DRIVER.S 295 | Code | 00 | | 1 | 00/0175 : 8A | SGS2 txa - 422 | 1 ASSD.DRIVER.S 296 | Code | 00 | | 3 | 00/0176 : 09 00 80 | ora #{$8000} ; we are uncertain of the block count - 423 | 1 ASSD.DRIVER.S 297 | Code | 00 | | 2 | 00/0179 : 87 04 | sta [{$04}] - 424 | 1 ASSD.DRIVER.S 298 | Code | 00 | | 1 | 00/017B : 60 | rts - 425 | 1 ASSD.DRIVER.S 299 | Empty | 00 | | 0 | 00/017C | - 426 | 1 ASSD.DRIVER.S 300 | Comment | 00 | | 0 | 00/017C | *----------- GetConfigParameters / GetWaitStatus - 427 | 1 ASSD.DRIVER.S 301 | Empty | 00 | | 0 | 00/017C | - 428 | 1 ASSD.DRIVER.S 302 | Code | 00 | | 3 | 00/017C : A9 00 00 | SGet lda #0 ; GetConfigParameters - 429 | 1 ASSD.DRIVER.S 303 | Code | 00 | | 2 | 00/017F : 87 04 | sta [{$04}] ; GetWaitStatus - 430 | 1 ASSD.DRIVER.S 304 | Code | 00 | | 3 | 00/0181 : A9 02 00 | lda #2 - 431 | 1 ASSD.DRIVER.S 305 | Code | 00 | | 2 | 00/0184 : 85 0C | sta {$0C} - 432 | 1 ASSD.DRIVER.S 306 | Code | 00 | | 1 | 00/0186 : 60 | rts - 433 | 1 ASSD.DRIVER.S 307 | Empty | 00 | | 0 | 00/0187 | - 434 | 1 ASSD.DRIVER.S 308 | Comment | 00 | | 0 | 00/0187 | *----------- GetFormatOptions - 435 | 1 ASSD.DRIVER.S 309 | Empty | 00 | | 0 | 00/0187 | - 436 | 1 ASSD.DRIVER.S 310 | Empty | 00 | | 0 | 00/0187 | SGetFormatOptions - 437 | 1 ASSD.DRIVER.S 311 | Code | 00 | | 2 | 00/0187 : A5 08 | lda {$08} ; check size of buffer - 438 | 1 ASSD.DRIVER.S 312 | Code | 00 | | 3 | 00/0189 : C9 28 00 | cmp #formatOptionsTableEnd-formatOptionsTable - 439 | 1 ASSD.DRIVER.S 313 | Code | 00 | | 2 | 00/018C : 90 11 | bcc SGetFormat1 - 440 | 1 ASSD.DRIVER.S 314 | Empty | 00 | | 0 | 00/018E | - 441 | 1 ASSD.DRIVER.S 315 | Code | 00 | | 3 | 00/018E : A0 00 00 | ldy #0 ; and move data - 442 | 1 ASSD.DRIVER.S 316 | Code | 00 | 2 | 3 | 00/0191 : B9 DD 02 | ozunid_4 lda formatOptionsTable,y - 443 | 1 ASSD.DRIVER.S 317 | Code | 00 | | 2 | 00/0194 : 97 04 | sta [{$04}],y - 444 | 1 ASSD.DRIVER.S 318 | Code | 00 | | 1 | 00/0196 : C8 | iny - 445 | 1 ASSD.DRIVER.S 319 | Code | 00 | | 1 | 00/0197 : C8 | iny - 446 | 1 ASSD.DRIVER.S 320 | Code | 00 | | 3 | 00/0198 : C0 28 00 | cpy #formatOptionsTableEnd-formatOptionsTable - 447 | 1 ASSD.DRIVER.S 321 | Code | 00 | | 2 | 00/019B : 90 F4 | bcc ozunid_4 - 448 | 1 ASSD.DRIVER.S 322 | Code | 00 | | 2 | 00/019D : 84 0C | sty {$0C} ; save size - 449 | 1 ASSD.DRIVER.S 323 | Empty | 00 | | 0 | 00/019F | - 450 | 1 ASSD.DRIVER.S 324 | Code | 00 | | 1 | 00/019F : 60 | SGetFormat1 rts - 451 | 1 ASSD.DRIVER.S 325 | Empty | 00 | | 0 | 00/01A0 | - 452 | 1 ASSD.DRIVER.S 326 | Comment | 00 | | 0 | 00/01A0 | * - 453 | 1 ASSD.DRIVER.S 327 | Comment | 00 | | 0 | 00/01A0 | * Driver_Control - 454 | 1 ASSD.DRIVER.S 328 | Comment | 00 | | 0 | 00/01A0 | * - 455 | 1 ASSD.DRIVER.S 329 | Empty | 00 | | 0 | 00/01A0 | - 456 | 1 ASSD.DRIVER.S 330 | Code | 00 | 2 | 3 | 00/01A0 : 20 42 02 | DControl jsr checkSWITCHED - 457 | 1 ASSD.DRIVER.S 331 | Code | 00 | | 2 | 00/01A3 : 90 01 | bcc DControl1 - 458 | 1 ASSD.DRIVER.S 332 | Code | 00 | | 1 | 00/01A5 : 60 | rts - 459 | 1 ASSD.DRIVER.S 333 | Empty | 00 | | 0 | 00/01A6 | - 460 | 1 ASSD.DRIVER.S 334 | Code | 00 | | 2 | 00/01A6 : A5 16 | DControl1 lda {$16} - 461 | 1 ASSD.DRIVER.S 335 | Code | 00 | | 3 | 00/01A8 : C9 0A 00 | cmp #9+1 - 462 | 1 ASSD.DRIVER.S 336 | Code | 00 | | 2 | 00/01AB : 90 07 | bcc DControl2 - 463 | 1 ASSD.DRIVER.S 337 | Empty | 00 | | 0 | 00/01AD | - 464 | 1 ASSD.DRIVER.S 338 | Code | 00 | | 3 | 00/01AD : A9 21 00 | lda #$0021 - 465 | 1 ASSD.DRIVER.S 339 | Code | 00 | 2 | 3 | 00/01B0 : 8D 0D 03 | sta errCODE - 466 | 1 ASSD.DRIVER.S 340 | Code | 00 | | 1 | 00/01B3 : 60 | rts - 467 | 1 ASSD.DRIVER.S 341 | Empty | 00 | | 0 | 00/01B4 | - 468 | 1 ASSD.DRIVER.S 342 | Code | 00 | | 1 | 00/01B4 : 0A | DControl2 asl - 469 | 1 ASSD.DRIVER.S 343 | Code | 00 | | 1 | 00/01B5 : AA | tax - 470 | 1 ASSD.DRIVER.S 344 | Code | 00 | | 2 | 00/01B6 : 64 0C | stz {$0C} - 471 | 1 ASSD.DRIVER.S 345 | Code | 00 | | 2 | 00/01B8 : 64 0E | stz {$0C}+2 - 472 | 1 ASSD.DRIVER.S 346 | Code | 00 | 2 | 3 | 00/01BA : FC BE 01 | jsr (tblCONTROL,x) - 473 | 1 ASSD.DRIVER.S 347 | Code | 00 | | 1 | 00/01BD : 60 | rts - 474 | 1 ASSD.DRIVER.S 348 | Empty | 00 | | 0 | 00/01BE | - 475 | 1 ASSD.DRIVER.S 349 | Data | 00 | 2 | 2 | 00/01BE : D2 01 | tblCONTROL da CNada ; 0 ResetDevice - 476 | 1 ASSD.DRIVER.S 350 | Data | 00 | 2 | 2 | 00/01C0 : D3 01 | da CFormatDevice ; 1 FormatDevice - 477 | 1 ASSD.DRIVER.S 351 | Data | 00 | 2 | 2 | 00/01C2 : D2 01 | da CNada ; 2 EjectMedium - 478 | 1 ASSD.DRIVER.S 352 | Data | 00 | 2 | 2 | 00/01C4 : FD 01 | da CSet ; 3 SetConfigParameters - 479 | 1 ASSD.DRIVER.S 353 | Data | 00 | 2 | 2 | 00/01C6 : FD 01 | da CSet ; 4 SetWaitStatus - 480 | 1 ASSD.DRIVER.S 354 | Data | 00 | 2 | 2 | 00/01C8 : DA 01 | da CSetFormatOptions; 5 SetFormatOptions - 481 | 1 ASSD.DRIVER.S 355 | Data | 00 | 2 | 2 | 00/01CA : D2 01 | da CNada ; 6 AssignPartitionOwner - 482 | 1 ASSD.DRIVER.S 356 | Data | 00 | 2 | 2 | 00/01CC : D2 01 | da CNada ; 7 ArmSignal - 483 | 1 ASSD.DRIVER.S 357 | Data | 00 | 2 | 2 | 00/01CE : D2 01 | da CNada ; 8 DisarmSignal - 484 | 1 ASSD.DRIVER.S 358 | Data | 00 | 2 | 2 | 00/01D0 : D2 01 | da CNada ; 9 SetPartitionMap - 485 | 1 ASSD.DRIVER.S 359 | Empty | 00 | | 0 | 00/01D2 | - 486 | 1 ASSD.DRIVER.S 360 | Code | 00 | | 1 | 00/01D2 : 60 | CNada rts - 487 | 1 ASSD.DRIVER.S 361 | Empty | 00 | | 0 | 00/01D3 | - 488 | 1 ASSD.DRIVER.S 362 | Comment | 00 | | 0 | 00/01D3 | *----------- FormatDevice - 489 | 1 ASSD.DRIVER.S 363 | Empty | 00 | | 0 | 00/01D3 | - 490 | 1 ASSD.DRIVER.S 364 | Empty | 00 | | 0 | 00/01D3 | CFormatDevice - 491 | 1 ASSD.DRIVER.S 365 | Code | 00 | 2 | 3 | 00/01D3 : AD 0B 03 | lda fgFORMAT ; if 1, the Format call - 492 | 1 ASSD.DRIVER.S 366 | Code | 00 | | 2 | 00/01D6 : D0 01 | bne CFormat1 ; was already called - 493 | 1 ASSD.DRIVER.S 367 | Code | 00 | | 1 | 00/01D8 : 60 | rts - 494 | 1 ASSD.DRIVER.S 368 | Empty | 00 | | 0 | 00/01D9 | - 495 | 1 ASSD.DRIVER.S 369 | Code | 00 | | 1 | 00/01D9 : 60 | CFormat1 rts - 496 | 1 ASSD.DRIVER.S 370 | Empty | 00 | | 0 | 00/01DA | - 497 | 1 ASSD.DRIVER.S 371 | Comment | 00 | | 0 | 00/01DA | *----------- SetFormatOptions - 498 | 1 ASSD.DRIVER.S 372 | Empty | 00 | | 0 | 00/01DA | - 499 | 1 ASSD.DRIVER.S 373 | Empty | 00 | | 0 | 00/01DA | CSetFormatOptions - 500 | 1 ASSD.DRIVER.S 374 | Code | 00 | | 2 | 00/01DA : A7 04 | lda [{$04}] - 501 | 1 ASSD.DRIVER.S 375 | Code | 00 | | 2 | 00/01DC : F0 1E | beq CSFO9 ; empty option is not ours - 502 | 1 ASSD.DRIVER.S 376 | Code | 00 | | 3 | 00/01DE : C9 03 00 | cmp #3 ; 1-2 only - 503 | 1 ASSD.DRIVER.S 377 | Code | 00 | | 2 | 00/01E1 : B0 19 | bcs CSFO9 - 504 | 1 ASSD.DRIVER.S 378 | Empty | 00 | | 0 | 00/01E3 | - 505 | 1 ASSD.DRIVER.S 379 | Code | 00 | | 3 | 00/01E3 : C9 01 00 | cmp #1 - 506 | 1 ASSD.DRIVER.S 380 | Code | 00 | | 2 | 00/01E6 : D0 08 | bne CSFOHFS - 507 | 1 ASSD.DRIVER.S 381 | Empty | 00 | | 0 | 00/01E8 | - 508 | 1 ASSD.DRIVER.S 382 | Code | 00 | | 3 | 00/01E8 : A2 FF FF | ldx #^{$ffffffff} ; it is 1, default values for HFS - 509 | 1 ASSD.DRIVER.S 383 | Code | 00 | | 3 | 00/01EB : A0 FF FF | ldy #{$ffffffff} - 510 | 1 ASSD.DRIVER.S 384 | Code | 00 | | 2 | 00/01EE : 80 06 | bra CSFOAll - 511 | 1 ASSD.DRIVER.S 385 | Empty | 00 | | 0 | 00/01F0 | - 512 | 1 ASSD.DRIVER.S 386 | Code | 00 | | 3 | 00/01F0 : A2 01 00 | CSFOHFS ldx #^{65536} ; it is 2, default values for ProDOS - 513 | 1 ASSD.DRIVER.S 387 | Code | 00 | | 3 | 00/01F3 : A0 00 00 | ldy #{65536} - 514 | 1 ASSD.DRIVER.S 388 | Empty | 00 | | 0 | 00/01F6 | - 515 | 1 ASSD.DRIVER.S 389 | Code | 00 | 2 | 3 | 00/01F6 : 8C 05 03 | CSFOAll sty fBlockCount - 516 | 1 ASSD.DRIVER.S 390 | Code | 00 | 2 | 3 | 00/01F9 : 8E 07 03 | stx fBlockCount+2 - 517 | 1 ASSD.DRIVER.S 391 | Empty | 00 | | 0 | 00/01FC | - 518 | 1 ASSD.DRIVER.S 392 | Code | 00 | | 1 | 00/01FC : 60 | CSFO9 rts - 519 | 1 ASSD.DRIVER.S 393 | Empty | 00 | | 0 | 00/01FD | - 520 | 1 ASSD.DRIVER.S 394 | Comment | 00 | | 0 | 00/01FD | *----------- SetConfigParameters / SetWaitStatus - 521 | 1 ASSD.DRIVER.S 395 | Empty | 00 | | 0 | 00/01FD | - 522 | 1 ASSD.DRIVER.S 396 | Code | 00 | | 2 | 00/01FD : A7 04 | CSet lda [{$04}] ; SetConfigParameters - 523 | 1 ASSD.DRIVER.S 397 | Code | 00 | | 2 | 00/01FF : D0 01 | bne CSetERR ; SetWaitStatus - 524 | 1 ASSD.DRIVER.S 398 | Code | 00 | | 1 | 00/0201 : 60 | rts - 525 | 1 ASSD.DRIVER.S 399 | Code | 00 | | 3 | 00/0202 : A9 22 00 | CSetERR lda #$0022 - 526 | 1 ASSD.DRIVER.S 400 | Code | 00 | 2 | 3 | 00/0205 : 8D 0D 03 | sta errCODE - 527 | 1 ASSD.DRIVER.S 401 | Code | 00 | | 1 | 00/0208 : 60 | rts - 528 | 1 ASSD.DRIVER.S 402 | Empty | 00 | | 0 | 00/0209 | - 529 | 1 ASSD.DRIVER.S 403 | Comment | 00 | | 0 | 00/0209 | *---------------------------- - 530 | 1 ASSD.DRIVER.S 404 | Empty | 00 | | 0 | 00/0209 | - 531 | 1 ASSD.DRIVER.S 405 | Comment | 00 | | 0 | 00/0209 | * Status flag of the current device - 532 | 1 ASSD.DRIVER.S 406 | Comment | 00 | | 0 | 00/0209 | * $0001: image has been switched (disk switched) - 533 | 1 ASSD.DRIVER.S 407 | Comment | 00 | | 0 | 00/0209 | * $0010: image is active (disk in drive) - 534 | 1 ASSD.DRIVER.S 408 | Comment | 00 | | 0 | 00/0209 | * $0100: image has been modified - 535 | 1 ASSD.DRIVER.S 409 | Empty | 00 | | 0 | 00/0209 | - 536 | 1 ASSD.DRIVER.S 410 | Comment | 00 | | 0 | 00/0209 | * - 537 | 1 ASSD.DRIVER.S 411 | Comment | 00 | | 0 | 00/0209 | * Checks everything is OK - 538 | 1 ASSD.DRIVER.S 412 | Comment | 00 | | 0 | 00/0209 | * - 539 | 1 ASSD.DRIVER.S 413 | Empty | 00 | | 0 | 00/0209 | - 540 | 1 ASSD.DRIVER.S 414 | Code | 00 | 2 | 3 | 00/0209 : 20 42 02 | doSETUP jsr checkSWITCHED - 541 | 1 ASSD.DRIVER.S 415 | Code | 00 | | 2 | 00/020C : 90 01 | bcc ds2 - 542 | 1 ASSD.DRIVER.S 416 | Code | 00 | | 1 | 00/020E : 60 | rts - 543 | 1 ASSD.DRIVER.S 417 | Empty | 00 | | 0 | 00/020F | - 544 | 1 ASSD.DRIVER.S 418 | Code | 00 | | 2 | 00/020F : A5 08 | ds2 lda {$08} ; nb of bytes to read - 545 | 1 ASSD.DRIVER.S 419 | Code | 00 | | 2 | 00/0211 : 05 0A | ora {$08}+2 - 546 | 1 ASSD.DRIVER.S 420 | Code | 00 | | 2 | 00/0213 : D0 08 | bne ds4 - 547 | 1 ASSD.DRIVER.S 421 | Empty | 00 | | 0 | 00/0215 | - 548 | 1 ASSD.DRIVER.S 422 | Code | 00 | | 3 | 00/0215 : A9 2C 00 | lda #$002C ; invalidByteCount - 549 | 1 ASSD.DRIVER.S 423 | Code | 00 | 2 | 3 | 00/0218 : 8D 0D 03 | sta errCODE - 550 | 1 ASSD.DRIVER.S 424 | Code | 00 | | 1 | 00/021B : 38 | sec - 551 | 1 ASSD.DRIVER.S 425 | Code | 00 | | 1 | 00/021C : 60 | rts - 552 | 1 ASSD.DRIVER.S 426 | Empty | 00 | | 0 | 00/021D | - 553 | 1 ASSD.DRIVER.S 427 | Comment | 00 | | 0 | 00/021D | * $0102_0400 = - 554 | 1 ASSD.DRIVER.S 428 | Empty | 00 | | 0 | 00/021D | - 555 | 1 ASSD.DRIVER.S 429 | Comment | 00 | | 0 | 00/021D | *--- requestcount : $0200 => 1 - 556 | 1 ASSD.DRIVER.S 430 | Comment | 00 | | 0 | 00/021D | *--- From a Block to a RAM address - 557 | 1 ASSD.DRIVER.S 431 | Empty | 00 | | 0 | 00/021D | - 558 | 1 ASSD.DRIVER.S 432 | Code | 00 | | 2 | 00/021D : A5 0B | ds4 lda {$08}+3 ; number of pages - 559 | 1 ASSD.DRIVER.S 433 | Code | 00 | | 3 | 00/021F : 29 FF 00 | and #$00ff ; to calculate - 560 | 1 ASSD.DRIVER.S 434 | Code | 00 | | 1 | 00/0222 : 4A | lsr - 561 | 1 ASSD.DRIVER.S 435 | Code | 00 | | 2 | 00/0223 : A5 09 | lda {$08}+1 ; $01020400 => $010204 => $8102 - 562 | 1 ASSD.DRIVER.S 436 | Code | 00 | | 1 | 00/0225 : 6A | ror - 563 | 1 ASSD.DRIVER.S 437 | Code | 00 | 2 | 3 | 00/0226 : 8D 13 03 | sta nbPAGES ; to calculate - 564 | 1 ASSD.DRIVER.S 438 | Empty | 00 | | 0 | 00/0229 | - 565 | 1 ASSD.DRIVER.S 439 | Code | 00 | | 2 | 00/0229 : A5 08 | lda {$08} ; multiple of $0200 - 566 | 1 ASSD.DRIVER.S 440 | Code | 00 | | 3 | 00/022B : 29 FF 01 | and #{512}-1 - 567 | 1 ASSD.DRIVER.S 441 | Code | 00 | | 2 | 00/022E : F0 08 | beq ds6 - 568 | 1 ASSD.DRIVER.S 442 | Empty | 00 | | 0 | 00/0230 | - 569 | 1 ASSD.DRIVER.S 443 | Code | 00 | | 3 | 00/0230 : A9 2D 00 | lda #$002D ; bad block count - 570 | 1 ASSD.DRIVER.S 444 | Code | 00 | 2 | 3 | 00/0233 : 8D 0D 03 | sta errCODE - 571 | 1 ASSD.DRIVER.S 445 | Code | 00 | | 1 | 00/0236 : 38 | sec - 572 | 1 ASSD.DRIVER.S 446 | Code | 00 | | 1 | 00/0237 : 60 | rts - 573 | 1 ASSD.DRIVER.S 447 | Empty | 00 | | 0 | 00/0238 | - 574 | 1 ASSD.DRIVER.S 448 | Comment | 00 | | 0 | 00/0238 | *--- Generic transfer now - 575 | 1 ASSD.DRIVER.S 449 | Empty | 00 | | 0 | 00/0238 | - 576 | 1 ASSD.DRIVER.S 450 | Code | 00 | | 2 | 00/0238 : A5 08 | ds6 lda {$08} ; assume transfer=request - 577 | 1 ASSD.DRIVER.S 451 | Code | 00 | | 2 | 00/023A : 85 0C | sta {$0C} - 578 | 1 ASSD.DRIVER.S 452 | Code | 00 | | 2 | 00/023C : A5 0A | lda {$08}+2 - 579 | 1 ASSD.DRIVER.S 453 | Code | 00 | | 2 | 00/023E : 85 0E | sta {$0C}+2 - 580 | 1 ASSD.DRIVER.S 454 | Empty | 00 | | 0 | 00/0240 | - 581 | 1 ASSD.DRIVER.S 455 | Code | 00 | | 1 | 00/0240 : 18 | clc - 582 | 1 ASSD.DRIVER.S 456 | Code | 00 | | 1 | 00/0241 : 60 | rts - 583 | 1 ASSD.DRIVER.S 457 | Empty | 00 | | 0 | 00/0242 | - 584 | 1 ASSD.DRIVER.S 458 | Comment | 00 | | 0 | 00/0242 | *---------------------------- - 585 | 1 ASSD.DRIVER.S 459 | Empty | 00 | | 0 | 00/0242 | - 586 | 1 ASSD.DRIVER.S 460 | Empty | 00 | | 0 | 00/0242 | checkSWITCHED - 587 | 1 ASSD.DRIVER.S 461 | Code | 00 | | 4 | 00/0242 : AF 12 00 E4 | ldal {$e40012} - 588 | 1 ASSD.DRIVER.S 462 | Code | 00 | | 3 | 00/0246 : 29 FF 00 | and #$ff - 589 | 1 ASSD.DRIVER.S 463 | Code | 00 | | 3 | 00/0249 : C9 01 00 | cmp #1 - 590 | 1 ASSD.DRIVER.S 464 | Code | 00 | | 2 | 00/024C : F0 0C | beq cs1 - 591 | 1 ASSD.DRIVER.S 465 | Empty | 00 | | 0 | 00/024E | - 592 | 1 ASSD.DRIVER.S 466 | Code | 00 | | 4 | 00/024E : 22 90 FC 01 | jsl {$01FC90} - 593 | 1 ASSD.DRIVER.S 467 | Empty | 00 | | 0 | 00/0252 | - 594 | 1 ASSD.DRIVER.S 468 | Comment | 00 | | 0 | 00/0252 | * lda #1 - 595 | 1 ASSD.DRIVER.S 469 | Comment | 00 | | 0 | 00/0252 | * sta fgSTARTED - 596 | 1 ASSD.DRIVER.S 470 | Code | 00 | | 3 | 00/0252 : A9 2E 00 | lda #$002e - 597 | 1 ASSD.DRIVER.S 471 | Code | 00 | 2 | 3 | 00/0255 : 8D 0D 03 | sta errCODE - 598 | 1 ASSD.DRIVER.S 472 | Code | 00 | | 1 | 00/0258 : 38 | sec - 599 | 1 ASSD.DRIVER.S 473 | Code | 00 | | 1 | 00/0259 : 60 | rts - 600 | 1 ASSD.DRIVER.S 474 | Empty | 00 | | 0 | 00/025A | - 601 | 1 ASSD.DRIVER.S 475 | Code | 00 | | 1 | 00/025A : 18 | cs1 clc - 602 | 1 ASSD.DRIVER.S 476 | Code | 00 | | 1 | 00/025B : 60 | rts - 603 | 1 ASSD.DRIVER.S 477 | Empty | 00 | | 0 | 00/025C | - 604 | 1 ASSD.DRIVER.S 478 | Comment | 00 | | 0 | 00/025C | *---------------------------- Check RAMDISK was init'ed - 605 | 1 ASSD.DRIVER.S 479 | Empty | 00 | | 0 | 00/025C | - 606 | 1 ASSD.DRIVER.S 480 | Macro | 00 | | 0 | 00/025C | myTASK PushLong #proVOLUME - 610 | 1 ASSD.DRIVER.S 480 | Code | 00 | 1 >>16 | 3 | 00/025C : F4 00 00 | PEA #^#proVOLUME - 617 | 1 ASSD.DRIVER.S 480 | Code | 00 | 2 | 3 | 00/025F : F4 87 02 | PEA #proVOLUME - 620 | 1 ASSD.DRIVER.S 481 | Macro | 00 | | 0 | 00/0262 | PushWord #$2008 - 622 | 1 ASSD.DRIVER.S 481 | Code | 00 | | 3 | 00/0262 : F4 08 20 | PEA #$2008 - 625 | 1 ASSD.DRIVER.S 482 | Code | 00 | | 4 | 00/0265 : 22 B0 00 E1 | jsl {$E100B0} - 626 | 1 ASSD.DRIVER.S 483 | Code | 00 | | 2 | 00/0269 : 90 1B | bcc myTASK1 - 627 | 1 ASSD.DRIVER.S 484 | Empty | 00 | | 0 | 00/026B | - 628 | 1 ASSD.DRIVER.S 485 | Macro | 00 | | 0 | 00/026B | PushLong #proFORMAT - 632 | 1 ASSD.DRIVER.S 485 | Code | 00 | 1 >>16 | 3 | 00/026B : F4 00 00 | PEA #^#proFORMAT - 639 | 1 ASSD.DRIVER.S 485 | Code | 00 | 2 | 3 | 00/026E : F4 91 02 | PEA #proFORMAT - 642 | 1 ASSD.DRIVER.S 486 | Macro | 00 | | 0 | 00/0271 | PushWord #$2024 - 644 | 1 ASSD.DRIVER.S 486 | Code | 00 | | 3 | 00/0271 : F4 24 20 | PEA #$2024 - 647 | 1 ASSD.DRIVER.S 487 | Code | 00 | | 4 | 00/0274 : 22 B0 00 E1 | jsl {$E100B0} - 648 | 1 ASSD.DRIVER.S 488 | Empty | 00 | | 0 | 00/0278 | - 649 | 1 ASSD.DRIVER.S 489 | Code | 00 | | 3 | 00/0278 : A9 01 00 | lda #1 ; tell the driver we've been there - 650 | 1 ASSD.DRIVER.S 490 | Code | 00 | 3 | 4 | 00/027B : 8F 0B 03 00 | stal fgFORMAT ; a format will now be a real format - 651 | 1 ASSD.DRIVER.S 491 | Empty | 00 | | 0 | 00/027F | - 652 | 1 ASSD.DRIVER.S 492 | Code | 00 | | 3 | 00/027F : A9 00 40 | lda #$4000 ; no more silent formatting - 653 | 1 ASSD.DRIVER.S 493 | Code | 00 | 3 | 4 | 00/0282 : 8F 9F 02 00 | stal proFORMAT+14 - 654 | 1 ASSD.DRIVER.S 494 | Empty | 00 | | 0 | 00/0286 | - 655 | 1 ASSD.DRIVER.S 495 | Code | 00 | | 1 | 00/0286 : 6B | myTASK1 rtl - 656 | 1 ASSD.DRIVER.S 496 | Empty | 00 | | 0 | 00/0287 | - 657 | 1 ASSD.DRIVER.S 497 | Comment | 00 | | 0 | 00/0287 | *---------------------------- GS/OS - 658 | 1 ASSD.DRIVER.S 498 | Empty | 00 | | 0 | 00/0287 | - 659 | 1 ASSD.DRIVER.S 499 | Data | 00 | | 2 | 00/0287 : 02 00 | proVOLUME dw 2 - 660 | 1 ASSD.DRIVER.S 500 | Data | 00 | 3 | 4 | 00/0289 : A1 02 00 00 | adrl proDEVNAME - 661 | 1 ASSD.DRIVER.S 501 | Data | 00 | 3 | 4 | 00/028D : B9 02 00 00 | adrl outVOLNAME - 662 | 1 ASSD.DRIVER.S 502 | Empty | 00 | | 0 | 00/0291 | - 663 | 1 ASSD.DRIVER.S 503 | Data | 00 | | 2 | 00/0291 : 05 00 | proFORMAT dw 5 ; +00 - 664 | 1 ASSD.DRIVER.S 504 | Data | 00 | 3 | 4 | 00/0293 : A1 02 00 00 | adrl proDEVNAME ; +02 - 665 | 1 ASSD.DRIVER.S 505 | Data | 00 | 3 | 4 | 00/0297 : AE 02 00 00 | adrl proVOLNAME ; +06 - 666 | 1 ASSD.DRIVER.S 506 | Data | 00 | | 2 | 00/029B : 06 00 | dw 6 ; +10 - 667 | 1 ASSD.DRIVER.S 507 | Data | 00 | | 2 | 00/029D : 06 00 | dw 6 ; +12 - Default is ProDOS - 668 | 1 ASSD.DRIVER.S 508 | Data | 00 | | 2 | 00/029F : 00 20 | dw $2000 ; +14 - Cant rename, can change selection, silent formatting - 669 | 1 ASSD.DRIVER.S 509 | Empty | 00 | | 0 | 00/02A1 | - 670 | 1 ASSD.DRIVER.S 510 | Data | 00 | | 13 | 00/02A1 : 0B 00 2E 41 | proDEVNAME strl '.ASSDDevice' - | | | | | | 53 53 44 44 | - | | | | | | 65 76 69 63 | - | | | | | | 65 | - 671 | 1 ASSD.DRIVER.S 511 | Data | 00 | | 11 | 00/02AE : 09 00 3A 41 | proVOLNAME strl ':AppleSSD' - | | | | | | 70 70 6C 65 | - | | | | | | 53 53 44 | - 672 | 1 ASSD.DRIVER.S 512 | Empty | 00 | | 0 | 00/02B9 | - 673 | 1 ASSD.DRIVER.S 513 | Data | 00 | | 2 | 00/02B9 : 24 00 | outVOLNAME dw 36 ; (word) output buffer - 674 | 1 ASSD.DRIVER.S 514 | Data | 00 | | 34 | 00/02BB : 00 00 00 00 | ds 34 ; (word) strl + (array) string + 16 | 1 ASSD.DRIVER.S 16 | Empty | 11 | | 0 | 00/0000 | + 17 | 1 ASSD.DRIVER.S 17 | Directive | 00 | | 0 | 00/0000 | mx %00 + 18 | 1 ASSD.DRIVER.S 18 | Directive | 00 | | 0 | 00/0000 | rel + 19 | 1 ASSD.DRIVER.S 19 | Directive | 00 | | 0 | 00/0000 | typ $bb + 20 | 1 ASSD.DRIVER.S 20 | Directive | 00 | | 0 | 00/0000 | dsk ASSDDriver + 21 | 1 ASSD.DRIVER.S 21 | Empty | 00 | | 0 | 00/0000 | + 22 | 1 ASSD.DRIVER.S 22 | Directive | 00 | | 0 | 00/0000 | use AS.EQUATES.S + 23 | 2 AS.EQUATES.S 1 | Comment | 00 | | 0 | 00/0000 | * + 24 | 2 AS.EQUATES.S 2 | Comment | 00 | | 0 | 00/0000 | * AppleSqueezer - Equates + 25 | 2 AS.EQUATES.S 3 | Comment | 00 | | 0 | 00/0000 | * + 26 | 2 AS.EQUATES.S 4 | Comment | 00 | | 0 | 00/0000 | * (c) 2023, Niek Van Suchtelen + 27 | 2 AS.EQUATES.S 5 | Comment | 00 | | 0 | 00/0000 | * (c) 2023, Brutal Deluxe Software + 28 | 2 AS.EQUATES.S 6 | Comment | 00 | | 0 | 00/0000 | * + 29 | 2 AS.EQUATES.S 7 | Empty | 00 | | 0 | 00/0000 | + 30 | 2 AS.EQUATES.S 8 | Comment | 00 | | 0 | 00/0000 | *----------------------------------- + 31 | 2 AS.EQUATES.S 9 | Comment | 00 | | 0 | 00/0000 | * APPLESQUEEZER EQUATES + 32 | 2 AS.EQUATES.S 10 | Comment | 00 | | 0 | 00/0000 | *----------------------------------- + 33 | 2 AS.EQUATES.S 11 | Empty | 00 | | 0 | 00/0000 | + 34 | 2 AS.EQUATES.S 12 | Comment | 00 | | 0 | 00/0000 | * data + 35 | 2 AS.EQUATES.S 13 | Comment | 00 | | 0 | 00/0000 | * bit 0: 1 if Acceralation is enabled + 36 | 2 AS.EQUATES.S 14 | Comment | 00 | | 0 | 00/0000 | * bit 1: 1 if Built-RAM is enabled + 37 | 2 AS.EQUATES.S 15 | Comment | 00 | | 0 | 00/0000 | * bit 2: 1 if Extra RAM is enabled + 38 | 2 AS.EQUATES.S 16 | Comment | 00 | | 0 | 00/0000 | * bit 3-7: values unknown + 39 | 2 AS.EQUATES.S 17 | Empty | 00 | | 0 | 00/0000 | + 40 | 2 AS.EQUATES.S 18 | Equivalence | 00 | | 0 | 00/0000 | FL_WRITE = $e20000 + 41 | 2 AS.EQUATES.S 19 | Equivalence | 00 | | 0 | 00/0000 | FL_READ_REQUEST = $e20002 + 42 | 2 AS.EQUATES.S 20 | Equivalence | 00 | | 0 | 00/0000 | FL_READ = $e20004 + 43 | 2 AS.EQUATES.S 21 | Equivalence | 00 | | 0 | 00/0000 | FL_CS = $e20006 + 44 | 2 AS.EQUATES.S 22 | Equivalence | 00 | | 0 | 00/0000 | FL_READY = $e20008 + 45 | 2 AS.EQUATES.S 23 | Equivalence | 00 | | 0 | 00/0000 | FL_IDLE = $e2000a + 46 | 2 AS.EQUATES.S 24 | Equivalence | 00 | | 0 | 00/0000 | FL_VERSION = $e2000c + 47 | 2 AS.EQUATES.S 25 | Empty | 00 | | 0 | 00/0000 | + 48 | 2 AS.EQUATES.S 26 | Equivalence | 00 | | 0 | 00/0000 | CMD_WRITE_ENABLE = $06 + 49 | 2 AS.EQUATES.S 27 | Equivalence | 00 | | 0 | 00/0000 | CMD_WRITE_DISABLE = $04 + 50 | 2 AS.EQUATES.S 28 | Equivalence | 00 | | 0 | 00/0000 | CMD_PAGE_PROGRAM = $02 + 51 | 2 AS.EQUATES.S 29 | Equivalence | 00 | | 0 | 00/0000 | CMD_SECTOR_ERASE = $d8 + 52 | 2 AS.EQUATES.S 30 | Equivalence | 00 | | 0 | 00/0000 | CMD_BULK_ERASE = $c7 + 53 | 2 AS.EQUATES.S 31 | Equivalence | 00 | | 0 | 00/0000 | CMD_READ_DATA_BYTES = $03 + 54 | 2 AS.EQUATES.S 32 | Equivalence | 00 | | 0 | 00/0000 | CMD_READ_STATUS_REGISTER = $05 + 55 | 2 AS.EQUATES.S 33 | Empty | 00 | | 0 | 00/0000 | + 56 | 2 AS.EQUATES.S 34 | Equivalence | 00 | | 0 | 00/0000 | exdram_address_set_main_bank = $e30000 ; 00..0E + 57 | 2 AS.EQUATES.S 35 | Equivalence | 00 | | 0 | 00/0000 | exdram_address_set_addr_low = $e30002 ; 00/00xx + 58 | 2 AS.EQUATES.S 36 | Equivalence | 00 | | 0 | 00/0000 | exdram_address_set_addr_high = $e30004 ; 00/xx00 + 59 | 2 AS.EQUATES.S 37 | Equivalence | 00 | | 0 | 00/0000 | exdram_address_set_addr_bank = $e30006 ; xx/0000 + 60 | 2 AS.EQUATES.S 38 | Equivalence | 00 | | 0 | 00/0000 | exdram_address_access = $e30008 ; R/W auto-increment to end of main bank + 61 | 2 AS.EQUATES.S 39 | Empty | 00 | | 0 | 00/0000 | + 62 | 2 AS.EQUATES.S 40 | Equivalence | 00 | | 0 | 00/0000 | SD_ADDRESS_SET_MSB = $e40000 + 63 | 2 AS.EQUATES.S 41 | Equivalence | 00 | | 0 | 00/0000 | SD_ADDRESS_SET_MSB_1 = $e40002 + 64 | 2 AS.EQUATES.S 42 | Equivalence | 00 | | 0 | 00/0000 | SD_ADDRESS_SET_MSB_2 = $e40004 + 65 | 2 AS.EQUATES.S 43 | Equivalence | 00 | | 0 | 00/0000 | SD_ADDRESS_SET_MSB_3 = $e40006 + 66 | 2 AS.EQUATES.S 44 | Equivalence | 00 | | 0 | 00/0000 | SD_START_READ = $e40008 ; starts reading the sector (if it was idle) + 67 | 2 AS.EQUATES.S 45 | Equivalence | 00 | | 0 | 00/0000 | SD_READ = $e4000a + 68 | 2 AS.EQUATES.S 46 | Equivalence | 00 | | 0 | 00/0000 | SD_START_WRITE = $e4000c ; starts writing the sector (if it was idle) + 69 | 2 AS.EQUATES.S 47 | Empty | 00 | | 0 | 00/0000 | + 70 | 2 AS.EQUATES.S 48 | Equivalence | 00 | | 0 | 00/0000 | STA_NOINIT = 1 ; Drive not initialized + 71 | 2 AS.EQUATES.S 49 | Equivalence | 00 | | 0 | 00/0000 | STA_NODISK = 2 ; No medium in the drive + 72 | 2 AS.EQUATES.S 50 | Empty | 00 | | 0 | 00/0000 | + 73 | 2 AS.EQUATES.S 51 | Equivalence | 00 | | 0 | 00/0000 | TRUE = 1 + 74 | 2 AS.EQUATES.S 52 | Equivalence | 00 | | 0 | 00/0000 | FALSE = 0 + 75 | 2 AS.EQUATES.S 53 | Empty | 00 | | 0 | 00/0000 | + 76 | 2 AS.EQUATES.S 54 | Equivalence | 00 | | 0 | 00/0000 | minVERSION = 7 ; minimum core version to handle the driver + 77 | 2 AS.EQUATES.S 55 | Empty | 00 | | 0 | 00/0000 | + 78 | 2 AS.EQUATES.S 56 | Comment | 00 | | 0 | 00/0000 | *--- Speed settings + 79 | 2 AS.EQUATES.S 57 | Comment | 00 | | 0 | 00/0000 | * From 233 (3 MHz) to 255 (full speed) + 80 | 2 AS.EQUATES.S 58 | Comment | 00 | | 0 | 00/0000 | * Setting is not preserved + 81 | 2 AS.EQUATES.S 59 | Empty | 00 | | 0 | 00/0000 | + 82 | 2 AS.EQUATES.S 60 | Equivalence | 00 | | 0 | 00/0000 | AS_SPEED = $e50000 ; just write a speed byte + 83 | 2 AS.EQUATES.S 61 | Empty | 00 | | 0 | 00/0000 | + 84 | 2 AS.EQUATES.S 62 | Comment | 00 | | 0 | 00/0000 | *----------------------------------- + 85 | 2 AS.EQUATES.S 63 | Comment | 00 | | 0 | 00/0000 | * GS/OS EQUATES + 86 | 2 AS.EQUATES.S 64 | Comment | 00 | | 0 | 00/0000 | *----------------------------------- + 87 | 2 AS.EQUATES.S 65 | Empty | 00 | | 0 | 00/0000 | + 88 | 2 AS.EQUATES.S 66 | Equivalence | 00 | | 0 | 00/0000 | GSOS2 = $E100B0 + 89 | 2 AS.EQUATES.S 67 | Equivalence | 00 | | 0 | 00/0000 | MOVE_INFO = $01FC70 + 90 | 2 AS.EQUATES.S 68 | Equivalence | 00 | | 0 | 00/0000 | SET_DISKSW = $01FC90 + 91 | 2 AS.EQUATES.S 69 | Empty | 00 | | 0 | 00/0000 | + 92 | 2 AS.EQUATES.S 70 | Equivalence | 00 | | 0 | 00/0000 | uncertainBlockCountBit = $8000 + 93 | 2 AS.EQUATES.S 71 | Equivalence | 00 | | 0 | 00/0000 | diskSwitchedBit = $0001 + 94 | 2 AS.EQUATES.S 72 | Equivalence | 00 | | 0 | 00/0000 | diskInDriveBit = $0010 + 95 | 2 AS.EQUATES.S 73 | Equivalence | 00 | | 0 | 00/0000 | diskModifyBit = $0100 + 96 | 2 AS.EQUATES.S 74 | Empty | 00 | | 0 | 00/0000 | + 97 | 2 AS.EQUATES.S 75 | Equivalence | 00 | | 0 | 00/0000 | dftHDD = $0013 ; device ID for HDD (generic) + 98 | 2 AS.EQUATES.S 76 | Empty | 00 | | 0 | 00/0000 | + 99 | 2 AS.EQUATES.S 77 | Equivalence | 00 | | 0 | 00/0000 | dchar = $08 + 100 | 2 AS.EQUATES.S 78 | Equivalence | 00 | | 0 | 00/0000 | dblockcount = $0a + 101 | 2 AS.EQUATES.S 79 | Equivalence | 00 | | 0 | 00/0000 | ddeviceid = $34 + 102 | 2 AS.EQUATES.S 80 | Equivalence | 00 | | 0 | 00/0000 | ddevnumber = $3e + 103 | 2 AS.EQUATES.S 81 | Empty | 00 | | 0 | 00/0000 | + 104 | 2 AS.EQUATES.S 82 | Comment | 00 | | 0 | 00/0000 | *----------------------------------- + 105 | 2 AS.EQUATES.S 83 | Comment | 00 | | 0 | 00/0000 | * AS DRIVER EQUATES + 106 | 2 AS.EQUATES.S 84 | Comment | 00 | | 0 | 00/0000 | *----------------------------------- + 107 | 2 AS.EQUATES.S 85 | Empty | 00 | | 0 | 00/0000 | + 108 | 2 AS.EQUATES.S 86 | Equivalence | 00 | | 0 | 00/0000 | maxIMAGES = 1 ; no more than N images + 109 | 2 AS.EQUATES.S 87 | Equivalence | 00 | | 0 | 00/0000 | blockSIZE = 512 ; ProDOS 8 block size + 110 | 2 AS.EQUATES.S 88 | Equivalence | 00 | | 0 | 00/0000 | maxBLOCKS = $ffffffff ; that is a huge number of blocks + 111 | 2 AS.EQUATES.S 89 | Empty | 00 | | 0 | 00/0000 | + 112 | 2 AS.EQUATES.S 90 | Comment | 00 | | 0 | 00/0000 | * 0 0000 => 0 0000 + 113 | 2 AS.EQUATES.S 91 | Comment | 00 | | 0 | 00/0000 | * B 1011 => B 1011 restartable + not speed dependent + 114 | 2 AS.EQUATES.S 92 | Comment | 00 | | 0 | 00/0000 | * A 1010 => E 1110 block device | write allowed | read allowed + 115 | 2 AS.EQUATES.S 93 | Comment | 00 | | 0 | 00/0000 | * 0 0000 => 8 1000 format allowed + 116 | 2 AS.EQUATES.S 94 | Empty | 00 | | 0 | 00/0000 | + 117 | 2 AS.EQUATES.S 95 | Equivalence | 00 | | 0 | 00/0000 | dftCHAR = $0BA8 ; default characteristics 0BA8 + 118 | 2 AS.EQUATES.S 96 | Empty | 00 | | 0 | 00/0000 | + 119 | 2 AS.EQUATES.S 97 | Equivalence | 00 | | 0 | 00/0000 | dftVERSION = $1000 ; v1 + 120 | 2 AS.EQUATES.S 98 | Empty | 00 | | 0 | 00/0000 | + 121 | 2 AS.EQUATES.S 99 | Comment | 00 | | 0 | 00/0000 | *----------------------------------- + 122 | 2 AS.EQUATES.S 100 | Comment | 00 | | 0 | 00/0000 | * GS/OS DIRECT PAGE + 123 | 2 AS.EQUATES.S 101 | Comment | 00 | | 0 | 00/0000 | *----------------------------------- + 124 | 2 AS.EQUATES.S 102 | Empty | 00 | | 0 | 00/0000 | + 125 | 2 AS.EQUATES.S 103 | Equivalence | 00 | | 0 | 00/0000 | deviceNum = $00 + 126 | 2 AS.EQUATES.S 104 | Equivalence | 00 | | 0 | 00/0000 | callNum = $02 + 127 | 2 AS.EQUATES.S 105 | Equivalence | 00 | | 0 | 00/0000 | bufferPtr = $04 + 128 | 2 AS.EQUATES.S 106 | Equivalence | 00 | | 0 | 00/0000 | statusListPtr = $04 + 129 | 2 AS.EQUATES.S 107 | Equivalence | 00 | | 0 | 00/0000 | controlListPtr = $04 + 130 | 2 AS.EQUATES.S 108 | Equivalence | 00 | | 0 | 00/0000 | requestCount = $08 + 131 | 2 AS.EQUATES.S 109 | Equivalence | 00 | | 0 | 00/0000 | transferCount = $0C + 132 | 2 AS.EQUATES.S 110 | Equivalence | 00 | | 0 | 00/0000 | blockNum = $10 + 133 | 2 AS.EQUATES.S 111 | Equivalence | 00 | | 0 | 00/0000 | blockSize = $14 + 134 | 2 AS.EQUATES.S 112 | Equivalence | 00 | | 0 | 00/0000 | FSTNum = $16 ; * + 135 | 2 AS.EQUATES.S 113 | Equivalence | 00 | | 0 | 00/0000 | statusCode = $16 ; * + 136 | 2 AS.EQUATES.S 114 | Equivalence | 00 | | 0 | 00/0000 | controlCode = $16 ; * + 137 | 2 AS.EQUATES.S 115 | Equivalence | 00 | | 0 | 00/0000 | volumeID = $18 + 138 | 2 AS.EQUATES.S 116 | Equivalence | 00 | | 0 | 00/0000 | cachePriority = $1A + 139 | 2 AS.EQUATES.S 117 | Equivalence | 00 | | 0 | 00/0000 | cachePointer = $1C + 140 | 2 AS.EQUATES.S 118 | Equivalence | 00 | | 0 | 00/0000 | dibPointer = $20 + 141 | 2 AS.EQUATES.S 119 | Empty | 00 | | 0 | 00/0000 | + 142 | 2 AS.EQUATES.S 120 | Equivalence | 00 | | 0 | 00/0000 | workSpace = $6a ; Thank you common.equ.src + 143 | 2 AS.EQUATES.S 121 | Empty | 00 | | 0 | 00/0000 | + 144 | 2 AS.EQUATES.S 122 | Empty | 00 | | 0 | 00/0000 | + 145 | 1 ASSD.DRIVER.S 23 | Empty | 00 | | 0 | 00/0000 | + 146 | 1 ASSD.DRIVER.S 24 | Directive | 00 | | 0 | 00/0000 | use 4/Util.Macs + 147 | 1 ASSD.DRIVER.S 25 | Empty | 00 | | 0 | 00/0000 | + 148 | 1 ASSD.DRIVER.S 26 | Comment | 00 | | 0 | 00/0000 | *----------------------------------------------- + 149 | 1 ASSD.DRIVER.S 27 | Empty | 00 | | 0 | 00/0000 | + 150 | 1 ASSD.DRIVER.S 28 | Comment | 00 | | 0 | 00/0000 | * + 151 | 1 ASSD.DRIVER.S 29 | Comment | 00 | | 0 | 00/0000 | * Entry point + 152 | 1 ASSD.DRIVER.S 30 | Comment | 00 | | 0 | 00/0000 | * + 153 | 1 ASSD.DRIVER.S 31 | Empty | 00 | | 0 | 00/0000 | + 154 | 1 ASSD.DRIVER.S 32 | Data | 00 | | 2 | 00/0000 : 0B 02 | RAMDisk da MyDIB-RAMDisk ; offset to 1st DIB + 155 | 1 ASSD.DRIVER.S 33 | Data | 00 | | 2 | 00/0002 : 01 00 | dw {1} ; number of devices + 156 | 1 ASSD.DRIVER.S 34 | Data | 00 | | 2 | 00/0004 : 00 00 | dw $0000 ; no configuration list + 157 | 1 ASSD.DRIVER.S 35 | Empty | 00 | | 0 | 00/0006 | + 158 | 1 ASSD.DRIVER.S 36 | Comment | 00 | | 0 | 00/0006 | * + 159 | 1 ASSD.DRIVER.S 37 | Comment | 00 | | 0 | 00/0006 | * Dispatch routine + 160 | 1 ASSD.DRIVER.S 38 | Comment | 00 | | 0 | 00/0006 | * + 161 | 1 ASSD.DRIVER.S 39 | Empty | 00 | | 0 | 00/0006 | + 162 | 1 ASSD.DRIVER.S 40 | Code | 00 | | 1 | 00/0006 : 4B | entryPOINT phk ; Dispatch + 163 | 1 ASSD.DRIVER.S 41 | Code | 00 | | 1 | 00/0007 : AB | plb + 164 | 1 ASSD.DRIVER.S 42 | Code | 00 | | 3 | 00/0008 : C9 09 00 | cmp #$0009 + 165 | 1 ASSD.DRIVER.S 43 | Code | 00 | | 2 | 00/000B : 90 05 | bcc L0012 + 166 | 1 ASSD.DRIVER.S 44 | Code | 00 | | 3 | 00/000D : A9 20 00 | lda #$0020 + 167 | 1 ASSD.DRIVER.S 45 | Code | 00 | | 2 | 00/0010 : 80 0B | bra L001D + 168 | 1 ASSD.DRIVER.S 46 | Code | 00 | | 1 | 00/0012 : 0A | L0012 asl + 169 | 1 ASSD.DRIVER.S 47 | Code | 00 | | 1 | 00/0013 : AA | tax + 170 | 1 ASSD.DRIVER.S 48 | Code | 00 | 2 | 3 | 00/0014 : 9C 03 02 | stz errCODE + 171 | 1 ASSD.DRIVER.S 49 | Code | 00 | 2 | 3 | 00/0017 : FC 21 00 | jsr (tblDISPATCH,x) + 172 | 1 ASSD.DRIVER.S 50 | Code | 00 | 2 | 3 | 00/001A : AD 03 02 | lda errCODE + 173 | 1 ASSD.DRIVER.S 51 | Code | 00 | | 3 | 00/001D : C9 01 00 | L001D cmp #$0001 + 174 | 1 ASSD.DRIVER.S 52 | Code | 00 | | 1 | 00/0020 : 6B | rtl + 175 | 1 ASSD.DRIVER.S 53 | Empty | 00 | | 0 | 00/0021 | + 176 | 1 ASSD.DRIVER.S 54 | Data | 00 | 2 | 2 | 00/0021 : 33 00 | tblDISPATCH da DStartup ; Driver_Startup + 177 | 1 ASSD.DRIVER.S 55 | Data | 00 | 2 | 2 | 00/0023 : 55 00 | da DOpen ; Driver_Open + 178 | 1 ASSD.DRIVER.S 56 | Data | 00 | 2 | 2 | 00/0025 : 56 00 | da DRead ; Driver_Read + 179 | 1 ASSD.DRIVER.S 57 | Data | 00 | 2 | 2 | 00/0027 : C5 00 | da DWrite ; Driver_Write + 180 | 1 ASSD.DRIVER.S 58 | Data | 00 | 2 | 2 | 00/0029 : 55 00 | da DClose ; Driver_Close + 181 | 1 ASSD.DRIVER.S 59 | Data | 00 | 2 | 2 | 00/002B : 12 01 | da DStatus ; Driver_Status + 182 | 1 ASSD.DRIVER.S 60 | Data | 00 | 2 | 2 | 00/002D : 70 01 | da DControl ; Driver_Control + 183 | 1 ASSD.DRIVER.S 61 | Data | 00 | 2 | 2 | 00/002F : 55 00 | da DFlush ; Driver_Flush + 184 | 1 ASSD.DRIVER.S 62 | Data | 00 | 2 | 2 | 00/0031 : 52 00 | da DShutdown ; Driver_Shutdown + 185 | 1 ASSD.DRIVER.S 63 | Empty | 00 | | 0 | 00/0033 | + 186 | 1 ASSD.DRIVER.S 64 | Comment | 00 | | 0 | 00/0033 | * + 187 | 1 ASSD.DRIVER.S 65 | Comment | 00 | | 0 | 00/0033 | * Driver_Startup + 188 | 1 ASSD.DRIVER.S 66 | Comment | 00 | | 0 | 00/0033 | * + 189 | 1 ASSD.DRIVER.S 67 | Empty | 00 | | 0 | 00/0033 | + 190 | 1 ASSD.DRIVER.S 68 | Empty | 00 | | 0 | 00/0033 | DStartup + 191 | 1 ASSD.DRIVER.S 69 | Code | 00 | | 4 | 00/0033 : AF 0A 00 E2 | ldal {$e2000a} + 192 | 1 ASSD.DRIVER.S 70 | Code | 00 | | 3 | 00/0037 : 29 FF 00 | and #$ff + 193 | 1 ASSD.DRIVER.S 71 | Code | 00 | | 3 | 00/003A : C9 01 00 | cmp #$01 + 194 | 1 ASSD.DRIVER.S 72 | Code | 00 | | 2 | 00/003D : D0 13 | bne DShutdown ; no AS found + 195 | 1 ASSD.DRIVER.S 73 | Empty | 00 | | 0 | 00/003F | + 196 | 1 ASSD.DRIVER.S 74 | Code | 00 | | 4 | 00/003F : AF 0C 00 E2 | ldal {$e2000c} + 197 | 1 ASSD.DRIVER.S 75 | Code | 00 | | 3 | 00/0043 : 29 FF 00 | and #$ff + 198 | 1 ASSD.DRIVER.S 76 | Code | 00 | | 3 | 00/0046 : C9 07 00 | cmp #{7} + 199 | 1 ASSD.DRIVER.S 77 | Code | 00 | | 2 | 00/0049 : 90 07 | bcc DShutdown ; no minimum version + 200 | 1 ASSD.DRIVER.S 78 | Empty | 00 | | 0 | 00/004B | + 201 | 1 ASSD.DRIVER.S 79 | Code | 00 | | 3 | 00/004B : A9 01 00 | lda #1 ; we're on + 202 | 1 ASSD.DRIVER.S 80 | Code | 00 | 2 | 3 | 00/004E : 8D 01 02 | sta fgSTARTED + 203 | 1 ASSD.DRIVER.S 81 | Code | 00 | | 1 | 00/0051 : 60 | rts + 204 | 1 ASSD.DRIVER.S 82 | Empty | 00 | | 0 | 00/0052 | + 205 | 1 ASSD.DRIVER.S 83 | Comment | 00 | | 0 | 00/0052 | * + 206 | 1 ASSD.DRIVER.S 84 | Comment | 00 | | 0 | 00/0052 | * Driver_Shutdown + 207 | 1 ASSD.DRIVER.S 85 | Comment | 00 | | 0 | 00/0052 | * + 208 | 1 ASSD.DRIVER.S 86 | Empty | 00 | | 0 | 00/0052 | + 209 | 1 ASSD.DRIVER.S 87 | Code | 00 | 2 | 3 | 00/0052 : 9C 01 02 | DShutdown stz fgSTARTED + 210 | 1 ASSD.DRIVER.S 88 | Empty | 00 | | 0 | 00/0055 | + 211 | 1 ASSD.DRIVER.S 89 | Comment | 00 | | 0 | 00/0055 | * + 212 | 1 ASSD.DRIVER.S 90 | Comment | 00 | | 0 | 00/0055 | * Driver_Open + 213 | 1 ASSD.DRIVER.S 91 | Comment | 00 | | 0 | 00/0055 | * Driver_Close + 214 | 1 ASSD.DRIVER.S 92 | Comment | 00 | | 0 | 00/0055 | * Driver_Flush + 215 | 1 ASSD.DRIVER.S 93 | Comment | 00 | | 0 | 00/0055 | * + 216 | 1 ASSD.DRIVER.S 94 | Empty | 00 | | 0 | 00/0055 | + 217 | 1 ASSD.DRIVER.S 95 | Empty | 00 | | 0 | 00/0055 | DOpen ; Driver_Open + 218 | 1 ASSD.DRIVER.S 96 | Empty | 00 | | 0 | 00/0055 | DClose ; Driver_Close + 219 | 1 ASSD.DRIVER.S 97 | Empty | 00 | | 0 | 00/0055 | DFlush ; Driver_Flush + 220 | 1 ASSD.DRIVER.S 98 | Code | 00 | | 1 | 00/0055 : 60 | rts + 221 | 1 ASSD.DRIVER.S 99 | Empty | 00 | | 0 | 00/0056 | + 222 | 1 ASSD.DRIVER.S 100 | Comment | 00 | | 0 | 00/0056 | * + 223 | 1 ASSD.DRIVER.S 101 | Comment | 00 | | 0 | 00/0056 | * Driver_Read + 224 | 1 ASSD.DRIVER.S 102 | Comment | 00 | | 0 | 00/0056 | * + 225 | 1 ASSD.DRIVER.S 103 | Empty | 00 | | 0 | 00/0056 | + 226 | 1 ASSD.DRIVER.S 104 | Code | 00 | 2 | 3 | 00/0056 : 20 AF 01 | DRead jsr doSETUP + 227 | 1 ASSD.DRIVER.S 105 | Code | 00 | | 2 | 00/0059 : 90 03 | bcc dr1 + 228 | 1 ASSD.DRIVER.S 106 | Empty | 00 | | 0 | 00/005B | + 229 | 1 ASSD.DRIVER.S 107 | Code | 00 | | 2 | 00/005B : 00 BD | brk $bd + 230 | 1 ASSD.DRIVER.S 108 | Code | 00 | | 1 | 00/005D : 60 | rts + 231 | 1 ASSD.DRIVER.S 109 | Empty | 00 | | 0 | 00/005E | + 232 | 1 ASSD.DRIVER.S 110 | Comment | 00 | | 0 | 00/005E | *--- The AS magic is here + 233 | 1 ASSD.DRIVER.S 111 | Empty | 00 | | 0 | 00/005E | + 234 | 1 ASSD.DRIVER.S 112 | Code | 00 | | 2 | 00/005E : D4 6C | dr1 pei {$6a}+2 + 235 | 1 ASSD.DRIVER.S 113 | Code | 00 | | 2 | 00/0060 : D4 6A | pei {$6a} + 236 | 1 ASSD.DRIVER.S 114 | Comment | 00 | | 0 | 00/0062 | * pei bufferPtr+1 ; save pointer + 237 | 1 ASSD.DRIVER.S 115 | Empty | 00 | | 0 | 00/0062 | + 238 | 1 ASSD.DRIVER.S 116 | Comment | 00 | | 0 | 00/0062 | * sep #$20 + 239 | 1 ASSD.DRIVER.S 117 | Comment | 00 | | 0 | 00/0062 | * lda blockNum+3 + 240 | 1 ASSD.DRIVER.S 118 | Comment | 00 | | 0 | 00/0062 | * stal SD_ADDRESS_SET_MSB + 241 | 1 ASSD.DRIVER.S 119 | Comment | 00 | | 0 | 00/0062 | * lda blockNum+2 + 242 | 1 ASSD.DRIVER.S 120 | Comment | 00 | | 0 | 00/0062 | * stal SD_ADDRESS_SET_MSB_1 + 243 | 1 ASSD.DRIVER.S 121 | Comment | 00 | | 0 | 00/0062 | * lda blockNum+1 + 244 | 1 ASSD.DRIVER.S 122 | Comment | 00 | | 0 | 00/0062 | * stal SD_ADDRESS_SET_MSB_2 + 245 | 1 ASSD.DRIVER.S 123 | Comment | 00 | | 0 | 00/0062 | * lda blockNum + 246 | 1 ASSD.DRIVER.S 124 | Comment | 00 | | 0 | 00/0062 | * stal SD_ADDRESS_SET_MSB_3 + 247 | 1 ASSD.DRIVER.S 125 | Empty | 00 | | 0 | 00/0062 | + 248 | 1 ASSD.DRIVER.S 126 | Code | 00 | | 3 | 00/0062 : A9 E4 00 | lda #^{$e40000} ; #$00e4 + 249 | 1 ASSD.DRIVER.S 127 | Code | 00 | | 2 | 00/0065 : 85 6C | sta {$6a}+2 + 250 | 1 ASSD.DRIVER.S 128 | Empty | 00 | | 0 | 00/0067 | + 251 | 1 ASSD.DRIVER.S 129 | Code | 00 | | 3 | 00/0067 : A9 00 00 | lda #{$e40000} ; $00 + 252 | 1 ASSD.DRIVER.S 130 | Code | 00 | | 2 | 00/006A : 85 6A | sta {$6a} + 253 | 1 ASSD.DRIVER.S 131 | Code | 10 | | 2 | 00/006C : E2 20 | sep #$20 + 254 | 1 ASSD.DRIVER.S 132 | Code | 10 | | 2 | 00/006E : A5 13 | lda {$10}+3 + 255 | 1 ASSD.DRIVER.S 133 | Code | 10 | | 2 | 00/0070 : 87 6A | sta [{$6a}] + 256 | 1 ASSD.DRIVER.S 134 | Code | 00 | | 2 | 00/0072 : C2 20 | rep #$20 + 257 | 1 ASSD.DRIVER.S 135 | Empty | 00 | | 0 | 00/0074 | + 258 | 1 ASSD.DRIVER.S 136 | Code | 00 | | 3 | 00/0074 : A9 02 00 | lda #{$e40002} ; $02 + 259 | 1 ASSD.DRIVER.S 137 | Code | 00 | | 2 | 00/0077 : 85 6A | sta {$6a} + 260 | 1 ASSD.DRIVER.S 138 | Code | 10 | | 2 | 00/0079 : E2 20 | sep #$20 + 261 | 1 ASSD.DRIVER.S 139 | Code | 10 | | 2 | 00/007B : A5 12 | lda {$10}+2 + 262 | 1 ASSD.DRIVER.S 140 | Code | 10 | | 2 | 00/007D : 87 6A | sta [{$6a}] + 263 | 1 ASSD.DRIVER.S 141 | Code | 00 | | 2 | 00/007F : C2 20 | rep #$20 + 264 | 1 ASSD.DRIVER.S 142 | Empty | 00 | | 0 | 00/0081 | + 265 | 1 ASSD.DRIVER.S 143 | Code | 00 | | 3 | 00/0081 : A9 04 00 | lda #{$e40004} ; $04 + 266 | 1 ASSD.DRIVER.S 144 | Code | 00 | | 2 | 00/0084 : 85 6A | sta {$6a} + 267 | 1 ASSD.DRIVER.S 145 | Code | 10 | | 2 | 00/0086 : E2 20 | sep #$20 + 268 | 1 ASSD.DRIVER.S 146 | Code | 10 | | 2 | 00/0088 : A5 11 | lda {$10}+1 + 269 | 1 ASSD.DRIVER.S 147 | Code | 10 | | 2 | 00/008A : 87 6A | sta [{$6a}] + 270 | 1 ASSD.DRIVER.S 148 | Code | 00 | | 2 | 00/008C : C2 20 | rep #$20 + 271 | 1 ASSD.DRIVER.S 149 | Empty | 00 | | 0 | 00/008E | + 272 | 1 ASSD.DRIVER.S 150 | Code | 00 | | 3 | 00/008E : A9 06 00 | lda #{$e40006} ; $06 + 273 | 1 ASSD.DRIVER.S 151 | Code | 00 | | 2 | 00/0091 : 85 6A | sta {$6a} + 274 | 1 ASSD.DRIVER.S 152 | Code | 10 | | 2 | 00/0093 : E2 20 | sep #$20 + 275 | 1 ASSD.DRIVER.S 153 | Code | 10 | | 2 | 00/0095 : A5 10 | lda {$10} + 276 | 1 ASSD.DRIVER.S 154 | Code | 10 | | 2 | 00/0097 : 87 6A | sta [{$6a}] + 277 | 1 ASSD.DRIVER.S 155 | Code | 00 | | 2 | 00/0099 : C2 20 | rep #$20 + 278 | 1 ASSD.DRIVER.S 156 | Empty | 00 | | 0 | 00/009B | + 279 | 1 ASSD.DRIVER.S 157 | Comment | 00 | | 0 | 00/009B | * lda #1 + 280 | 1 ASSD.DRIVER.S 158 | Comment | 00 | | 0 | 00/009B | * stal SD_START_READ + 281 | 1 ASSD.DRIVER.S 159 | Empty | 00 | | 0 | 00/009B | + 282 | 1 ASSD.DRIVER.S 160 | Code | 00 | | 3 | 00/009B : A9 08 00 | lda #{$e40008} ; $08 + 283 | 1 ASSD.DRIVER.S 161 | Code | 00 | | 2 | 00/009E : 85 6A | sta {$6a} + 284 | 1 ASSD.DRIVER.S 162 | Code | 10 | | 2 | 00/00A0 : E2 20 | sep #$20 + 285 | 1 ASSD.DRIVER.S 163 | Code | 10 | | 2 | 00/00A2 : A9 01 | lda #1 + 286 | 1 ASSD.DRIVER.S 164 | Code | 10 | | 2 | 00/00A4 : 87 6A | sta [{$6a}] + 287 | 1 ASSD.DRIVER.S 165 | Code | 00 | | 2 | 00/00A6 : C2 20 | rep #$20 + 288 | 1 ASSD.DRIVER.S 166 | Empty | 00 | | 0 | 00/00A8 | + 289 | 1 ASSD.DRIVER.S 167 | Code | 00 | | 3 | 00/00A8 : A9 0A 00 | lda #{$e4000a} ; $0a + 290 | 1 ASSD.DRIVER.S 168 | Code | 00 | | 2 | 00/00AB : 85 6A | sta {$6a} + 291 | 1 ASSD.DRIVER.S 169 | Code | 10 | | 2 | 00/00AD : E2 20 | sep #$20 + 292 | 1 ASSD.DRIVER.S 170 | Code | 10 | | 3 | 00/00AF : A0 00 00 | ldy #0 + 293 | 1 ASSD.DRIVER.S 171 | Code | 10 | | 2 | 00/00B2 : A7 6A | ozunid_1 lda [{$6a}] + 294 | 1 ASSD.DRIVER.S 172 | Code | 10 | | 2 | 00/00B4 : 97 04 | sta [{$04}],y + 295 | 1 ASSD.DRIVER.S 173 | Code | 10 | | 1 | 00/00B6 : C8 | iny + 296 | 1 ASSD.DRIVER.S 174 | Code | 10 | | 3 | 00/00B7 : C0 00 02 | cpy #512 + 297 | 1 ASSD.DRIVER.S 175 | Code | 10 | | 2 | 00/00BA : D0 F6 | bne ozunid_1 + 298 | 1 ASSD.DRIVER.S 176 | Code | 00 | | 2 | 00/00BC : C2 20 | rep #$20 + 299 | 1 ASSD.DRIVER.S 177 | Empty | 00 | | 0 | 00/00BE | + 300 | 1 ASSD.DRIVER.S 178 | Comment | 00 | | 0 | 00/00BE | * ldx nbPAGES ; number of 512-byte pages to copy + 301 | 1 ASSD.DRIVER.S 179 | Comment | 00 | | 0 | 00/00BE | *dr2 ldy #0 ; read one block + 302 | 1 ASSD.DRIVER.S 180 | Comment | 00 | | 0 | 00/00BE | * sep #$20 + 303 | 1 ASSD.DRIVER.S 181 | Comment | 00 | | 0 | 00/00BE | *]lp ldal SD_READ + 304 | 1 ASSD.DRIVER.S 182 | Comment | 00 | | 0 | 00/00BE | * sta [bufferPtr],y + 305 | 1 ASSD.DRIVER.S 183 | Comment | 00 | | 0 | 00/00BE | * iny + 306 | 1 ASSD.DRIVER.S 184 | Comment | 00 | | 0 | 00/00BE | * cpy #blockSIZE + 307 | 1 ASSD.DRIVER.S 185 | Comment | 00 | | 0 | 00/00BE | * bcc ]lp + 308 | 1 ASSD.DRIVER.S 186 | Comment | 00 | | 0 | 00/00BE | * + 309 | 1 ASSD.DRIVER.S 187 | Comment | 00 | | 0 | 00/00BE | * rep #$20 ; move destination pointer + 310 | 1 ASSD.DRIVER.S 188 | Comment | 00 | | 0 | 00/00BE | * lda bufferPtr+1 + 311 | 1 ASSD.DRIVER.S 189 | Comment | 00 | | 0 | 00/00BE | * clc + 312 | 1 ASSD.DRIVER.S 190 | Comment | 00 | | 0 | 00/00BE | * adc #>blockSIZE ; rwBlockSize+1 + 313 | 1 ASSD.DRIVER.S 191 | Comment | 00 | | 0 | 00/00BE | * sta bufferPtr+1 + 314 | 1 ASSD.DRIVER.S 192 | Comment | 00 | | 0 | 00/00BE | * + 315 | 1 ASSD.DRIVER.S 193 | Comment | 00 | | 0 | 00/00BE | * dex ; next block + 316 | 1 ASSD.DRIVER.S 194 | Comment | 00 | | 0 | 00/00BE | * bne dr2 + 317 | 1 ASSD.DRIVER.S 195 | Empty | 00 | | 0 | 00/00BE | + 318 | 1 ASSD.DRIVER.S 196 | Comment | 00 | | 0 | 00/00BE | * pla ; restore pointer + 319 | 1 ASSD.DRIVER.S 197 | Comment | 00 | | 0 | 00/00BE | * sta bufferPtr+1 + 320 | 1 ASSD.DRIVER.S 198 | Code | 00 | | 1 | 00/00BE : 68 | pla + 321 | 1 ASSD.DRIVER.S 199 | Code | 00 | | 2 | 00/00BF : 85 6A | sta {$6a} + 322 | 1 ASSD.DRIVER.S 200 | Code | 00 | | 1 | 00/00C1 : 68 | pla + 323 | 1 ASSD.DRIVER.S 201 | Code | 00 | | 2 | 00/00C2 : 85 6C | sta {$6a}+2 + 324 | 1 ASSD.DRIVER.S 202 | Code | 00 | | 1 | 00/00C4 : 60 | rts + 325 | 1 ASSD.DRIVER.S 203 | Empty | 00 | | 0 | 00/00C5 | + 326 | 1 ASSD.DRIVER.S 204 | Comment | 00 | | 0 | 00/00C5 | *--- The AS magic ends here + 327 | 1 ASSD.DRIVER.S 205 | Empty | 00 | | 0 | 00/00C5 | + 328 | 1 ASSD.DRIVER.S 206 | Comment | 00 | | 0 | 00/00C5 | * + 329 | 1 ASSD.DRIVER.S 207 | Comment | 00 | | 0 | 00/00C5 | * Driver_Write + 330 | 1 ASSD.DRIVER.S 208 | Comment | 00 | | 0 | 00/00C5 | * + 331 | 1 ASSD.DRIVER.S 209 | Empty | 00 | | 0 | 00/00C5 | + 332 | 1 ASSD.DRIVER.S 210 | Code | 00 | 2 | 3 | 00/00C5 : 20 AF 01 | DWrite jsr doSETUP + 333 | 1 ASSD.DRIVER.S 211 | Code | 00 | | 2 | 00/00C8 : 90 01 | bcc dw1 + 334 | 1 ASSD.DRIVER.S 212 | Code | 00 | | 1 | 00/00CA : 60 | rts + 335 | 1 ASSD.DRIVER.S 213 | Empty | 00 | | 0 | 00/00CB | + 336 | 1 ASSD.DRIVER.S 214 | Comment | 00 | | 0 | 00/00CB | *--- The AS magic is here + 337 | 1 ASSD.DRIVER.S 215 | Empty | 00 | | 0 | 00/00CB | + 338 | 1 ASSD.DRIVER.S 216 | Code | 00 | | 2 | 00/00CB : D4 05 | dw1 pei {$04}+1 ; save pointer + 339 | 1 ASSD.DRIVER.S 217 | Empty | 00 | | 0 | 00/00CD | + 340 | 1 ASSD.DRIVER.S 218 | Code | 10 | | 2 | 00/00CD : E2 20 | sep #$20 + 341 | 1 ASSD.DRIVER.S 219 | Code | 10 | | 2 | 00/00CF : A5 13 | lda {$10}+3 + 342 | 1 ASSD.DRIVER.S 220 | Code | 10 | | 4 | 00/00D1 : 8F 00 00 E4 | stal {$e40000} + 343 | 1 ASSD.DRIVER.S 221 | Code | 10 | | 2 | 00/00D5 : A5 12 | lda {$10}+2 + 344 | 1 ASSD.DRIVER.S 222 | Code | 10 | | 4 | 00/00D7 : 8F 02 00 E4 | stal {$e40002} + 345 | 1 ASSD.DRIVER.S 223 | Code | 10 | | 2 | 00/00DB : A5 11 | lda {$10}+1 + 346 | 1 ASSD.DRIVER.S 224 | Code | 10 | | 4 | 00/00DD : 8F 04 00 E4 | stal {$e40004} + 347 | 1 ASSD.DRIVER.S 225 | Code | 10 | | 2 | 00/00E1 : A5 10 | lda {$10} + 348 | 1 ASSD.DRIVER.S 226 | Code | 10 | | 4 | 00/00E3 : 8F 06 00 E4 | stal {$e40006} + 349 | 1 ASSD.DRIVER.S 227 | Empty | 10 | | 0 | 00/00E7 | + 350 | 1 ASSD.DRIVER.S 228 | Code | 10 | | 2 | 00/00E7 : A9 01 | lda #1 + 351 | 1 ASSD.DRIVER.S 229 | Code | 10 | | 4 | 00/00E9 : 8F 0C 00 E4 | stal {$e4000c} + 352 | 1 ASSD.DRIVER.S 230 | Empty | 10 | | 0 | 00/00ED | + 353 | 1 ASSD.DRIVER.S 231 | Code | 10 | 2 | 3 | 00/00ED : AE 09 02 | ldx nbPAGES ; number of 512-byte pages to copy + 354 | 1 ASSD.DRIVER.S 232 | Code | 10 | | 3 | 00/00F0 : A0 00 00 | dw2 ldy #0 ; read one block + 355 | 1 ASSD.DRIVER.S 233 | Code | 10 | | 2 | 00/00F3 : E2 20 | sep #$20 + 356 | 1 ASSD.DRIVER.S 234 | Code | 10 | | 2 | 00/00F5 : B7 04 | ozunid_2 lda [{$04}],y + 357 | 1 ASSD.DRIVER.S 235 | Code | 10 | | 4 | 00/00F7 : 8F 0A 00 E4 | stal {$e4000a} + 358 | 1 ASSD.DRIVER.S 236 | Code | 10 | | 1 | 00/00FB : C8 | iny + 359 | 1 ASSD.DRIVER.S 237 | Code | 10 | | 3 | 00/00FC : C0 00 02 | cpy #{512} + 360 | 1 ASSD.DRIVER.S 238 | Code | 10 | | 2 | 00/00FF : 90 F4 | bcc ozunid_2 + 361 | 1 ASSD.DRIVER.S 239 | Empty | 10 | | 0 | 00/0101 | + 362 | 1 ASSD.DRIVER.S 240 | Code | 00 | | 2 | 00/0101 : C2 20 | rep #$20 ; move destination pointer + 363 | 1 ASSD.DRIVER.S 241 | Code | 00 | | 2 | 00/0103 : A5 05 | lda {$04}+1 + 364 | 1 ASSD.DRIVER.S 242 | Code | 00 | | 1 | 00/0105 : 18 | clc + 365 | 1 ASSD.DRIVER.S 243 | Code | 00 | | 3 | 00/0106 : 69 02 00 | adc #>{512} ; rwBlockSize+1 + 366 | 1 ASSD.DRIVER.S 244 | Code | 00 | | 2 | 00/0109 : 85 05 | sta {$04}+1 + 367 | 1 ASSD.DRIVER.S 245 | Empty | 00 | | 0 | 00/010B | + 368 | 1 ASSD.DRIVER.S 246 | Code | 00 | | 1 | 00/010B : CA | dex ; next block + 369 | 1 ASSD.DRIVER.S 247 | Code | 00 | | 2 | 00/010C : D0 E2 | bne dw2 + 370 | 1 ASSD.DRIVER.S 248 | Empty | 00 | | 0 | 00/010E | + 371 | 1 ASSD.DRIVER.S 249 | Code | 00 | | 1 | 00/010E : 68 | pla ; restore pointer + 372 | 1 ASSD.DRIVER.S 250 | Code | 00 | | 2 | 00/010F : 85 05 | sta {$04}+1 + 373 | 1 ASSD.DRIVER.S 251 | Code | 00 | | 1 | 00/0111 : 60 | rts + 374 | 1 ASSD.DRIVER.S 252 | Empty | 00 | | 0 | 00/0112 | + 375 | 1 ASSD.DRIVER.S 253 | Comment | 00 | | 0 | 00/0112 | *--- The AS magic ends here + 376 | 1 ASSD.DRIVER.S 254 | Empty | 00 | | 0 | 00/0112 | + 377 | 1 ASSD.DRIVER.S 255 | Comment | 00 | | 0 | 00/0112 | * + 378 | 1 ASSD.DRIVER.S 256 | Comment | 00 | | 0 | 00/0112 | * Driver_Status + 379 | 1 ASSD.DRIVER.S 257 | Comment | 00 | | 0 | 00/0112 | * + 380 | 1 ASSD.DRIVER.S 258 | Empty | 00 | | 0 | 00/0112 | + 381 | 1 ASSD.DRIVER.S 259 | Code | 00 | | 2 | 00/0112 : A5 16 | DStatus lda {$16} + 382 | 1 ASSD.DRIVER.S 260 | Code | 00 | | 3 | 00/0114 : C9 05 00 | cmp #4+1 + 383 | 1 ASSD.DRIVER.S 261 | Code | 00 | | 2 | 00/0117 : 90 07 | bcc DStatus1 + 384 | 1 ASSD.DRIVER.S 262 | Code | 00 | | 3 | 00/0119 : A9 21 00 | lda #$0021 ; drvrBadCode + 385 | 1 ASSD.DRIVER.S 263 | Code | 00 | 2 | 3 | 00/011C : 8D 03 02 | sta errCODE + 386 | 1 ASSD.DRIVER.S 264 | Code | 00 | | 1 | 00/011F : 60 | rts + 387 | 1 ASSD.DRIVER.S 265 | Empty | 00 | | 0 | 00/0120 | + 388 | 1 ASSD.DRIVER.S 266 | Code | 00 | | 1 | 00/0120 : 0A | DStatus1 asl + 389 | 1 ASSD.DRIVER.S 267 | Code | 00 | | 1 | 00/0121 : AA | tax + 390 | 1 ASSD.DRIVER.S 268 | Code | 00 | | 2 | 00/0122 : 64 0C | stz {$0C} + 391 | 1 ASSD.DRIVER.S 269 | Code | 00 | | 2 | 00/0124 : 64 0E | stz {$0C}+2 + 392 | 1 ASSD.DRIVER.S 270 | Code | 00 | 2 | 3 | 00/0126 : FC 2A 01 | jsr (tblSTATUS,x) + 393 | 1 ASSD.DRIVER.S 271 | Code | 00 | | 1 | 00/0129 : 60 | rts + 394 | 1 ASSD.DRIVER.S 272 | Empty | 00 | | 0 | 00/012A | + 395 | 1 ASSD.DRIVER.S 273 | Data | 00 | 2 | 2 | 00/012A : 35 01 | tblSTATUS da SGetStatus ; GetDeviceStatus + 396 | 1 ASSD.DRIVER.S 274 | Data | 00 | 2 | 2 | 00/012C : 65 01 | da SGet ; GetConfigParameters + 397 | 1 ASSD.DRIVER.S 275 | Data | 00 | 2 | 2 | 00/012E : 65 01 | da SGet ; GetWaitStatus + 398 | 1 ASSD.DRIVER.S 276 | Data | 00 | 2 | 2 | 00/0130 : 65 01 | da SGet ; GetFormatOptions + 399 | 1 ASSD.DRIVER.S 277 | Data | 00 | 2 | 2 | 00/0132 : 34 01 | da SNada ; GetPartitionMap + 400 | 1 ASSD.DRIVER.S 278 | Empty | 00 | | 0 | 00/0134 | + 401 | 1 ASSD.DRIVER.S 279 | Code | 00 | | 1 | 00/0134 : 60 | SNada rts + 402 | 1 ASSD.DRIVER.S 280 | Empty | 00 | | 0 | 00/0135 | + 403 | 1 ASSD.DRIVER.S 281 | Comment | 00 | | 0 | 00/0135 | *----------- GetDeviceStatus + 404 | 1 ASSD.DRIVER.S 282 | Empty | 00 | | 0 | 00/0135 | + 405 | 1 ASSD.DRIVER.S 283 | Code | 00 | | 3 | 00/0135 : A9 02 00 | SGetStatus lda #2 ; GetDeviceStatus + 406 | 1 ASSD.DRIVER.S 284 | Code | 00 | | 2 | 00/0138 : 85 0C | sta {$0C} + 407 | 1 ASSD.DRIVER.S 285 | Empty | 00 | | 0 | 00/013A | + 408 | 1 ASSD.DRIVER.S 286 | Code | 00 | | 2 | 00/013A : A5 08 | lda {$08} ; check length of buffer + 409 | 1 ASSD.DRIVER.S 287 | Code | 00 | | 3 | 00/013C : C9 06 00 | cmp #6 + 410 | 1 ASSD.DRIVER.S 288 | Code | 00 | | 2 | 00/013F : 90 14 | bcc SGS1 + 411 | 1 ASSD.DRIVER.S 289 | Code | 00 | | 3 | 00/0141 : A9 06 00 | lda #6 + 412 | 1 ASSD.DRIVER.S 290 | Code | 00 | | 2 | 00/0144 : 85 0C | sta {$0C} + 413 | 1 ASSD.DRIVER.S 291 | Empty | 00 | | 0 | 00/0146 | + 414 | 1 ASSD.DRIVER.S 292 | Code | 00 | | 3 | 00/0146 : A0 02 00 | ldy #2 ; we can send the number of blocks + 415 | 1 ASSD.DRIVER.S 293 | Code | 00 | | 3 | 00/0149 : A9 FF FF | lda #{$ffffffff} + 416 | 1 ASSD.DRIVER.S 294 | Code | 00 | | 2 | 00/014C : 97 04 | sta [{$04}],y + 417 | 1 ASSD.DRIVER.S 295 | Code | 00 | | 1 | 00/014E : C8 | iny + 418 | 1 ASSD.DRIVER.S 296 | Code | 00 | | 1 | 00/014F : C8 | iny + 419 | 1 ASSD.DRIVER.S 297 | Code | 00 | | 3 | 00/0150 : A9 FF FF | lda #^{$ffffffff} + 420 | 1 ASSD.DRIVER.S 298 | Code | 00 | | 2 | 00/0153 : 97 04 | sta [{$04}],y + 421 | 1 ASSD.DRIVER.S 299 | Empty | 00 | | 0 | 00/0155 | + 422 | 1 ASSD.DRIVER.S 300 | Code | 00 | | 3 | 00/0155 : A2 10 00 | SGS1 ldx #{$0010} + 423 | 1 ASSD.DRIVER.S 301 | Code | 00 | 2 | 3 | 00/0158 : AD 01 02 | lda fgSTARTED ; send the status of the driver + 424 | 1 ASSD.DRIVER.S 302 | Code | 00 | | 2 | 00/015B : D0 01 | bne SGS2 + 425 | 1 ASSD.DRIVER.S 303 | Code | 00 | | 1 | 00/015D : E8 | inx + 426 | 1 ASSD.DRIVER.S 304 | Code | 00 | | 1 | 00/015E : 8A | SGS2 txa + 427 | 1 ASSD.DRIVER.S 305 | Code | 00 | | 3 | 00/015F : 09 00 80 | ora #{$8000} ; we are uncertain of the block count + 428 | 1 ASSD.DRIVER.S 306 | Code | 00 | | 2 | 00/0162 : 87 04 | sta [{$04}] + 429 | 1 ASSD.DRIVER.S 307 | Code | 00 | | 1 | 00/0164 : 60 | rts + 430 | 1 ASSD.DRIVER.S 308 | Empty | 00 | | 0 | 00/0165 | + 431 | 1 ASSD.DRIVER.S 309 | Comment | 00 | | 0 | 00/0165 | *----------- GetConfigParameters / GetWaitStatus + 432 | 1 ASSD.DRIVER.S 310 | Empty | 00 | | 0 | 00/0165 | + 433 | 1 ASSD.DRIVER.S 311 | Code | 00 | | 3 | 00/0165 : A9 00 00 | SGet lda #0 ; GetConfigParameters + 434 | 1 ASSD.DRIVER.S 312 | Code | 00 | | 2 | 00/0168 : 87 04 | sta [{$04}] ; GetWaitStatus + 435 | 1 ASSD.DRIVER.S 313 | Code | 00 | | 3 | 00/016A : A9 02 00 | lda #2 + 436 | 1 ASSD.DRIVER.S 314 | Code | 00 | | 2 | 00/016D : 85 0C | sta {$0C} + 437 | 1 ASSD.DRIVER.S 315 | Code | 00 | | 1 | 00/016F : 60 | rts + 438 | 1 ASSD.DRIVER.S 316 | Empty | 00 | | 0 | 00/0170 | + 439 | 1 ASSD.DRIVER.S 317 | Comment | 00 | | 0 | 00/0170 | * + 440 | 1 ASSD.DRIVER.S 318 | Comment | 00 | | 0 | 00/0170 | * Driver_Control + 441 | 1 ASSD.DRIVER.S 319 | Comment | 00 | | 0 | 00/0170 | * + 442 | 1 ASSD.DRIVER.S 320 | Empty | 00 | | 0 | 00/0170 | + 443 | 1 ASSD.DRIVER.S 321 | Code | 00 | 2 | 3 | 00/0170 : 20 E8 01 | DControl jsr checkSWITCHED + 444 | 1 ASSD.DRIVER.S 322 | Code | 00 | | 2 | 00/0173 : 90 01 | bcc DControl1 + 445 | 1 ASSD.DRIVER.S 323 | Code | 00 | | 1 | 00/0175 : 60 | rts + 446 | 1 ASSD.DRIVER.S 324 | Empty | 00 | | 0 | 00/0176 | + 447 | 1 ASSD.DRIVER.S 325 | Code | 00 | | 2 | 00/0176 : A5 16 | DControl1 lda {$16} + 448 | 1 ASSD.DRIVER.S 326 | Code | 00 | | 3 | 00/0178 : C9 0A 00 | cmp #9+1 + 449 | 1 ASSD.DRIVER.S 327 | Code | 00 | | 2 | 00/017B : 90 07 | bcc DControl2 + 450 | 1 ASSD.DRIVER.S 328 | Empty | 00 | | 0 | 00/017D | + 451 | 1 ASSD.DRIVER.S 329 | Code | 00 | | 3 | 00/017D : A9 21 00 | lda #$0021 + 452 | 1 ASSD.DRIVER.S 330 | Code | 00 | 2 | 3 | 00/0180 : 8D 03 02 | sta errCODE + 453 | 1 ASSD.DRIVER.S 331 | Code | 00 | | 1 | 00/0183 : 60 | rts + 454 | 1 ASSD.DRIVER.S 332 | Empty | 00 | | 0 | 00/0184 | + 455 | 1 ASSD.DRIVER.S 333 | Code | 00 | | 1 | 00/0184 : 0A | DControl2 asl + 456 | 1 ASSD.DRIVER.S 334 | Code | 00 | | 1 | 00/0185 : AA | tax + 457 | 1 ASSD.DRIVER.S 335 | Code | 00 | | 2 | 00/0186 : 64 0C | stz {$0C} + 458 | 1 ASSD.DRIVER.S 336 | Code | 00 | | 2 | 00/0188 : 64 0E | stz {$0C}+2 + 459 | 1 ASSD.DRIVER.S 337 | Code | 00 | 2 | 3 | 00/018A : FC 8E 01 | jsr (tblCONTROL,x) + 460 | 1 ASSD.DRIVER.S 338 | Code | 00 | | 1 | 00/018D : 60 | rts + 461 | 1 ASSD.DRIVER.S 339 | Empty | 00 | | 0 | 00/018E | + 462 | 1 ASSD.DRIVER.S 340 | Data | 00 | 2 | 2 | 00/018E : A2 01 | tblCONTROL da CNada ; 0 ResetDevice + 463 | 1 ASSD.DRIVER.S 341 | Data | 00 | 2 | 2 | 00/0190 : A2 01 | da CNada ; 1 FormatDevice + 464 | 1 ASSD.DRIVER.S 342 | Data | 00 | 2 | 2 | 00/0192 : A2 01 | da CNada ; 2 EjectMedium + 465 | 1 ASSD.DRIVER.S 343 | Data | 00 | 2 | 2 | 00/0194 : A3 01 | da CSet ; 3 SetConfigParameters + 466 | 1 ASSD.DRIVER.S 344 | Data | 00 | 2 | 2 | 00/0196 : A3 01 | da CSet ; 4 SetWaitStatus + 467 | 1 ASSD.DRIVER.S 345 | Data | 00 | 2 | 2 | 00/0198 : A3 01 | da CSet ; 5 SetFormatOptions + 468 | 1 ASSD.DRIVER.S 346 | Data | 00 | 2 | 2 | 00/019A : A2 01 | da CNada ; 6 AssignPartitionOwner + 469 | 1 ASSD.DRIVER.S 347 | Data | 00 | 2 | 2 | 00/019C : A2 01 | da CNada ; 7 ArmSignal + 470 | 1 ASSD.DRIVER.S 348 | Data | 00 | 2 | 2 | 00/019E : A2 01 | da CNada ; 8 DisarmSignal + 471 | 1 ASSD.DRIVER.S 349 | Data | 00 | 2 | 2 | 00/01A0 : A2 01 | da CNada ; 9 SetPartitionMap + 472 | 1 ASSD.DRIVER.S 350 | Empty | 00 | | 0 | 00/01A2 | + 473 | 1 ASSD.DRIVER.S 351 | Code | 00 | | 1 | 00/01A2 : 60 | CNada rts + 474 | 1 ASSD.DRIVER.S 352 | Empty | 00 | | 0 | 00/01A3 | + 475 | 1 ASSD.DRIVER.S 353 | Comment | 00 | | 0 | 00/01A3 | *----------- SetConfigParameters / SetWaitStatus + 476 | 1 ASSD.DRIVER.S 354 | Empty | 00 | | 0 | 00/01A3 | + 477 | 1 ASSD.DRIVER.S 355 | Code | 00 | | 2 | 00/01A3 : A7 04 | CSet lda [{$04}] ; SetConfigParameters + 478 | 1 ASSD.DRIVER.S 356 | Code | 00 | | 2 | 00/01A5 : D0 01 | bne CSetERR ; SetWaitStatus + 479 | 1 ASSD.DRIVER.S 357 | Code | 00 | | 1 | 00/01A7 : 60 | rts + 480 | 1 ASSD.DRIVER.S 358 | Code | 00 | | 3 | 00/01A8 : A9 22 00 | CSetERR lda #$0022 + 481 | 1 ASSD.DRIVER.S 359 | Code | 00 | 2 | 3 | 00/01AB : 8D 03 02 | sta errCODE + 482 | 1 ASSD.DRIVER.S 360 | Code | 00 | | 1 | 00/01AE : 60 | rts + 483 | 1 ASSD.DRIVER.S 361 | Empty | 00 | | 0 | 00/01AF | + 484 | 1 ASSD.DRIVER.S 362 | Comment | 00 | | 0 | 00/01AF | *---------------------------- + 485 | 1 ASSD.DRIVER.S 363 | Empty | 00 | | 0 | 00/01AF | + 486 | 1 ASSD.DRIVER.S 364 | Comment | 00 | | 0 | 00/01AF | * Status flag of the current device + 487 | 1 ASSD.DRIVER.S 365 | Comment | 00 | | 0 | 00/01AF | * $0001: image has been switched (disk switched) + 488 | 1 ASSD.DRIVER.S 366 | Comment | 00 | | 0 | 00/01AF | * $0010: image is active (disk in drive) + 489 | 1 ASSD.DRIVER.S 367 | Comment | 00 | | 0 | 00/01AF | * $0100: image has been modified + 490 | 1 ASSD.DRIVER.S 368 | Empty | 00 | | 0 | 00/01AF | + 491 | 1 ASSD.DRIVER.S 369 | Comment | 00 | | 0 | 00/01AF | * + 492 | 1 ASSD.DRIVER.S 370 | Comment | 00 | | 0 | 00/01AF | * Checks everything is OK + 493 | 1 ASSD.DRIVER.S 371 | Comment | 00 | | 0 | 00/01AF | * + 494 | 1 ASSD.DRIVER.S 372 | Empty | 00 | | 0 | 00/01AF | + 495 | 1 ASSD.DRIVER.S 373 | Code | 00 | 2 | 3 | 00/01AF : 20 E8 01 | doSETUP jsr checkSWITCHED + 496 | 1 ASSD.DRIVER.S 374 | Code | 00 | | 2 | 00/01B2 : 90 01 | bcc ds2 + 497 | 1 ASSD.DRIVER.S 375 | Code | 00 | | 1 | 00/01B4 : 60 | rts + 498 | 1 ASSD.DRIVER.S 376 | Empty | 00 | | 0 | 00/01B5 | + 499 | 1 ASSD.DRIVER.S 377 | Code | 00 | | 2 | 00/01B5 : A5 08 | ds2 lda {$08} ; nb of bytes to read + 500 | 1 ASSD.DRIVER.S 378 | Code | 00 | | 2 | 00/01B7 : 05 0A | ora {$08}+2 + 501 | 1 ASSD.DRIVER.S 379 | Code | 00 | | 2 | 00/01B9 : D0 08 | bne ds4 + 502 | 1 ASSD.DRIVER.S 380 | Empty | 00 | | 0 | 00/01BB | + 503 | 1 ASSD.DRIVER.S 381 | Code | 00 | | 3 | 00/01BB : A9 2C 00 | lda #$002C ; invalidByteCount + 504 | 1 ASSD.DRIVER.S 382 | Code | 00 | 2 | 3 | 00/01BE : 8D 03 02 | sta errCODE + 505 | 1 ASSD.DRIVER.S 383 | Code | 00 | | 1 | 00/01C1 : 38 | sec + 506 | 1 ASSD.DRIVER.S 384 | Code | 00 | | 1 | 00/01C2 : 60 | rts + 507 | 1 ASSD.DRIVER.S 385 | Empty | 00 | | 0 | 00/01C3 | + 508 | 1 ASSD.DRIVER.S 386 | Comment | 00 | | 0 | 00/01C3 | * $0102_0400 = + 509 | 1 ASSD.DRIVER.S 387 | Empty | 00 | | 0 | 00/01C3 | + 510 | 1 ASSD.DRIVER.S 388 | Comment | 00 | | 0 | 00/01C3 | *--- requestcount : $0200 => 1 + 511 | 1 ASSD.DRIVER.S 389 | Comment | 00 | | 0 | 00/01C3 | *--- From a Block to a RAM address + 512 | 1 ASSD.DRIVER.S 390 | Empty | 00 | | 0 | 00/01C3 | + 513 | 1 ASSD.DRIVER.S 391 | Code | 00 | | 2 | 00/01C3 : A5 0B | ds4 lda {$08}+3 ; number of pages + 514 | 1 ASSD.DRIVER.S 392 | Code | 00 | | 3 | 00/01C5 : 29 FF 00 | and #$00ff ; to calculate + 515 | 1 ASSD.DRIVER.S 393 | Code | 00 | | 1 | 00/01C8 : 4A | lsr + 516 | 1 ASSD.DRIVER.S 394 | Code | 00 | | 2 | 00/01C9 : A5 09 | lda {$08}+1 ; $01020400 => $010204 => $8102 + 517 | 1 ASSD.DRIVER.S 395 | Code | 00 | | 1 | 00/01CB : 6A | ror + 518 | 1 ASSD.DRIVER.S 396 | Code | 00 | 2 | 3 | 00/01CC : 8D 09 02 | sta nbPAGES ; to calculate + 519 | 1 ASSD.DRIVER.S 397 | Empty | 00 | | 0 | 00/01CF | + 520 | 1 ASSD.DRIVER.S 398 | Code | 00 | | 2 | 00/01CF : A5 08 | lda {$08} ; multiple of $0200 + 521 | 1 ASSD.DRIVER.S 399 | Code | 00 | | 3 | 00/01D1 : 29 FF 01 | and #{512}-1 + 522 | 1 ASSD.DRIVER.S 400 | Code | 00 | | 2 | 00/01D4 : F0 08 | beq ds6 + 523 | 1 ASSD.DRIVER.S 401 | Empty | 00 | | 0 | 00/01D6 | + 524 | 1 ASSD.DRIVER.S 402 | Code | 00 | | 3 | 00/01D6 : A9 2D 00 | lda #$002D ; bad block count + 525 | 1 ASSD.DRIVER.S 403 | Code | 00 | 2 | 3 | 00/01D9 : 8D 03 02 | sta errCODE + 526 | 1 ASSD.DRIVER.S 404 | Code | 00 | | 1 | 00/01DC : 38 | sec + 527 | 1 ASSD.DRIVER.S 405 | Code | 00 | | 1 | 00/01DD : 60 | rts + 528 | 1 ASSD.DRIVER.S 406 | Empty | 00 | | 0 | 00/01DE | + 529 | 1 ASSD.DRIVER.S 407 | Comment | 00 | | 0 | 00/01DE | *--- Generic transfer now + 530 | 1 ASSD.DRIVER.S 408 | Empty | 00 | | 0 | 00/01DE | + 531 | 1 ASSD.DRIVER.S 409 | Code | 00 | | 2 | 00/01DE : A5 08 | ds6 lda {$08} ; assume transfer=request + 532 | 1 ASSD.DRIVER.S 410 | Code | 00 | | 2 | 00/01E0 : 85 0C | sta {$0C} + 533 | 1 ASSD.DRIVER.S 411 | Code | 00 | | 2 | 00/01E2 : A5 0A | lda {$08}+2 + 534 | 1 ASSD.DRIVER.S 412 | Code | 00 | | 2 | 00/01E4 : 85 0E | sta {$0C}+2 + 535 | 1 ASSD.DRIVER.S 413 | Empty | 00 | | 0 | 00/01E6 | + 536 | 1 ASSD.DRIVER.S 414 | Code | 00 | | 1 | 00/01E6 : 18 | clc + 537 | 1 ASSD.DRIVER.S 415 | Code | 00 | | 1 | 00/01E7 : 60 | rts + 538 | 1 ASSD.DRIVER.S 416 | Empty | 00 | | 0 | 00/01E8 | + 539 | 1 ASSD.DRIVER.S 417 | Comment | 00 | | 0 | 00/01E8 | *---------------------------- + 540 | 1 ASSD.DRIVER.S 418 | Empty | 00 | | 0 | 00/01E8 | + 541 | 1 ASSD.DRIVER.S 419 | Empty | 00 | | 0 | 00/01E8 | checkSWITCHED + 542 | 1 ASSD.DRIVER.S 420 | Code | 00 | 2 | 3 | 00/01E8 : AD 01 02 | lda fgSTARTED + 543 | 1 ASSD.DRIVER.S 421 | Code | 00 | | 2 | 00/01EB : D0 12 | bne cs1 + 544 | 1 ASSD.DRIVER.S 422 | Empty | 00 | | 0 | 00/01ED | + 545 | 1 ASSD.DRIVER.S 423 | Code | 00 | | 4 | 00/01ED : 22 90 FC 01 | jsl {$01FC90} + 546 | 1 ASSD.DRIVER.S 424 | Empty | 00 | | 0 | 00/01F1 | + 547 | 1 ASSD.DRIVER.S 425 | Code | 00 | | 3 | 00/01F1 : A9 01 00 | lda #1 + 548 | 1 ASSD.DRIVER.S 426 | Code | 00 | 2 | 3 | 00/01F4 : 8D 01 02 | sta fgSTARTED + 549 | 1 ASSD.DRIVER.S 427 | Code | 00 | | 3 | 00/01F7 : A9 2E 00 | lda #$002e + 550 | 1 ASSD.DRIVER.S 428 | Code | 00 | 2 | 3 | 00/01FA : 8D 03 02 | sta errCODE + 551 | 1 ASSD.DRIVER.S 429 | Code | 00 | | 1 | 00/01FD : 38 | sec + 552 | 1 ASSD.DRIVER.S 430 | Code | 00 | | 1 | 00/01FE : 60 | rts + 553 | 1 ASSD.DRIVER.S 431 | Empty | 00 | | 0 | 00/01FF | + 554 | 1 ASSD.DRIVER.S 432 | Code | 00 | | 1 | 00/01FF : 18 | cs1 clc + 555 | 1 ASSD.DRIVER.S 433 | Code | 00 | | 1 | 00/0200 : 60 | rts + 556 | 1 ASSD.DRIVER.S 434 | Empty | 00 | | 0 | 00/0201 | + 557 | 1 ASSD.DRIVER.S 435 | Comment | 00 | | 0 | 00/0201 | *---------------------------- + 558 | 1 ASSD.DRIVER.S 436 | Empty | 00 | | 0 | 00/0201 | + 559 | 1 ASSD.DRIVER.S 437 | Data | 00 | | 2 | 00/0201 : 00 00 | fgSTARTED ds 2 ; 0: not started, 1: started + 560 | 1 ASSD.DRIVER.S 438 | Data | 00 | | 2 | 00/0203 : 00 00 | errCODE ds 2 + 561 | 1 ASSD.DRIVER.S 439 | Data | 00 | | 4 | 00/0205 : 00 00 00 00 | thePAGE ds 4 ; page to read/write: $hh/ll00 + 562 | 1 ASSD.DRIVER.S 440 | Data | 00 | | 2 | 00/0209 : 00 00 | nbPAGES ds 2 ; number of blockSIZEP pages to copy + 563 | 1 ASSD.DRIVER.S 441 | Empty | 00 | | 0 | 00/020B | + 564 | 1 ASSD.DRIVER.S 442 | Data | 00 | | 4 | 00/020B : 00 00 00 00 | MyDIB ds 4 ; +00 pointer to the next DIB + 565 | 1 ASSD.DRIVER.S 443 | Data | 00 | 3 | 4 | 00/020F : 06 00 00 00 | adrl entryPOINT ; +04 driver entry point + 566 | 1 ASSD.DRIVER.S 444 | Data | 00 | | 2 | 00/0213 : A8 0B | dw {$0BA8} ; +08 characteristics + 567 | 1 ASSD.DRIVER.S 445 | Data | 00 | | 4 | 00/0215 : 00 00 00 00 | ds 4 ; +0A block count + 568 | 1 ASSD.DRIVER.S 446 | Data | 00 | | 11 | 00/0219 : 0A 41 53 53 | str 'ASSDDevice' ; +0E device name + | | | | | | 44 44 65 76 | + | | | | | | 69 63 65 | + 569 | 1 ASSD.DRIVER.S 447 | Data | 00 | | 21 | 00/0224 : 00 00 00 00 | ds 21 ; 32 - 12 = 20 | | | | | | 00 00 00 00 | | | | | | | 00 00 00 00 | | | | | | | 00 00 00 00 | | | | | | | 00 00 00 00 | - | | | | | | 00 00 00 00 | - | | | | | | 00 00 00 00 | - | | | | | | 00 00 00 00 | - | | | | | | 00 00 | - 675 | 1 ASSD.DRIVER.S 515 | Empty | 00 | | 0 | 00/02DD | - 676 | 1 ASSD.DRIVER.S 516 | Comment | 00 | | 0 | 00/02DD | *---------------------------- - 677 | 1 ASSD.DRIVER.S 517 | Empty | 00 | | 0 | 00/02DD | - 678 | 1 ASSD.DRIVER.S 518 | Empty | 00 | | 0 | 00/02DD | - 679 | 1 ASSD.DRIVER.S 519 | Empty | 00 | | 0 | 00/02DD | formatOptionsTable - 680 | 1 ASSD.DRIVER.S 520 | Empty | 00 | | 0 | 00/02DD | - 681 | 1 ASSD.DRIVER.S 521 | Comment | 00 | | 0 | 00/02DD | * 8 bytes - 682 | 1 ASSD.DRIVER.S 522 | Data | 00 | | 2 | 00/02DD : 02 00 | dw 2 ; numOptions - 683 | 1 ASSD.DRIVER.S 523 | Data | 00 | | 2 | 00/02DF : 02 00 | dw 2 ; numDisplayed - 684 | 1 ASSD.DRIVER.S 524 | Data | 00 | | 2 | 00/02E1 : 01 00 | dw 1 ; recommendedOption - 685 | 1 ASSD.DRIVER.S 525 | Data | 00 | | 2 | 00/02E3 : 01 00 | dw 1 ; currentOption - 686 | 1 ASSD.DRIVER.S 526 | Empty | 00 | | 0 | 00/02E5 | - 687 | 1 ASSD.DRIVER.S 527 | Comment | 00 | | 0 | 00/02E5 | * 16 bytes - 688 | 1 ASSD.DRIVER.S 528 | Data | 00 | | 2 | 00/02E5 : 01 00 | dw 1 ; formatOptionNum - 689 | 1 ASSD.DRIVER.S 529 | Data | 00 | | 2 | 00/02E7 : 02 00 | dw 2 ; linkRefNum - 690 | 1 ASSD.DRIVER.S 530 | Data | 00 | | 2 | 00/02E9 : 0D 00 | dw %0000_1101 ; flags 1101 - GB size - Apple format - 691 | 1 ASSD.DRIVER.S 531 | Data | 00 | | 4 | 00/02EB : FF FF FF FF | adrl {$ffffffff} ; blockCount is the max for HFS - 692 | 1 ASSD.DRIVER.S 532 | Data | 00 | | 2 | 00/02EF : 00 02 | dw {512} ; blockSize is 512 bytes - 693 | 1 ASSD.DRIVER.S 533 | Data | 00 | | 2 | 00/02F1 : 00 00 | dw 0 ; interleaveFactor - 694 | 1 ASSD.DRIVER.S 534 | Data | 00 | | 2 | 00/02F3 : 20 00 | dw 32 ; mediaSize 11 - GB size - 695 | 1 ASSD.DRIVER.S 535 | Empty | 00 | | 0 | 00/02F5 | - 696 | 1 ASSD.DRIVER.S 536 | Comment | 00 | | 0 | 00/02F5 | * 16 bytes - 697 | 1 ASSD.DRIVER.S 537 | Data | 00 | | 2 | 00/02F5 : 02 00 | dw 2 ; formatOptionNum - 698 | 1 ASSD.DRIVER.S 538 | Data | 00 | | 2 | 00/02F7 : 00 00 | dw 0 ; linkRefNum - 699 | 1 ASSD.DRIVER.S 539 | Data | 00 | | 2 | 00/02F9 : 09 00 | dw %0000_1001 ; flags 1001 - MB size - Apple format - 700 | 1 ASSD.DRIVER.S 540 | Data | 00 | | 4 | 00/02FB : 00 00 01 00 | adrl {65536} ; blockCount is 65536 for ProDOS 8 - 701 | 1 ASSD.DRIVER.S 541 | Data | 00 | | 2 | 00/02FF : 00 02 | dw {512} ; blockSize is 512 bytes for ProDOS 8 - 702 | 1 ASSD.DRIVER.S 542 | Data | 00 | | 2 | 00/0301 : 00 00 | dw 0 ; interleaveFactor - 703 | 1 ASSD.DRIVER.S 543 | Data | 00 | | 2 | 00/0303 : 20 00 | dw 32 ; mediaSize 10 - MB size - 704 | 1 ASSD.DRIVER.S 544 | Empty | 00 | | 0 | 00/0305 | - 705 | 1 ASSD.DRIVER.S 545 | Empty | 00 | | 0 | 00/0305 | formatOptionsTableEnd - 706 | 1 ASSD.DRIVER.S 546 | Empty | 00 | | 0 | 00/0305 | - 707 | 1 ASSD.DRIVER.S 547 | Comment | 00 | | 0 | 00/0305 | *--- Default formatting options - 708 | 1 ASSD.DRIVER.S 548 | Empty | 00 | | 0 | 00/0305 | - 709 | 1 ASSD.DRIVER.S 549 | Data | 00 | | 4 | 00/0305 : FF FF FF FF | fBlockCount adrl {$ffffffff} ; 65536 - 710 | 1 ASSD.DRIVER.S 550 | Empty | 00 | | 0 | 00/0309 | - 711 | 1 ASSD.DRIVER.S 551 | Comment | 00 | | 0 | 00/0309 | *---------------------------- - 712 | 1 ASSD.DRIVER.S 552 | Empty | 00 | | 0 | 00/0309 | - 713 | 1 ASSD.DRIVER.S 553 | Data | 00 | | 2 | 00/0309 : 00 00 | fgSTARTED ds 2 ; 0: not started, 1: started - 714 | 1 ASSD.DRIVER.S 554 | Data | 00 | | 2 | 00/030B : 00 00 | fgFORMAT ds 2 ; 0: GS/OS Format never called, 1 instead - 715 | 1 ASSD.DRIVER.S 555 | Data | 00 | | 2 | 00/030D : 00 00 | errCODE ds 2 - 716 | 1 ASSD.DRIVER.S 556 | Data | 00 | | 4 | 00/030F : 00 00 00 00 | thePAGE ds 4 ; page to read/write: $hh/ll00 - 717 | 1 ASSD.DRIVER.S 557 | Data | 00 | | 2 | 00/0313 : 00 00 | nbPAGES ds 2 ; number of blockSIZEP pages to copy - 718 | 1 ASSD.DRIVER.S 558 | Empty | 00 | | 0 | 00/0315 | - 719 | 1 ASSD.DRIVER.S 559 | Data | 00 | | 4 | 00/0315 : 00 00 00 00 | MyDIB ds 4 ; +00 pointer to the next DIB - 720 | 1 ASSD.DRIVER.S 560 | Data | 00 | 3 | 4 | 00/0319 : 06 00 00 00 | adrl entryPOINT ; +04 driver entry point - 721 | 1 ASSD.DRIVER.S 561 | Data | 00 | | 2 | 00/031D : EC 8B | dw {$8BEC} ; +08 characteristics - 722 | 1 ASSD.DRIVER.S 562 | Data | 00 | | 4 | 00/031F : FF FF FF FF | adrl {$ffffffff} ; +0A block count - 723 | 1 ASSD.DRIVER.S 563 | Data | 00 | | 32 | 00/0323 : 00 00 00 00 | MyDevName ds 32 ; +0E device name - | | | | | | 00 00 00 00 | - | | | | | | 00 00 00 00 | - | | | | | | 00 00 00 00 | - | | | | | | 00 00 00 00 | - | | | | | | 00 00 00 00 | - | | | | | | 00 00 00 00 | - | | | | | | 00 00 00 00 | - 724 | 1 ASSD.DRIVER.S 564 | Data | 00 | | 2 | 00/0343 : 00 80 | dw {$8000} ; +2E slot number - 725 | 1 ASSD.DRIVER.S 565 | Data | 00 | | 2 | 00/0345 : 01 00 | dw {$0001} ; +30 unit number - 726 | 1 ASSD.DRIVER.S 566 | Data | 00 | | 2 | 00/0347 : 00 10 | dw {$1000} ; +32 version - 727 | 1 ASSD.DRIVER.S 567 | Data | 00 | | 2 | 00/0349 : 0E 00 | dw {$000e} ; +34 device ID - LOGO - 728 | 1 ASSD.DRIVER.S 568 | Data | 00 | | 2 | 00/034B : 00 00 | dw $0000 ; +36 first linked device - 729 | 1 ASSD.DRIVER.S 569 | Data | 00 | | 2 | 00/034D : 00 00 | dw $0000 ; +38 next linked device - 730 | 1 ASSD.DRIVER.S 570 | Data | 00 | | 4 | 00/034F : 00 00 00 00 | adrl $00000000 ; +3A extended DIB ptr - 731 | 1 ASSD.DRIVER.S 571 | Data | 00 | | 2 | 00/0353 : 00 00 | dw $0000 ; +3E device number - 732 | 1 ASSD.DRIVER.S 572 | Empty | 00 | | 0 | 00/0355 | + | | | | | | 00 | + 570 | 1 ASSD.DRIVER.S 448 | Data | 00 | | 2 | 00/0239 : 00 00 | dw $0000 ; +2E slot number + 571 | 1 ASSD.DRIVER.S 449 | Data | 00 | | 2 | 00/023B : 00 00 | dw $0000 ; +30 unit number + 572 | 1 ASSD.DRIVER.S 450 | Data | 00 | | 2 | 00/023D : 00 10 | dw {$1000} ; +32 version + 573 | 1 ASSD.DRIVER.S 451 | Data | 00 | | 2 | 00/023F : 13 00 | dw {$0013} ; +34 device ID + 574 | 1 ASSD.DRIVER.S 452 | Data | 00 | | 2 | 00/0241 : 00 00 | dw $0000 ; +36 first linked device + 575 | 1 ASSD.DRIVER.S 453 | Data | 00 | | 2 | 00/0243 : 00 00 | dw $0000 ; +38 next linked device + 576 | 1 ASSD.DRIVER.S 454 | Data | 00 | | 4 | 00/0245 : 00 00 00 00 | adrl $00000000 ; +3A extended DIB ptr + 577 | 1 ASSD.DRIVER.S 455 | Data | 00 | | 2 | 00/0249 : 00 00 | dw $0000 ; +3E device number + 578 | 1 ASSD.DRIVER.S 456 | Empty | 00 | | 0 | 00/024B | ------+-------------------------+-------------+----+---------+------+-----------------------+------------------------------------------------------------------- diff --git a/applesqueezer/sdcard/_FileInformation.txt b/applesqueezer/sdcard/_FileInformation.txt index c8deb77..fcc2fb4 100644 --- a/applesqueezer/sdcard/_FileInformation.txt +++ b/applesqueezer/sdcard/_FileInformation.txt @@ -1,4 +1,4 @@ devices=Type(B3),AuxType(0000),VersionCreate(70),MinVersion(BE),Access(E3),FolderInfo1(000000000000000000000000000000000000),FolderInfo2(000000000000000000000000000000000000) -ASSDDriver=Type(BB),AuxType(0101),VersionCreate(70),MinVersion(BE),Access(E3),FolderInfo1(000000000000000000000000000000000000),FolderInfo2(000000000000000000000000000000000000) -debug=Type(B3),AuxType(0000),VersionCreate(70),MinVersion(BE),Access(E3),FolderInfo1(000000000000000000000000000000000000),FolderInfo2(000000000000000000000000000000000000) assd=Type(B3),AuxType(0000),VersionCreate(70),MinVersion(BE),Access(E3),FolderInfo1(000000000000000000000000000000000000),FolderInfo2(000000000000000000000000000000000000) +ASSDDriver=Type(00),AuxType(0000),VersionCreate(70),MinVersion(BE),Access(E3),FolderInfo1(000000000000000000000000000000000000),FolderInfo2(000000000000000000000000000000000000) +debug=Type(00),AuxType(0000),VersionCreate(70),MinVersion(BE),Access(E3),FolderInfo1(000000000000000000000000000000000000),FolderInfo2(000000000000000000000000000000000000) diff --git a/applesqueezer/sdcard/assd.po b/applesqueezer/sdcard/assd.po index dfb44dd..2dbc798 100644 Binary files a/applesqueezer/sdcard/assd.po and b/applesqueezer/sdcard/assd.po differ diff --git a/applesqueezer/sdcard/debug b/applesqueezer/sdcard/debug index cbc310e..6d5a03b 100644 Binary files a/applesqueezer/sdcard/debug and b/applesqueezer/sdcard/debug differ diff --git a/applesqueezer/sdcard/debug old.s b/applesqueezer/sdcard/debug old.s new file mode 100644 index 0000000..a89e419 --- /dev/null +++ b/applesqueezer/sdcard/debug old.s @@ -0,0 +1,499 @@ +* +* Debug +* Play with the SD card +* +* (c) 2023, Brutal Deluxe Software +* Visit brutaldeluxe.fr +* + + xc + xc + mx %00 + + rel + dsk debug.l + lst off + +*---------- + + use 4/Int.Macs + use 4/Locator.Macs + use 4/Mem.Macs + use 4/Misc.Macs + use 4/Text.Macs + use 4/Util.Macs + +Debut = $00 +GSOS = $e100a8 + +*---------- + +dcREMOVE = $0004 +dcONLINE = $0010 +dcBLOCKDEVICE = $0080 + +maxDEVICES = 128 + +*---------- + + phk + plb + + tdc + sta myDP + + _TLStartUp + pha + _MMStartUp + pla + sta appID + ora #$0100 + sta myID + + _MTStartUp + _TextStartUp + + _IMStartUp + + pha + pha + PushLong #$010000 + PushWord myID + PushWord #%11000000_00011100 + PushLong #0 + _NewHandle + phd + tsc + tcd + lda [3] + sta ptrBUFFER + ldy #2 + lda [3],y + sta ptrBUFFER+2 + pld + ply + sty haBUFFER + plx + stx haBUFFER+2 + +*---------- + + PushWord #$00FF + PushWord #$0080 + _SetInGlobals + PushWord #$00FF + PushWord #$0080 + _SetOutGlobals + PushWord #$00FF + PushWord #$0080 + _SetErrGlobals + + PushWord #0 + PushLong #3 + _SetInputDevice + PushWord #0 + PushLong #3 + _SetOutputDevice + PushWord #0 + PushLong #3 + _SetErrorDevice + + PushWord #0 + _InitTextDev + PushWord #1 + _InitTextDev + PushWord #2 + _InitTextDev + + PushWord #$0c ; home + _WriteChar + +*---------------------------- +* MAIN MENU +*---------------------------- + +mainMENU PushLong #strMAINMENU + _WriteCString + + jsr pollDEVICES ; show CD-ROM devices + jsr waitFORKEY ; is it 0-9 + jmp doQUIT + +*--- Data + +strMAINMENU asc 0d'Debug ASSD'0d + asc '(c) 2023, Brutal Deluxe Software'0d0d00 + +*---------------------------- +* QUIT PROGRAM +*---------------------------- + +doQUIT _IMShutDown + _TextShutDown + _MTShutDown + + PushWord myID + _DisposeAll + + PushWord appID + _MMShutDown + + _TLShutDown + + jsl GSOS + dw $2029 + adrl proQUIT + + brk $bd + +*---------------------------- +* POLL DEVICES +*---------------------------- + +pollDEVICES lda #1 ; start with device 1 + sta proDINFO+2 + +]lp jsl GSOS ; do a DInfo + dw $202c + adrl proDINFO + bcc found + + cmp #$0011 ; no more devices + bne loop + rts + +loop inc proDINFO+2 + bra ]lp + +*---------- Show device + +found lda proDINFO+8 ; block device? + and #dcBLOCKDEVICE + beq loop + + lda devINFO1 ; from a STRL to a STR + xba + sta devINFO1 + + ldx #10 ; compare name +]lp lda devINFO2,x + cmp strDEVICE,x + bne loop + dex + dex + bpl ]lp + +*--- Show device ID + + lda proDINFO+2 + sta proDREAD+2 + sta proDWRITE+2 + sta proDSTATUS+2 + jsr showHEX + + PushWord #$20 + _WriteChar + +*--- Show Characteristics + + lda proDINFO+8 + jsr showHEX + + PushWord #$20 + _WriteChar + +*--- Show Name + + PushLong #devINFO2 + _WriteString + +*--- Perform a DStatus + + PushLong #strDSTATUS ; show the string + _WriteCString + + jsl GSOS + dw $202d + adrl proDSTATUS + jsr showERRCODE + +*--- Show device status characteristics + + PushLong #strCHARS ; show device characteristics + _WriteCString + + lda myLIST + jsr showHEX + +*--- Show device status number of blocks + + PushLong #strBLOCKS ; show number of blocks + _WriteCString + + lda myLIST+4 + jsr showHEX + lda myLIST+2 + jsr showWORD + +*--- Perform a DRead + +doREAD PushLong #strDREAD ; show the string + _WriteCString + +* jsr debugBORDER + + jsl GSOS + dw $202f + adrl proDREAD + pha + lda proDREAD+14 + jsr showWORD + lda proDREAD+12 + jsr showWORD + + PushWord #' ' + _WriteChar + lda proDREAD+20 + jsr showWORD + lda proDREAD+18 + jsr showWORD + + pla + jsr showERRCODE + jsr printBUFFER ; output two lines of buffer + + jsr waitFORKEY ; is it 0-9 + cmp #$1b + beq doEXIT + cmp #$9b + beq doEXIT + + inc proDREAD+12 + bne doREAD + inc proDREAD+14 + bra doREAD + + lda errCODE ; only write if read is OK + beq okWRITE +doEXIT rts + +*--- Perform a DWrite + +okWRITE PushLong #strDWRITE ; show the string + _WriteCString + + jsl GSOS + dw $2030 + adrl proDWRITE + jmp showERRCODE + +*--- Code end + +showERRCODE + sta errCODE ; save it + + PushLong #strERR ; show the string + _WriteCString + + lda errCODE ; show the error code + jsr showHEX + + PushWord #$0d + _WriteChar + rts + +*--- Print a line of buffer + +printBUFFER PushWord #$20 + _WriteChar + + lda myBUFFER + jsr printME + lda myBUFFER+2 + jsr printME + lda myBUFFER+4 + jsr printME + lda myBUFFER+6 + jsr printME + lda myBUFFER+8 + jsr printME + lda myBUFFER+10 + jsr printME + lda myBUFFER+12 + jsr printME + lda myBUFFER+14 + jsr printME + + PushWord #$0d + _WriteChar + + PushWord #$20 + _WriteChar + + lda myBUFFER+16 + jsr printME + lda myBUFFER+18 + jsr printME + lda myBUFFER+20 + jsr printME + lda myBUFFER+22 + jsr printME + lda myBUFFER+24 + jsr printME + lda myBUFFER+26 + jsr printME + lda myBUFFER+28 + jsr printME + lda myBUFFER+30 ; ends into the code below... + +printME pha ; from a word to a string + pha + pha ; <= here, really + _HexIt + PullLong strBUFFER + + PushLong #strBUFFER ; show the string + _WriteCString + rts + +*---------- Data + +strDREAD asc 0d0d'DRead block $'00 +strDWRITE asc 0d0d'DWrite '00 +strDSTATUS asc 0d0d'DStatus '00 + +strCHARS asc ' Characteristics: '00 +strBLOCKS asc 0d' Number of blocks: '00 + +strERR asc 0d'- Error code '00 + +*---------------------------- +* DEBUG +*---------------------------- + +debugBORDER + sep #$20 + ldal $c034 + inc + stal $c034 + rep #$20 + rts + +*---------------------------- +* TEXT ROUTINES +*---------------------------- + +*---------- Wait for a key + +waitFORKEY PushWord #0 ; wait for key + PushWord #1 ; echo char + _ReadChar + +waitKEY1 lda 1,s ; check CR + and #$ff ; of typed + sta 1,s ; in char + cmp #$8d + beq waitKEY9 + +waitKEY8 PushWord #$0d ; return + _WriteChar + +waitKEY9 pla ; restore entered char + rts + +*---------- Display a word + +showWORD pha ; from a word to a string + pha + pha ; <= here, really + _HexIt + PullLong strHEX + + PushLong #strHEX ; show the string + _WriteCString + rts + +*---------- Display a hex word with a $ + +showHEX pha ; from a word to a string + pha + pha ; <= here, really + _HexIt + PullLong strHEX + + PushLong #strHEX1 ; show the string + _WriteCString + rts + +*--- Data + +strHEX1 asc '$' +strHEX asc '0000'00 +strBUFFER asc '0000 '00 + +*---------------------------- +* DATA +*---------------------------- + +errCODE ds 2 + +proQUIT dw 2 ; pCount + ds 4 ; 02 pathname + ds 2 ; 06 flags + +proDINFO dw 8 ; Parms for DInfo + ds 2 ; 02 device num + adrl devINFO ; 04 device name + ds 2 ; 08 characteristics + ds 4 ; 0A total blocks + ds 2 ; 0E slot number + ds 2 ; 10 unit number + ds 2 ; 12 version + ds 2 ; 14 device id + +proDREAD dw 6 ; pCount + ds 2 ; 02 devNum + adrl myBUFFER ; 04 buffer + adrl 512 ; 08 requestCount + adrl 0 ; 0C startingBlock + dw 512 ; 10 blockSize + ds 4 ; 14 transferCount + +proDWRITE dw 6 ; pCount + ds 2 ; 02 devNum + adrl myBUFFER ; 04 buffer + adrl 512 ; 08 requestCount + adrl 0 ; 0C startingBlock + dw 512 ; 10 blockSize + ds 4 ; 14 transferCount + +proDSTATUS dw 5 ; pCount + ds 2 ; 02 devNum + ds 2 ; 04 code ($0000 = Device Status) + adrl myLIST ; 06 list + adrl 512 ; 0A requestCount (a big buffer) + ds 4 ; 0E transferCount + +*---------- + +strDEVICE str '.ASSDDevice' ; length is 12 chars (including length byte) + +devINFO dw $0032 ; buffer size +devINFO1 db $00 ; length +devINFO2 db $00 +devINFO3 ds $30 ; data + +*---------- + +appID ds 2 +myID ds 2 + +myDP ds 2 +ptrBUFFER ds 4 +haBUFFER ds 4 + +*---------- + +myBUFFER ds 512,$bd +myLIST ds 512 + diff --git a/applesqueezer/sdcard/debug.s b/applesqueezer/sdcard/debug.s index a89e419..460aa42 100644 --- a/applesqueezer/sdcard/debug.s +++ b/applesqueezer/sdcard/debug.s @@ -16,6 +16,14 @@ *---------- +SD_ADDRESS_SET_MSB = $e40000 +SD_ADDRESS_SET_MSB_1 = $e40002 +SD_ADDRESS_SET_MSB_2 = $e40004 +SD_ADDRESS_SET_MSB_3 = $e40006 +SD_START_READ = $e40008 ; starts reading the sector (if it was idle) +SD_READ = $e4000a +SD_START_WRITE = $e4000c ; starts writing the sector (if it was idle) + use 4/Int.Macs use 4/Locator.Macs use 4/Mem.Macs @@ -76,6 +84,11 @@ maxDEVICES = 128 plx stx haBUFFER+2 + lda #myBUFFER + stal $300 + lda #^myBUFFER + stal $302 + *---------- PushWord #$00FF @@ -242,10 +255,13 @@ doREAD PushLong #strDREAD ; show the string * jsr debugBORDER - jsl GSOS - dw $202f - adrl proDREAD - pha + jsr readablock + +* jsl GSOS +* dw $202f +* adrl proDREAD +* pha + lda proDREAD+14 jsr showWORD lda proDREAD+12 @@ -277,6 +293,31 @@ doREAD PushLong #strDREAD ; show the string beq okWRITE doEXIT rts +*--- + +readablock sep #$20 + lda proDREAD+15 + stal SD_ADDRESS_SET_MSB + lda proDREAD+14 + stal SD_ADDRESS_SET_MSB_1 + lda proDREAD+13 + stal SD_ADDRESS_SET_MSB_2 + lda proDREAD+12 + stal SD_ADDRESS_SET_MSB_3 + + lda #1 + stal SD_START_READ + + ldy #0 +]lp ldal SD_READ + sta myBUFFER,y + iny + cpy #512 + bne ]lp + rep #$20 + + rts + *--- Perform a DWrite okWRITE PushLong #strDWRITE ; show the string diff --git a/applesqueezer/sdcard/debug_Output.txt b/applesqueezer/sdcard/debug_Output.txt index 8b49c80..ccf9676 100644 --- a/applesqueezer/sdcard/debug_Output.txt +++ b/applesqueezer/sdcard/debug_Output.txt @@ -8,188 +8,201 @@ 5 | 1 debug.s 5 | Comment | 11 | | 0 | 00/0000 | * (c) 2023, Brutal Deluxe Software 6 | 1 debug.s 6 | Comment | 11 | | 0 | 00/0000 | * Visit brutaldeluxe.fr 7 | 1 debug.s 7 | Comment | 11 | | 0 | 00/0000 | * - 8 | 1 debug.s 8 | Empty | 11 | | 0 | 00/0000 | - 9 | 1 debug.s 9 | Directive | 11 | | 0 | 00/0000 | xc - 10 | 1 debug.s 10 | Directive | 11 | | 0 | 00/0000 | xc - 11 | 1 debug.s 11 | Directive | 00 | | 0 | 00/0000 | mx %00 - 12 | 1 debug.s 12 | Empty | 00 | | 0 | 00/0000 | - 13 | 1 debug.s 13 | Directive | 00 | | 0 | 00/0000 | rel - 14 | 1 debug.s 14 | Directive | 00 | | 0 | 00/0000 | dsk debug.l - 15 | 1 debug.s 15 | Directive | 00 | | 0 | 00/0000 | lst off - 16 | 1 debug.s 16 | Empty | 00 | | 0 | 00/0000 | + 8 | 1 debug.s 8 | Empty | 11 | | 0 | 00/0000 | + 9 | 1 debug.s 9 | Directive | 11 | | 0 | 00/0000 | xc + 10 | 1 debug.s 10 | Directive | 11 | | 0 | 00/0000 | xc + 11 | 1 debug.s 11 | Directive | 00 | | 0 | 00/0000 | mx %00 + 12 | 1 debug.s 12 | Empty | 00 | | 0 | 00/0000 | + 13 | 1 debug.s 13 | Directive | 00 | | 0 | 00/0000 | rel + 14 | 1 debug.s 14 | Directive | 00 | | 0 | 00/0000 | dsk debug.l + 15 | 1 debug.s 15 | Directive | 00 | | 0 | 00/0000 | lst off + 16 | 1 debug.s 16 | Empty | 00 | | 0 | 00/0000 | 17 | 1 debug.s 17 | Comment | 00 | | 0 | 00/0000 | *---------- - 18 | 1 debug.s 18 | Empty | 00 | | 0 | 00/0000 | - 19 | 1 debug.s 19 | Directive | 00 | | 0 | 00/0000 | use 4/Int.Macs - 20 | 1 debug.s 20 | Directive | 00 | | 0 | 00/0000 | use 4/Locator.Macs - 21 | 1 debug.s 21 | Directive | 00 | | 0 | 00/0000 | use 4/Mem.Macs - 22 | 1 debug.s 22 | Directive | 00 | | 0 | 00/0000 | use 4/Misc.Macs - 23 | 1 debug.s 23 | Directive | 00 | | 0 | 00/0000 | use 4/Text.Macs - 24 | 1 debug.s 24 | Directive | 00 | | 0 | 00/0000 | use 4/Util.Macs - 25 | 1 debug.s 25 | Empty | 00 | | 0 | 00/0000 | - 26 | 1 debug.s 26 | Equivalence | 00 | | 0 | 00/0000 | Debut = $00 - 27 | 1 debug.s 27 | Equivalence | 00 | | 0 | 00/0000 | GSOS = $e100a8 - 28 | 1 debug.s 28 | Empty | 00 | | 0 | 00/0000 | - 29 | 1 debug.s 29 | Comment | 00 | | 0 | 00/0000 | *---------- - 30 | 1 debug.s 30 | Empty | 00 | | 0 | 00/0000 | - 31 | 1 debug.s 31 | Equivalence | 00 | | 0 | 00/0000 | dcREMOVE = $0004 - 32 | 1 debug.s 32 | Equivalence | 00 | | 0 | 00/0000 | dcONLINE = $0010 - 33 | 1 debug.s 33 | Equivalence | 00 | | 0 | 00/0000 | dcBLOCKDEVICE = $0080 - 34 | 1 debug.s 34 | Empty | 00 | | 0 | 00/0000 | - 35 | 1 debug.s 35 | Equivalence | 00 | | 0 | 00/0000 | maxDEVICES = 128 - 36 | 1 debug.s 36 | Empty | 00 | | 0 | 00/0000 | + 18 | 1 debug.s 18 | Empty | 00 | | 0 | 00/0000 | + 19 | 1 debug.s 19 | Equivalence | 00 | | 0 | 00/0000 | SD_ADDRESS_SET_MSB = $e40000 + 20 | 1 debug.s 20 | Equivalence | 00 | | 0 | 00/0000 | SD_ADDRESS_SET_MSB_1 = $e40002 + 21 | 1 debug.s 21 | Equivalence | 00 | | 0 | 00/0000 | SD_ADDRESS_SET_MSB_2 = $e40004 + 22 | 1 debug.s 22 | Equivalence | 00 | | 0 | 00/0000 | SD_ADDRESS_SET_MSB_3 = $e40006 + 23 | 1 debug.s 23 | Equivalence | 00 | | 0 | 00/0000 | SD_START_READ = $e40008 ; starts reading the sector (if it was idle) + 24 | 1 debug.s 24 | Equivalence | 00 | | 0 | 00/0000 | SD_READ = $e4000a + 25 | 1 debug.s 25 | Equivalence | 00 | | 0 | 00/0000 | SD_START_WRITE = $e4000c ; starts writing the sector (if it was idle) + 26 | 1 debug.s 26 | Empty | 00 | | 0 | 00/0000 | + 27 | 1 debug.s 27 | Directive | 00 | | 0 | 00/0000 | use 4/Int.Macs + 28 | 1 debug.s 28 | Directive | 00 | | 0 | 00/0000 | use 4/Locator.Macs + 29 | 1 debug.s 29 | Directive | 00 | | 0 | 00/0000 | use 4/Mem.Macs + 30 | 1 debug.s 30 | Directive | 00 | | 0 | 00/0000 | use 4/Misc.Macs + 31 | 1 debug.s 31 | Directive | 00 | | 0 | 00/0000 | use 4/Text.Macs + 32 | 1 debug.s 32 | Directive | 00 | | 0 | 00/0000 | use 4/Util.Macs + 33 | 1 debug.s 33 | Empty | 00 | | 0 | 00/0000 | + 34 | 1 debug.s 34 | Equivalence | 00 | | 0 | 00/0000 | Debut = $00 + 35 | 1 debug.s 35 | Equivalence | 00 | | 0 | 00/0000 | GSOS = $e100a8 + 36 | 1 debug.s 36 | Empty | 00 | | 0 | 00/0000 | 37 | 1 debug.s 37 | Comment | 00 | | 0 | 00/0000 | *---------- - 38 | 1 debug.s 38 | Empty | 00 | | 0 | 00/0000 | - 39 | 1 debug.s 39 | Code | 00 | | 1 | 00/0000 : 4B | phk - 40 | 1 debug.s 40 | Code | 00 | | 1 | 00/0001 : AB | plb - 41 | 1 debug.s 41 | Empty | 00 | | 0 | 00/0002 | - 42 | 1 debug.s 42 | Code | 00 | | 1 | 00/0002 : 7B | tdc - 43 | 1 debug.s 43 | Code | 00 | 2 | 3 | 00/0003 : 8D D4 04 | sta myDP - 44 | 1 debug.s 44 | Empty | 00 | | 0 | 00/0006 | - 45 | 1 debug.s 45 | Macro | 00 | | 0 | 00/0006 | _TLStartUp - 47 | 1 debug.s 45 | Code | 00 | | 3 | 00/0006 : A2 01 02 | LDX #$201 ; load tool call # - 48 | 1 debug.s 45 | Code | 00 | | 4 | 00/0009 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 49 | 1 debug.s 46 | Code | 00 | | 1 | 00/000D : 48 | pha - 50 | 1 debug.s 47 | Macro | 00 | | 0 | 00/000E | _MMStartUp - 52 | 1 debug.s 47 | Code | 00 | | 3 | 00/000E : A2 02 02 | LDX #$202 ; load tool call # - 53 | 1 debug.s 47 | Code | 00 | | 4 | 00/0011 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 54 | 1 debug.s 48 | Code | 00 | | 1 | 00/0015 : 68 | pla - 55 | 1 debug.s 49 | Code | 00 | 2 | 3 | 00/0016 : 8D D0 04 | sta appID - 56 | 1 debug.s 50 | Code | 00 | | 3 | 00/0019 : 09 00 01 | ora #$0100 - 57 | 1 debug.s 51 | Code | 00 | 2 | 3 | 00/001C : 8D D2 04 | sta myID - 58 | 1 debug.s 52 | Empty | 00 | | 0 | 00/001F | - 59 | 1 debug.s 53 | Macro | 00 | | 0 | 00/001F | _MTStartUp - 61 | 1 debug.s 53 | Code | 00 | | 3 | 00/001F : A2 03 02 | LDX #$203 ; load tool call # - 62 | 1 debug.s 53 | Code | 00 | | 4 | 00/0022 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 63 | 1 debug.s 54 | Macro | 00 | | 0 | 00/0026 | _TextStartUp - 65 | 1 debug.s 54 | Code | 00 | | 3 | 00/0026 : A2 0C 02 | LDX #$20C ; load tool call # - 66 | 1 debug.s 54 | Code | 00 | | 4 | 00/0029 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 67 | 1 debug.s 55 | Empty | 00 | | 0 | 00/002D | - 68 | 1 debug.s 56 | Macro | 00 | | 0 | 00/002D | _IMStartUp - 70 | 1 debug.s 56 | Code | 00 | | 3 | 00/002D : A2 0B 02 | LDX #$20B ; load tool call # - 71 | 1 debug.s 56 | Code | 00 | | 4 | 00/0030 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 72 | 1 debug.s 57 | Empty | 00 | | 0 | 00/0034 | - 73 | 1 debug.s 58 | Code | 00 | | 1 | 00/0034 : 48 | pha - 74 | 1 debug.s 59 | Code | 00 | | 1 | 00/0035 : 48 | pha - 75 | 1 debug.s 60 | Macro | 00 | | 0 | 00/0036 | PushLong #$010000 - 79 | 1 debug.s 60 | Code | 00 | | 3 | 00/0036 : F4 01 00 | PEA #^#$010000 - 86 | 1 debug.s 60 | Code | 00 | | 3 | 00/0039 : F4 00 00 | PEA #$010000 - 89 | 1 debug.s 61 | Macro | 00 | | 0 | 00/003C | PushWord myID - 94 | 1 debug.s 61 | Code | 00 | 2 | 3 | 00/003C : AD D2 04 | LDA myID - 95 | 1 debug.s 61 | Code | 00 | | 1 | 00/003F : 48 | PHA - 97 | 1 debug.s 62 | Macro | 00 | | 0 | 00/0040 | PushWord #%11000000_00011100 - 99 | 1 debug.s 62 | Code | 00 | | 3 | 00/0040 : F4 1C C0 | PEA #%11000000_00011100 - 102 | 1 debug.s 63 | Macro | 00 | | 0 | 00/0043 | PushLong #0 - 106 | 1 debug.s 63 | Code | 00 | | 3 | 00/0043 : F4 00 00 | PEA #^#0 - 113 | 1 debug.s 63 | Code | 00 | | 3 | 00/0046 : F4 00 00 | PEA #0 - 116 | 1 debug.s 64 | Macro | 00 | | 0 | 00/0049 | _NewHandle - 118 | 1 debug.s 64 | Code | 00 | | 3 | 00/0049 : A2 02 09 | LDX #$902 ; load tool call # - 119 | 1 debug.s 64 | Code | 00 | | 4 | 00/004C : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 120 | 1 debug.s 65 | Code | 00 | | 1 | 00/0050 : 0B | phd - 121 | 1 debug.s 66 | Code | 00 | | 1 | 00/0051 : 3B | tsc - 122 | 1 debug.s 67 | Code | 00 | | 1 | 00/0052 : 5B | tcd - 123 | 1 debug.s 68 | Code | 00 | | 2 | 00/0053 : A7 03 | lda [3] - 124 | 1 debug.s 69 | Code | 00 | 2 | 3 | 00/0055 : 8D D6 04 | sta ptrBUFFER - 125 | 1 debug.s 70 | Code | 00 | | 3 | 00/0058 : A0 02 00 | ldy #2 - 126 | 1 debug.s 71 | Code | 00 | | 2 | 00/005B : B7 03 | lda [3],y - 127 | 1 debug.s 72 | Code | 00 | 2 | 3 | 00/005D : 8D D8 04 | sta ptrBUFFER+2 - 128 | 1 debug.s 73 | Code | 00 | | 1 | 00/0060 : 2B | pld - 129 | 1 debug.s 74 | Code | 00 | | 1 | 00/0061 : 7A | ply - 130 | 1 debug.s 75 | Code | 00 | 2 | 3 | 00/0062 : 8C DA 04 | sty haBUFFER - 131 | 1 debug.s 76 | Code | 00 | | 1 | 00/0065 : FA | plx - 132 | 1 debug.s 77 | Code | 00 | 2 | 3 | 00/0066 : 8E DC 04 | stx haBUFFER+2 - 133 | 1 debug.s 78 | Empty | 00 | | 0 | 00/0069 | - 134 | 1 debug.s 79 | Comment | 00 | | 0 | 00/0069 | *---------- - 135 | 1 debug.s 80 | Empty | 00 | | 0 | 00/0069 | - 136 | 1 debug.s 81 | Macro | 00 | | 0 | 00/0069 | PushWord #$00FF - 138 | 1 debug.s 81 | Code | 00 | | 3 | 00/0069 : F4 FF 00 | PEA #$00FF - 141 | 1 debug.s 82 | Macro | 00 | | 0 | 00/006C | PushWord #$0080 - 143 | 1 debug.s 82 | Code | 00 | | 3 | 00/006C : F4 80 00 | PEA #$0080 - 146 | 1 debug.s 83 | Macro | 00 | | 0 | 00/006F | _SetInGlobals - 148 | 1 debug.s 83 | Code | 00 | | 3 | 00/006F : A2 0C 09 | LDX #$90C ; load tool call # - 149 | 1 debug.s 83 | Code | 00 | | 4 | 00/0072 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 150 | 1 debug.s 84 | Macro | 00 | | 0 | 00/0076 | PushWord #$00FF - 152 | 1 debug.s 84 | Code | 00 | | 3 | 00/0076 : F4 FF 00 | PEA #$00FF - 155 | 1 debug.s 85 | Macro | 00 | | 0 | 00/0079 | PushWord #$0080 - 157 | 1 debug.s 85 | Code | 00 | | 3 | 00/0079 : F4 80 00 | PEA #$0080 - 160 | 1 debug.s 86 | Macro | 00 | | 0 | 00/007C | _SetOutGlobals - 162 | 1 debug.s 86 | Code | 00 | | 3 | 00/007C : A2 0C 0A | LDX #$A0C ; load tool call # - 163 | 1 debug.s 86 | Code | 00 | | 4 | 00/007F : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 164 | 1 debug.s 87 | Macro | 00 | | 0 | 00/0083 | PushWord #$00FF - 166 | 1 debug.s 87 | Code | 00 | | 3 | 00/0083 : F4 FF 00 | PEA #$00FF - 169 | 1 debug.s 88 | Macro | 00 | | 0 | 00/0086 | PushWord #$0080 - 171 | 1 debug.s 88 | Code | 00 | | 3 | 00/0086 : F4 80 00 | PEA #$0080 - 174 | 1 debug.s 89 | Macro | 00 | | 0 | 00/0089 | _SetErrGlobals - 176 | 1 debug.s 89 | Code | 00 | | 3 | 00/0089 : A2 0C 0B | LDX #$B0C ; load tool call # - 177 | 1 debug.s 89 | Code | 00 | | 4 | 00/008C : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 178 | 1 debug.s 90 | Empty | 00 | | 0 | 00/0090 | - 179 | 1 debug.s 91 | Macro | 00 | | 0 | 00/0090 | PushWord #0 - 181 | 1 debug.s 91 | Code | 00 | | 3 | 00/0090 : F4 00 00 | PEA #0 - 184 | 1 debug.s 92 | Macro | 00 | | 0 | 00/0093 | PushLong #3 - 188 | 1 debug.s 92 | Code | 00 | | 3 | 00/0093 : F4 00 00 | PEA #^#3 - 195 | 1 debug.s 92 | Code | 00 | | 3 | 00/0096 : F4 03 00 | PEA #3 - 198 | 1 debug.s 93 | Macro | 00 | | 0 | 00/0099 | _SetInputDevice - 200 | 1 debug.s 93 | Code | 00 | | 3 | 00/0099 : A2 0C 0F | LDX #$F0C ; load tool call # - 201 | 1 debug.s 93 | Code | 00 | | 4 | 00/009C : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 202 | 1 debug.s 94 | Macro | 00 | | 0 | 00/00A0 | PushWord #0 - 204 | 1 debug.s 94 | Code | 00 | | 3 | 00/00A0 : F4 00 00 | PEA #0 - 207 | 1 debug.s 95 | Macro | 00 | | 0 | 00/00A3 | PushLong #3 - 211 | 1 debug.s 95 | Code | 00 | | 3 | 00/00A3 : F4 00 00 | PEA #^#3 - 218 | 1 debug.s 95 | Code | 00 | | 3 | 00/00A6 : F4 03 00 | PEA #3 - 221 | 1 debug.s 96 | Macro | 00 | | 0 | 00/00A9 | _SetOutputDevice - 223 | 1 debug.s 96 | Code | 00 | | 3 | 00/00A9 : A2 0C 10 | LDX #$100C ; load tool call # - 224 | 1 debug.s 96 | Code | 00 | | 4 | 00/00AC : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 225 | 1 debug.s 97 | Macro | 00 | | 0 | 00/00B0 | PushWord #0 - 227 | 1 debug.s 97 | Code | 00 | | 3 | 00/00B0 : F4 00 00 | PEA #0 - 230 | 1 debug.s 98 | Macro | 00 | | 0 | 00/00B3 | PushLong #3 - 234 | 1 debug.s 98 | Code | 00 | | 3 | 00/00B3 : F4 00 00 | PEA #^#3 - 241 | 1 debug.s 98 | Code | 00 | | 3 | 00/00B6 : F4 03 00 | PEA #3 - 244 | 1 debug.s 99 | Macro | 00 | | 0 | 00/00B9 | _SetErrorDevice - 246 | 1 debug.s 99 | Code | 00 | | 3 | 00/00B9 : A2 0C 11 | LDX #$110C ; load tool call # - 247 | 1 debug.s 99 | Code | 00 | | 4 | 00/00BC : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 248 | 1 debug.s 100 | Empty | 00 | | 0 | 00/00C0 | - 249 | 1 debug.s 101 | Macro | 00 | | 0 | 00/00C0 | PushWord #0 - 251 | 1 debug.s 101 | Code | 00 | | 3 | 00/00C0 : F4 00 00 | PEA #0 - 254 | 1 debug.s 102 | Macro | 00 | | 0 | 00/00C3 | _InitTextDev - 256 | 1 debug.s 102 | Code | 00 | | 3 | 00/00C3 : A2 0C 15 | LDX #$150C ; load tool call # - 257 | 1 debug.s 102 | Code | 00 | | 4 | 00/00C6 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 258 | 1 debug.s 103 | Macro | 00 | | 0 | 00/00CA | PushWord #1 - 260 | 1 debug.s 103 | Code | 00 | | 3 | 00/00CA : F4 01 00 | PEA #1 - 263 | 1 debug.s 104 | Macro | 00 | | 0 | 00/00CD | _InitTextDev - 265 | 1 debug.s 104 | Code | 00 | | 3 | 00/00CD : A2 0C 15 | LDX #$150C ; load tool call # - 266 | 1 debug.s 104 | Code | 00 | | 4 | 00/00D0 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 267 | 1 debug.s 105 | Macro | 00 | | 0 | 00/00D4 | PushWord #2 - 269 | 1 debug.s 105 | Code | 00 | | 3 | 00/00D4 : F4 02 00 | PEA #2 - 272 | 1 debug.s 106 | Macro | 00 | | 0 | 00/00D7 | _InitTextDev - 274 | 1 debug.s 106 | Code | 00 | | 3 | 00/00D7 : A2 0C 15 | LDX #$150C ; load tool call # - 275 | 1 debug.s 106 | Code | 00 | | 4 | 00/00DA : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 276 | 1 debug.s 107 | Empty | 00 | | 0 | 00/00DE | - 277 | 1 debug.s 108 | Macro | 00 | | 0 | 00/00DE | PushWord #$0c ; home - 279 | 1 debug.s 108 | Code | 00 | | 3 | 00/00DE : F4 0C 00 | PEA #$0c - 282 | 1 debug.s 109 | Macro | 00 | | 0 | 00/00E1 | _WriteChar - 284 | 1 debug.s 109 | Code | 00 | | 3 | 00/00E1 : A2 0C 18 | LDX #$180C ; load tool call # - 285 | 1 debug.s 109 | Code | 00 | | 4 | 00/00E4 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 286 | 1 debug.s 110 | Empty | 00 | | 0 | 00/00E8 | - 287 | 1 debug.s 111 | Comment | 00 | | 0 | 00/00E8 | *---------------------------- - 288 | 1 debug.s 112 | Comment | 00 | | 0 | 00/00E8 | * MAIN MENU - 289 | 1 debug.s 113 | Comment | 00 | | 0 | 00/00E8 | *---------------------------- - 290 | 1 debug.s 114 | Empty | 00 | | 0 | 00/00E8 | - 291 | 1 debug.s 115 | Macro | 00 | | 0 | 00/00E8 | mainMENU PushLong #strMAINMENU - 295 | 1 debug.s 115 | Code | 00 | 1 >>16 | 3 | 00/00E8 : F4 00 00 | PEA #^#strMAINMENU - 302 | 1 debug.s 115 | Code | 00 | 2 | 3 | 00/00EB : F4 FE 00 | PEA #strMAINMENU - 305 | 1 debug.s 116 | Macro | 00 | | 0 | 00/00EE | _WriteCString - 307 | 1 debug.s 116 | Code | 00 | | 3 | 00/00EE : A2 0C 20 | LDX #$200C ; load tool call # - 308 | 1 debug.s 116 | Code | 00 | | 4 | 00/00F1 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 309 | 1 debug.s 117 | Empty | 00 | | 0 | 00/00F5 | - 310 | 1 debug.s 118 | Code | 00 | 2 | 3 | 00/00F5 : 20 6B 01 | jsr pollDEVICES ; show CD-ROM devices - 311 | 1 debug.s 119 | Code | 00 | 2 | 3 | 00/00F8 : 20 C1 03 | jsr waitFORKEY ; is it 0-9 - 312 | 1 debug.s 120 | Code | 00 | 2 | 3 | 00/00FB : 4C 2D 01 | jmp doQUIT - 313 | 1 debug.s 121 | Empty | 00 | | 0 | 00/00FE | - 314 | 1 debug.s 122 | Comment | 00 | | 0 | 00/00FE | *--- Data - 315 | 1 debug.s 123 | Empty | 00 | | 0 | 00/00FE | - 316 | 1 debug.s 124 | Data | 00 | | 12 | 00/00FE : 0D 44 65 62 | strMAINMENU asc 0d'Debug ASSD'0d + 38 | 1 debug.s 38 | Empty | 00 | | 0 | 00/0000 | + 39 | 1 debug.s 39 | Equivalence | 00 | | 0 | 00/0000 | dcREMOVE = $0004 + 40 | 1 debug.s 40 | Equivalence | 00 | | 0 | 00/0000 | dcONLINE = $0010 + 41 | 1 debug.s 41 | Equivalence | 00 | | 0 | 00/0000 | dcBLOCKDEVICE = $0080 + 42 | 1 debug.s 42 | Empty | 00 | | 0 | 00/0000 | + 43 | 1 debug.s 43 | Equivalence | 00 | | 0 | 00/0000 | maxDEVICES = 128 + 44 | 1 debug.s 44 | Empty | 00 | | 0 | 00/0000 | + 45 | 1 debug.s 45 | Comment | 00 | | 0 | 00/0000 | *---------- + 46 | 1 debug.s 46 | Empty | 00 | | 0 | 00/0000 | + 47 | 1 debug.s 47 | Code | 00 | | 1 | 00/0000 : 4B | phk + 48 | 1 debug.s 48 | Code | 00 | | 1 | 00/0001 : AB | plb + 49 | 1 debug.s 49 | Empty | 00 | | 0 | 00/0002 | + 50 | 1 debug.s 50 | Code | 00 | | 1 | 00/0002 : 7B | tdc + 51 | 1 debug.s 51 | Code | 00 | 2 | 3 | 00/0003 : 8D 11 05 | sta myDP + 52 | 1 debug.s 52 | Empty | 00 | | 0 | 00/0006 | + 53 | 1 debug.s 53 | Macro | 00 | | 0 | 00/0006 | _TLStartUp + 55 | 1 debug.s 53 | Code | 00 | | 3 | 00/0006 : A2 01 02 | LDX #$201 ; load tool call # + 56 | 1 debug.s 53 | Code | 00 | | 4 | 00/0009 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 57 | 1 debug.s 54 | Code | 00 | | 1 | 00/000D : 48 | pha + 58 | 1 debug.s 55 | Macro | 00 | | 0 | 00/000E | _MMStartUp + 60 | 1 debug.s 55 | Code | 00 | | 3 | 00/000E : A2 02 02 | LDX #$202 ; load tool call # + 61 | 1 debug.s 55 | Code | 00 | | 4 | 00/0011 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 62 | 1 debug.s 56 | Code | 00 | | 1 | 00/0015 : 68 | pla + 63 | 1 debug.s 57 | Code | 00 | 2 | 3 | 00/0016 : 8D 0D 05 | sta appID + 64 | 1 debug.s 58 | Code | 00 | | 3 | 00/0019 : 09 00 01 | ora #$0100 + 65 | 1 debug.s 59 | Code | 00 | 2 | 3 | 00/001C : 8D 0F 05 | sta myID + 66 | 1 debug.s 60 | Empty | 00 | | 0 | 00/001F | + 67 | 1 debug.s 61 | Macro | 00 | | 0 | 00/001F | _MTStartUp + 69 | 1 debug.s 61 | Code | 00 | | 3 | 00/001F : A2 03 02 | LDX #$203 ; load tool call # + 70 | 1 debug.s 61 | Code | 00 | | 4 | 00/0022 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 71 | 1 debug.s 62 | Macro | 00 | | 0 | 00/0026 | _TextStartUp + 73 | 1 debug.s 62 | Code | 00 | | 3 | 00/0026 : A2 0C 02 | LDX #$20C ; load tool call # + 74 | 1 debug.s 62 | Code | 00 | | 4 | 00/0029 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 75 | 1 debug.s 63 | Empty | 00 | | 0 | 00/002D | + 76 | 1 debug.s 64 | Macro | 00 | | 0 | 00/002D | _IMStartUp + 78 | 1 debug.s 64 | Code | 00 | | 3 | 00/002D : A2 0B 02 | LDX #$20B ; load tool call # + 79 | 1 debug.s 64 | Code | 00 | | 4 | 00/0030 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 80 | 1 debug.s 65 | Empty | 00 | | 0 | 00/0034 | + 81 | 1 debug.s 66 | Code | 00 | | 1 | 00/0034 : 48 | pha + 82 | 1 debug.s 67 | Code | 00 | | 1 | 00/0035 : 48 | pha + 83 | 1 debug.s 68 | Macro | 00 | | 0 | 00/0036 | PushLong #$010000 + 87 | 1 debug.s 68 | Code | 00 | | 3 | 00/0036 : F4 01 00 | PEA #^#$010000 + 94 | 1 debug.s 68 | Code | 00 | | 3 | 00/0039 : F4 00 00 | PEA #$010000 + 97 | 1 debug.s 69 | Macro | 00 | | 0 | 00/003C | PushWord myID + 102 | 1 debug.s 69 | Code | 00 | 2 | 3 | 00/003C : AD 0F 05 | LDA myID + 103 | 1 debug.s 69 | Code | 00 | | 1 | 00/003F : 48 | PHA + 105 | 1 debug.s 70 | Macro | 00 | | 0 | 00/0040 | PushWord #%11000000_00011100 + 107 | 1 debug.s 70 | Code | 00 | | 3 | 00/0040 : F4 1C C0 | PEA #%11000000_00011100 + 110 | 1 debug.s 71 | Macro | 00 | | 0 | 00/0043 | PushLong #0 + 114 | 1 debug.s 71 | Code | 00 | | 3 | 00/0043 : F4 00 00 | PEA #^#0 + 121 | 1 debug.s 71 | Code | 00 | | 3 | 00/0046 : F4 00 00 | PEA #0 + 124 | 1 debug.s 72 | Macro | 00 | | 0 | 00/0049 | _NewHandle + 126 | 1 debug.s 72 | Code | 00 | | 3 | 00/0049 : A2 02 09 | LDX #$902 ; load tool call # + 127 | 1 debug.s 72 | Code | 00 | | 4 | 00/004C : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 128 | 1 debug.s 73 | Code | 00 | | 1 | 00/0050 : 0B | phd + 129 | 1 debug.s 74 | Code | 00 | | 1 | 00/0051 : 3B | tsc + 130 | 1 debug.s 75 | Code | 00 | | 1 | 00/0052 : 5B | tcd + 131 | 1 debug.s 76 | Code | 00 | | 2 | 00/0053 : A7 03 | lda [3] + 132 | 1 debug.s 77 | Code | 00 | 2 | 3 | 00/0055 : 8D 13 05 | sta ptrBUFFER + 133 | 1 debug.s 78 | Code | 00 | | 3 | 00/0058 : A0 02 00 | ldy #2 + 134 | 1 debug.s 79 | Code | 00 | | 2 | 00/005B : B7 03 | lda [3],y + 135 | 1 debug.s 80 | Code | 00 | 2 | 3 | 00/005D : 8D 15 05 | sta ptrBUFFER+2 + 136 | 1 debug.s 81 | Code | 00 | | 1 | 00/0060 : 2B | pld + 137 | 1 debug.s 82 | Code | 00 | | 1 | 00/0061 : 7A | ply + 138 | 1 debug.s 83 | Code | 00 | 2 | 3 | 00/0062 : 8C 17 05 | sty haBUFFER + 139 | 1 debug.s 84 | Code | 00 | | 1 | 00/0065 : FA | plx + 140 | 1 debug.s 85 | Code | 00 | 2 | 3 | 00/0066 : 8E 19 05 | stx haBUFFER+2 + 141 | 1 debug.s 86 | Empty | 00 | | 0 | 00/0069 | + 142 | 1 debug.s 87 | Code | 00 | 2 | 3 | 00/0069 : A9 1B 05 | lda #myBUFFER + 143 | 1 debug.s 88 | Code | 00 | | 4 | 00/006C : 8F 00 03 00 | stal $300 + 144 | 1 debug.s 89 | Code | 00 | 1 >>16 | 3 | 00/0070 : A9 00 00 | lda #^myBUFFER + 145 | 1 debug.s 90 | Code | 00 | | 4 | 00/0073 : 8F 02 03 00 | stal $302 + 146 | 1 debug.s 91 | Empty | 00 | | 0 | 00/0077 | + 147 | 1 debug.s 92 | Comment | 00 | | 0 | 00/0077 | *---------- + 148 | 1 debug.s 93 | Empty | 00 | | 0 | 00/0077 | + 149 | 1 debug.s 94 | Macro | 00 | | 0 | 00/0077 | PushWord #$00FF + 151 | 1 debug.s 94 | Code | 00 | | 3 | 00/0077 : F4 FF 00 | PEA #$00FF + 154 | 1 debug.s 95 | Macro | 00 | | 0 | 00/007A | PushWord #$0080 + 156 | 1 debug.s 95 | Code | 00 | | 3 | 00/007A : F4 80 00 | PEA #$0080 + 159 | 1 debug.s 96 | Macro | 00 | | 0 | 00/007D | _SetInGlobals + 161 | 1 debug.s 96 | Code | 00 | | 3 | 00/007D : A2 0C 09 | LDX #$90C ; load tool call # + 162 | 1 debug.s 96 | Code | 00 | | 4 | 00/0080 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 163 | 1 debug.s 97 | Macro | 00 | | 0 | 00/0084 | PushWord #$00FF + 165 | 1 debug.s 97 | Code | 00 | | 3 | 00/0084 : F4 FF 00 | PEA #$00FF + 168 | 1 debug.s 98 | Macro | 00 | | 0 | 00/0087 | PushWord #$0080 + 170 | 1 debug.s 98 | Code | 00 | | 3 | 00/0087 : F4 80 00 | PEA #$0080 + 173 | 1 debug.s 99 | Macro | 00 | | 0 | 00/008A | _SetOutGlobals + 175 | 1 debug.s 99 | Code | 00 | | 3 | 00/008A : A2 0C 0A | LDX #$A0C ; load tool call # + 176 | 1 debug.s 99 | Code | 00 | | 4 | 00/008D : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 177 | 1 debug.s 100 | Macro | 00 | | 0 | 00/0091 | PushWord #$00FF + 179 | 1 debug.s 100 | Code | 00 | | 3 | 00/0091 : F4 FF 00 | PEA #$00FF + 182 | 1 debug.s 101 | Macro | 00 | | 0 | 00/0094 | PushWord #$0080 + 184 | 1 debug.s 101 | Code | 00 | | 3 | 00/0094 : F4 80 00 | PEA #$0080 + 187 | 1 debug.s 102 | Macro | 00 | | 0 | 00/0097 | _SetErrGlobals + 189 | 1 debug.s 102 | Code | 00 | | 3 | 00/0097 : A2 0C 0B | LDX #$B0C ; load tool call # + 190 | 1 debug.s 102 | Code | 00 | | 4 | 00/009A : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 191 | 1 debug.s 103 | Empty | 00 | | 0 | 00/009E | + 192 | 1 debug.s 104 | Macro | 00 | | 0 | 00/009E | PushWord #0 + 194 | 1 debug.s 104 | Code | 00 | | 3 | 00/009E : F4 00 00 | PEA #0 + 197 | 1 debug.s 105 | Macro | 00 | | 0 | 00/00A1 | PushLong #3 + 201 | 1 debug.s 105 | Code | 00 | | 3 | 00/00A1 : F4 00 00 | PEA #^#3 + 208 | 1 debug.s 105 | Code | 00 | | 3 | 00/00A4 : F4 03 00 | PEA #3 + 211 | 1 debug.s 106 | Macro | 00 | | 0 | 00/00A7 | _SetInputDevice + 213 | 1 debug.s 106 | Code | 00 | | 3 | 00/00A7 : A2 0C 0F | LDX #$F0C ; load tool call # + 214 | 1 debug.s 106 | Code | 00 | | 4 | 00/00AA : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 215 | 1 debug.s 107 | Macro | 00 | | 0 | 00/00AE | PushWord #0 + 217 | 1 debug.s 107 | Code | 00 | | 3 | 00/00AE : F4 00 00 | PEA #0 + 220 | 1 debug.s 108 | Macro | 00 | | 0 | 00/00B1 | PushLong #3 + 224 | 1 debug.s 108 | Code | 00 | | 3 | 00/00B1 : F4 00 00 | PEA #^#3 + 231 | 1 debug.s 108 | Code | 00 | | 3 | 00/00B4 : F4 03 00 | PEA #3 + 234 | 1 debug.s 109 | Macro | 00 | | 0 | 00/00B7 | _SetOutputDevice + 236 | 1 debug.s 109 | Code | 00 | | 3 | 00/00B7 : A2 0C 10 | LDX #$100C ; load tool call # + 237 | 1 debug.s 109 | Code | 00 | | 4 | 00/00BA : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 238 | 1 debug.s 110 | Macro | 00 | | 0 | 00/00BE | PushWord #0 + 240 | 1 debug.s 110 | Code | 00 | | 3 | 00/00BE : F4 00 00 | PEA #0 + 243 | 1 debug.s 111 | Macro | 00 | | 0 | 00/00C1 | PushLong #3 + 247 | 1 debug.s 111 | Code | 00 | | 3 | 00/00C1 : F4 00 00 | PEA #^#3 + 254 | 1 debug.s 111 | Code | 00 | | 3 | 00/00C4 : F4 03 00 | PEA #3 + 257 | 1 debug.s 112 | Macro | 00 | | 0 | 00/00C7 | _SetErrorDevice + 259 | 1 debug.s 112 | Code | 00 | | 3 | 00/00C7 : A2 0C 11 | LDX #$110C ; load tool call # + 260 | 1 debug.s 112 | Code | 00 | | 4 | 00/00CA : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 261 | 1 debug.s 113 | Empty | 00 | | 0 | 00/00CE | + 262 | 1 debug.s 114 | Macro | 00 | | 0 | 00/00CE | PushWord #0 + 264 | 1 debug.s 114 | Code | 00 | | 3 | 00/00CE : F4 00 00 | PEA #0 + 267 | 1 debug.s 115 | Macro | 00 | | 0 | 00/00D1 | _InitTextDev + 269 | 1 debug.s 115 | Code | 00 | | 3 | 00/00D1 : A2 0C 15 | LDX #$150C ; load tool call # + 270 | 1 debug.s 115 | Code | 00 | | 4 | 00/00D4 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 271 | 1 debug.s 116 | Macro | 00 | | 0 | 00/00D8 | PushWord #1 + 273 | 1 debug.s 116 | Code | 00 | | 3 | 00/00D8 : F4 01 00 | PEA #1 + 276 | 1 debug.s 117 | Macro | 00 | | 0 | 00/00DB | _InitTextDev + 278 | 1 debug.s 117 | Code | 00 | | 3 | 00/00DB : A2 0C 15 | LDX #$150C ; load tool call # + 279 | 1 debug.s 117 | Code | 00 | | 4 | 00/00DE : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 280 | 1 debug.s 118 | Macro | 00 | | 0 | 00/00E2 | PushWord #2 + 282 | 1 debug.s 118 | Code | 00 | | 3 | 00/00E2 : F4 02 00 | PEA #2 + 285 | 1 debug.s 119 | Macro | 00 | | 0 | 00/00E5 | _InitTextDev + 287 | 1 debug.s 119 | Code | 00 | | 3 | 00/00E5 : A2 0C 15 | LDX #$150C ; load tool call # + 288 | 1 debug.s 119 | Code | 00 | | 4 | 00/00E8 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 289 | 1 debug.s 120 | Empty | 00 | | 0 | 00/00EC | + 290 | 1 debug.s 121 | Macro | 00 | | 0 | 00/00EC | PushWord #$0c ; home + 292 | 1 debug.s 121 | Code | 00 | | 3 | 00/00EC : F4 0C 00 | PEA #$0c + 295 | 1 debug.s 122 | Macro | 00 | | 0 | 00/00EF | _WriteChar + 297 | 1 debug.s 122 | Code | 00 | | 3 | 00/00EF : A2 0C 18 | LDX #$180C ; load tool call # + 298 | 1 debug.s 122 | Code | 00 | | 4 | 00/00F2 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 299 | 1 debug.s 123 | Empty | 00 | | 0 | 00/00F6 | + 300 | 1 debug.s 124 | Comment | 00 | | 0 | 00/00F6 | *---------------------------- + 301 | 1 debug.s 125 | Comment | 00 | | 0 | 00/00F6 | * MAIN MENU + 302 | 1 debug.s 126 | Comment | 00 | | 0 | 00/00F6 | *---------------------------- + 303 | 1 debug.s 127 | Empty | 00 | | 0 | 00/00F6 | + 304 | 1 debug.s 128 | Macro | 00 | | 0 | 00/00F6 | mainMENU PushLong #strMAINMENU + 308 | 1 debug.s 128 | Code | 00 | 1 >>16 | 3 | 00/00F6 : F4 00 00 | PEA #^#strMAINMENU + 315 | 1 debug.s 128 | Code | 00 | 2 | 3 | 00/00F9 : F4 0C 01 | PEA #strMAINMENU + 318 | 1 debug.s 129 | Macro | 00 | | 0 | 00/00FC | _WriteCString + 320 | 1 debug.s 129 | Code | 00 | | 3 | 00/00FC : A2 0C 20 | LDX #$200C ; load tool call # + 321 | 1 debug.s 129 | Code | 00 | | 4 | 00/00FF : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 322 | 1 debug.s 130 | Empty | 00 | | 0 | 00/0103 | + 323 | 1 debug.s 131 | Code | 00 | 2 | 3 | 00/0103 : 20 79 01 | jsr pollDEVICES ; show CD-ROM devices + 324 | 1 debug.s 132 | Code | 00 | 2 | 3 | 00/0106 : 20 FE 03 | jsr waitFORKEY ; is it 0-9 + 325 | 1 debug.s 133 | Code | 00 | 2 | 3 | 00/0109 : 4C 3B 01 | jmp doQUIT + 326 | 1 debug.s 134 | Empty | 00 | | 0 | 00/010C | + 327 | 1 debug.s 135 | Comment | 00 | | 0 | 00/010C | *--- Data + 328 | 1 debug.s 136 | Empty | 00 | | 0 | 00/010C | + 329 | 1 debug.s 137 | Data | 00 | | 12 | 00/010C : 0D 44 65 62 | strMAINMENU asc 0d'Debug ASSD'0d | | | | | | 75 67 20 41 | | | | | | | 53 53 44 0D | - 317 | 1 debug.s 125 | Data | 00 | | 35 | 00/010A : 28 63 29 20 | asc '(c) 2023, Brutal Deluxe Software'0d0d00 + 330 | 1 debug.s 138 | Data | 00 | | 35 | 00/0118 : 28 63 29 20 | asc '(c) 2023, Brutal Deluxe Software'0d0d00 | | | | | | 32 30 32 33 | | | | | | | 2C 20 42 72 | | | | | | | 75 74 61 6C | @@ -198,490 +211,518 @@ | | | | | | 53 6F 66 74 | | | | | | | 77 61 72 65 | | | | | | | 0D 0D 00 | - 318 | 1 debug.s 126 | Empty | 00 | | 0 | 00/012D | - 319 | 1 debug.s 127 | Comment | 00 | | 0 | 00/012D | *---------------------------- - 320 | 1 debug.s 128 | Comment | 00 | | 0 | 00/012D | * QUIT PROGRAM - 321 | 1 debug.s 129 | Comment | 00 | | 0 | 00/012D | *---------------------------- - 322 | 1 debug.s 130 | Empty | 00 | | 0 | 00/012D | - 323 | 1 debug.s 131 | Macro | 00 | | 0 | 00/012D | doQUIT _IMShutDown - 325 | 1 debug.s 131 | Code | 00 | | 3 | 00/012D : A2 0B 03 | LDX #$30B ; load tool call # - 326 | 1 debug.s 131 | Code | 00 | | 4 | 00/0130 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 327 | 1 debug.s 132 | Macro | 00 | | 0 | 00/0134 | _TextShutDown - 329 | 1 debug.s 132 | Code | 00 | | 3 | 00/0134 : A2 0C 03 | LDX #$30C ; load tool call # - 330 | 1 debug.s 132 | Code | 00 | | 4 | 00/0137 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 331 | 1 debug.s 133 | Macro | 00 | | 0 | 00/013B | _MTShutDown - 333 | 1 debug.s 133 | Code | 00 | | 3 | 00/013B : A2 03 03 | LDX #$303 ; load tool call # - 334 | 1 debug.s 133 | Code | 00 | | 4 | 00/013E : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 335 | 1 debug.s 134 | Empty | 00 | | 0 | 00/0142 | - 336 | 1 debug.s 135 | Macro | 00 | | 0 | 00/0142 | PushWord myID - 341 | 1 debug.s 135 | Code | 00 | 2 | 3 | 00/0142 : AD D2 04 | LDA myID - 342 | 1 debug.s 135 | Code | 00 | | 1 | 00/0145 : 48 | PHA - 344 | 1 debug.s 136 | Macro | 00 | | 0 | 00/0146 | _DisposeAll - 346 | 1 debug.s 136 | Code | 00 | | 3 | 00/0146 : A2 02 11 | LDX #$1102 ; load tool call # - 347 | 1 debug.s 136 | Code | 00 | | 4 | 00/0149 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 348 | 1 debug.s 137 | Empty | 00 | | 0 | 00/014D | - 349 | 1 debug.s 138 | Macro | 00 | | 0 | 00/014D | PushWord appID - 354 | 1 debug.s 138 | Code | 00 | 2 | 3 | 00/014D : AD D0 04 | LDA appID - 355 | 1 debug.s 138 | Code | 00 | | 1 | 00/0150 : 48 | PHA - 357 | 1 debug.s 139 | Macro | 00 | | 0 | 00/0151 | _MMShutDown - 359 | 1 debug.s 139 | Code | 00 | | 3 | 00/0151 : A2 02 03 | LDX #$302 ; load tool call # - 360 | 1 debug.s 139 | Code | 00 | | 4 | 00/0154 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 361 | 1 debug.s 140 | Empty | 00 | | 0 | 00/0158 | - 362 | 1 debug.s 141 | Macro | 00 | | 0 | 00/0158 | _TLShutDown - 364 | 1 debug.s 141 | Code | 00 | | 3 | 00/0158 : A2 01 03 | LDX #$301 ; load tool call # - 365 | 1 debug.s 141 | Code | 00 | | 4 | 00/015B : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 366 | 1 debug.s 142 | Empty | 00 | | 0 | 00/015F | - 367 | 1 debug.s 143 | Code | 00 | | 4 | 00/015F : 22 A8 00 E1 | jsl {$e100a8} - 368 | 1 debug.s 144 | Data | 00 | | 2 | 00/0163 : 29 20 | dw $2029 - 369 | 1 debug.s 145 | Data | 00 | 3 | 4 | 00/0165 : 34 04 00 00 | adrl proQUIT - 370 | 1 debug.s 146 | Empty | 00 | | 0 | 00/0169 | - 371 | 1 debug.s 147 | Code | 00 | | 2 | 00/0169 : 00 BD | brk $bd - 372 | 1 debug.s 148 | Empty | 00 | | 0 | 00/016B | - 373 | 1 debug.s 149 | Comment | 00 | | 0 | 00/016B | *---------------------------- - 374 | 1 debug.s 150 | Comment | 00 | | 0 | 00/016B | * POLL DEVICES - 375 | 1 debug.s 151 | Comment | 00 | | 0 | 00/016B | *---------------------------- - 376 | 1 debug.s 152 | Empty | 00 | | 0 | 00/016B | - 377 | 1 debug.s 153 | Code | 00 | | 3 | 00/016B : A9 01 00 | pollDEVICES lda #1 ; start with device 1 - 378 | 1 debug.s 154 | Code | 00 | 2 | 3 | 00/016E : 8D 3E 04 | sta proDINFO+2 - 379 | 1 debug.s 155 | Empty | 00 | | 0 | 00/0171 | - 380 | 1 debug.s 156 | Code | 00 | | 4 | 00/0171 : 22 A8 00 E1 | ozunid_1 jsl {$e100a8} ; do a DInfo - 381 | 1 debug.s 157 | Data | 00 | | 2 | 00/0175 : 2C 20 | dw $202c - 382 | 1 debug.s 158 | Data | 00 | 3 | 4 | 00/0177 : 3C 04 00 00 | adrl proDINFO - 383 | 1 debug.s 159 | Code | 00 | | 2 | 00/017B : 90 0B | bcc found - 384 | 1 debug.s 160 | Empty | 00 | | 0 | 00/017D | - 385 | 1 debug.s 161 | Code | 00 | | 3 | 00/017D : C9 11 00 | cmp #$0011 ; no more devices - 386 | 1 debug.s 162 | Code | 00 | | 2 | 00/0180 : D0 01 | bne loop - 387 | 1 debug.s 163 | Code | 00 | | 1 | 00/0182 : 60 | rts - 388 | 1 debug.s 164 | Empty | 00 | | 0 | 00/0183 | - 389 | 1 debug.s 165 | Code | 00 | 2 | 3 | 00/0183 : EE 3E 04 | loop inc proDINFO+2 - 390 | 1 debug.s 166 | Code | 00 | | 2 | 00/0186 : 80 E9 | bra ozunid_1 - 391 | 1 debug.s 167 | Empty | 00 | | 0 | 00/0188 | - 392 | 1 debug.s 168 | Comment | 00 | | 0 | 00/0188 | *---------- Show device - 393 | 1 debug.s 169 | Empty | 00 | | 0 | 00/0188 | - 394 | 1 debug.s 170 | Code | 00 | 2 | 3 | 00/0188 : AD 44 04 | found lda proDINFO+8 ; block device? - 395 | 1 debug.s 171 | Code | 00 | | 3 | 00/018B : 29 80 00 | and #{$0080} - 396 | 1 debug.s 172 | Code | 00 | | 2 | 00/018E : F0 F3 | beq loop - 397 | 1 debug.s 173 | Empty | 00 | | 0 | 00/0190 | - 398 | 1 debug.s 174 | Code | 00 | 2 | 3 | 00/0190 : AD 9E 04 | lda devINFO1 ; from a STRL to a STR - 399 | 1 debug.s 175 | Code | 00 | | 1 | 00/0193 : EB | xba - 400 | 1 debug.s 176 | Code | 00 | 2 | 3 | 00/0194 : 8D 9E 04 | sta devINFO1 - 401 | 1 debug.s 177 | Empty | 00 | | 0 | 00/0197 | - 402 | 1 debug.s 178 | Code | 00 | | 3 | 00/0197 : A2 0A 00 | ldx #10 ; compare name - 403 | 1 debug.s 179 | Code | 00 | 2 | 3 | 00/019A : BD 9F 04 | ozunid_2 lda devINFO2,x - 404 | 1 debug.s 180 | Code | 00 | 2 | 3 | 00/019D : DD 90 04 | cmp strDEVICE,x - 405 | 1 debug.s 181 | Code | 00 | | 2 | 00/01A0 : D0 E1 | bne loop - 406 | 1 debug.s 182 | Code | 00 | | 1 | 00/01A2 : CA | dex - 407 | 1 debug.s 183 | Code | 00 | | 1 | 00/01A3 : CA | dex - 408 | 1 debug.s 184 | Code | 00 | | 2 | 00/01A4 : 10 F4 | bpl ozunid_2 - 409 | 1 debug.s 185 | Empty | 00 | | 0 | 00/01A6 | - 410 | 1 debug.s 186 | Comment | 00 | | 0 | 00/01A6 | *--- Show device ID - 411 | 1 debug.s 187 | Empty | 00 | | 0 | 00/01A6 | - 412 | 1 debug.s 188 | Code | 00 | 2 | 3 | 00/01A6 : AD 3E 04 | lda proDINFO+2 - 413 | 1 debug.s 189 | Code | 00 | 2 | 3 | 00/01A9 : 8D 54 04 | sta proDREAD+2 - 414 | 1 debug.s 190 | Code | 00 | 2 | 3 | 00/01AC : 8D 6A 04 | sta proDWRITE+2 - 415 | 1 debug.s 191 | Code | 00 | 2 | 3 | 00/01AF : 8D 80 04 | sta proDSTATUS+2 - 416 | 1 debug.s 192 | Code | 00 | 2 | 3 | 00/01B2 : 20 06 04 | jsr showHEX - 417 | 1 debug.s 193 | Empty | 00 | | 0 | 00/01B5 | - 418 | 1 debug.s 194 | Macro | 00 | | 0 | 00/01B5 | PushWord #$20 - 420 | 1 debug.s 194 | Code | 00 | | 3 | 00/01B5 : F4 20 00 | PEA #$20 - 423 | 1 debug.s 195 | Macro | 00 | | 0 | 00/01B8 | _WriteChar - 425 | 1 debug.s 195 | Code | 00 | | 3 | 00/01B8 : A2 0C 18 | LDX #$180C ; load tool call # - 426 | 1 debug.s 195 | Code | 00 | | 4 | 00/01BB : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 427 | 1 debug.s 196 | Empty | 00 | | 0 | 00/01BF | - 428 | 1 debug.s 197 | Comment | 00 | | 0 | 00/01BF | *--- Show Characteristics - 429 | 1 debug.s 198 | Empty | 00 | | 0 | 00/01BF | - 430 | 1 debug.s 199 | Code | 00 | 2 | 3 | 00/01BF : AD 44 04 | lda proDINFO+8 - 431 | 1 debug.s 200 | Code | 00 | 2 | 3 | 00/01C2 : 20 06 04 | jsr showHEX - 432 | 1 debug.s 201 | Empty | 00 | | 0 | 00/01C5 | - 433 | 1 debug.s 202 | Macro | 00 | | 0 | 00/01C5 | PushWord #$20 - 435 | 1 debug.s 202 | Code | 00 | | 3 | 00/01C5 : F4 20 00 | PEA #$20 - 438 | 1 debug.s 203 | Macro | 00 | | 0 | 00/01C8 | _WriteChar - 440 | 1 debug.s 203 | Code | 00 | | 3 | 00/01C8 : A2 0C 18 | LDX #$180C ; load tool call # - 441 | 1 debug.s 203 | Code | 00 | | 4 | 00/01CB : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 442 | 1 debug.s 204 | Empty | 00 | | 0 | 00/01CF | - 443 | 1 debug.s 205 | Comment | 00 | | 0 | 00/01CF | *--- Show Name - 444 | 1 debug.s 206 | Empty | 00 | | 0 | 00/01CF | - 445 | 1 debug.s 207 | Macro | 00 | | 0 | 00/01CF | PushLong #devINFO2 - 449 | 1 debug.s 207 | Code | 00 | 1 >>16 | 3 | 00/01CF : F4 00 00 | PEA #^#devINFO2 - 456 | 1 debug.s 207 | Code | 00 | 2 | 3 | 00/01D2 : F4 9F 04 | PEA #devINFO2 - 459 | 1 debug.s 208 | Macro | 00 | | 0 | 00/01D5 | _WriteString - 461 | 1 debug.s 208 | Code | 00 | | 3 | 00/01D5 : A2 0C 1C | LDX #$1C0C ; load tool call # - 462 | 1 debug.s 208 | Code | 00 | | 4 | 00/01D8 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 463 | 1 debug.s 209 | Empty | 00 | | 0 | 00/01DC | - 464 | 1 debug.s 210 | Comment | 00 | | 0 | 00/01DC | *--- Perform a DStatus - 465 | 1 debug.s 211 | Empty | 00 | | 0 | 00/01DC | - 466 | 1 debug.s 212 | Macro | 00 | | 0 | 00/01DC | PushLong #strDSTATUS ; show the string - 470 | 1 debug.s 212 | Code | 00 | 1 >>16 | 3 | 00/01DC : F4 00 00 | PEA #^#strDSTATUS - 477 | 1 debug.s 212 | Code | 00 | 2 | 3 | 00/01DF : F4 70 03 | PEA #strDSTATUS - 480 | 1 debug.s 213 | Macro | 00 | | 0 | 00/01E2 | _WriteCString - 482 | 1 debug.s 213 | Code | 00 | | 3 | 00/01E2 : A2 0C 20 | LDX #$200C ; load tool call # - 483 | 1 debug.s 213 | Code | 00 | | 4 | 00/01E5 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 484 | 1 debug.s 214 | Empty | 00 | | 0 | 00/01E9 | - 485 | 1 debug.s 215 | Code | 00 | | 4 | 00/01E9 : 22 A8 00 E1 | jsl {$e100a8} - 486 | 1 debug.s 216 | Data | 00 | | 2 | 00/01ED : 2D 20 | dw $202d - 487 | 1 debug.s 217 | Data | 00 | 3 | 4 | 00/01EF : 7E 04 00 00 | adrl proDSTATUS - 488 | 1 debug.s 218 | Code | 00 | 2 | 3 | 00/01F3 : 20 9A 02 | jsr showERRCODE - 489 | 1 debug.s 219 | Empty | 00 | | 0 | 00/01F6 | - 490 | 1 debug.s 220 | Comment | 00 | | 0 | 00/01F6 | *--- Show device status characteristics - 491 | 1 debug.s 221 | Empty | 00 | | 0 | 00/01F6 | - 492 | 1 debug.s 222 | Macro | 00 | | 0 | 00/01F6 | PushLong #strCHARS ; show device characteristics - 496 | 1 debug.s 222 | Code | 00 | 1 >>16 | 3 | 00/01F6 : F4 00 00 | PEA #^#strCHARS - 503 | 1 debug.s 222 | Code | 00 | 2 | 3 | 00/01F9 : F4 7B 03 | PEA #strCHARS - 506 | 1 debug.s 223 | Macro | 00 | | 0 | 00/01FC | _WriteCString - 508 | 1 debug.s 223 | Code | 00 | | 3 | 00/01FC : A2 0C 20 | LDX #$200C ; load tool call # - 509 | 1 debug.s 223 | Code | 00 | | 4 | 00/01FF : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 510 | 1 debug.s 224 | Empty | 00 | | 0 | 00/0203 | - 511 | 1 debug.s 225 | Code | 00 | 2 | 3 | 00/0203 : AD DE 06 | lda myLIST - 512 | 1 debug.s 226 | Code | 00 | 2 | 3 | 00/0206 : 20 06 04 | jsr showHEX - 513 | 1 debug.s 227 | Empty | 00 | | 0 | 00/0209 | - 514 | 1 debug.s 228 | Comment | 00 | | 0 | 00/0209 | *--- Show device status number of blocks - 515 | 1 debug.s 229 | Empty | 00 | | 0 | 00/0209 | - 516 | 1 debug.s 230 | Macro | 00 | | 0 | 00/0209 | PushLong #strBLOCKS ; show number of blocks - 520 | 1 debug.s 230 | Code | 00 | 1 >>16 | 3 | 00/0209 : F4 00 00 | PEA #^#strBLOCKS - 527 | 1 debug.s 230 | Code | 00 | 2 | 3 | 00/020C : F4 8F 03 | PEA #strBLOCKS - 530 | 1 debug.s 231 | Macro | 00 | | 0 | 00/020F | _WriteCString - 532 | 1 debug.s 231 | Code | 00 | | 3 | 00/020F : A2 0C 20 | LDX #$200C ; load tool call # - 533 | 1 debug.s 231 | Code | 00 | | 4 | 00/0212 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 534 | 1 debug.s 232 | Empty | 00 | | 0 | 00/0216 | - 535 | 1 debug.s 233 | Code | 00 | 2 | 3 | 00/0216 : AD E2 06 | lda myLIST+4 - 536 | 1 debug.s 234 | Code | 00 | 2 | 3 | 00/0219 : 20 06 04 | jsr showHEX - 537 | 1 debug.s 235 | Code | 00 | 2 | 3 | 00/021C : AD E0 06 | lda myLIST+2 - 538 | 1 debug.s 236 | Code | 00 | 2 | 3 | 00/021F : 20 E6 03 | jsr showWORD - 539 | 1 debug.s 237 | Empty | 00 | | 0 | 00/0222 | - 540 | 1 debug.s 238 | Comment | 00 | | 0 | 00/0222 | *--- Perform a DRead - 541 | 1 debug.s 239 | Empty | 00 | | 0 | 00/0222 | - 542 | 1 debug.s 240 | Macro | 00 | | 0 | 00/0222 | doREAD PushLong #strDREAD ; show the string - 546 | 1 debug.s 240 | Code | 00 | 1 >>16 | 3 | 00/0222 : F4 00 00 | PEA #^#strDREAD - 553 | 1 debug.s 240 | Code | 00 | 2 | 3 | 00/0225 : F4 56 03 | PEA #strDREAD - 556 | 1 debug.s 241 | Macro | 00 | | 0 | 00/0228 | _WriteCString - 558 | 1 debug.s 241 | Code | 00 | | 3 | 00/0228 : A2 0C 20 | LDX #$200C ; load tool call # - 559 | 1 debug.s 241 | Code | 00 | | 4 | 00/022B : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 560 | 1 debug.s 242 | Empty | 00 | | 0 | 00/022F | - 561 | 1 debug.s 243 | Comment | 00 | | 0 | 00/022F | * jsr debugBORDER - 562 | 1 debug.s 244 | Empty | 00 | | 0 | 00/022F | - 563 | 1 debug.s 245 | Code | 00 | | 4 | 00/022F : 22 A8 00 E1 | jsl {$e100a8} - 564 | 1 debug.s 246 | Data | 00 | | 2 | 00/0233 : 2F 20 | dw $202f - 565 | 1 debug.s 247 | Data | 00 | 3 | 4 | 00/0235 : 52 04 00 00 | adrl proDREAD - 566 | 1 debug.s 248 | Code | 00 | | 1 | 00/0239 : 48 | pha - 567 | 1 debug.s 249 | Code | 00 | 2 | 3 | 00/023A : AD 60 04 | lda proDREAD+14 - 568 | 1 debug.s 250 | Code | 00 | 2 | 3 | 00/023D : 20 E6 03 | jsr showWORD - 569 | 1 debug.s 251 | Code | 00 | 2 | 3 | 00/0240 : AD 5E 04 | lda proDREAD+12 - 570 | 1 debug.s 252 | Code | 00 | 2 | 3 | 00/0243 : 20 E6 03 | jsr showWORD - 571 | 1 debug.s 253 | Empty | 00 | | 0 | 00/0246 | - 572 | 1 debug.s 254 | Macro | 00 | | 0 | 00/0246 | PushWord #' ' - 574 | 1 debug.s 254 | Code | 00 | | 3 | 00/0246 : F4 20 00 | PEA #' ' - 577 | 1 debug.s 255 | Macro | 00 | | 0 | 00/0249 | _WriteChar - 579 | 1 debug.s 255 | Code | 00 | | 3 | 00/0249 : A2 0C 18 | LDX #$180C ; load tool call # - 580 | 1 debug.s 255 | Code | 00 | | 4 | 00/024C : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 581 | 1 debug.s 256 | Code | 00 | 2 | 3 | 00/0250 : AD 66 04 | lda proDREAD+20 - 582 | 1 debug.s 257 | Code | 00 | 2 | 3 | 00/0253 : 20 E6 03 | jsr showWORD - 583 | 1 debug.s 258 | Code | 00 | 2 | 3 | 00/0256 : AD 64 04 | lda proDREAD+18 - 584 | 1 debug.s 259 | Code | 00 | 2 | 3 | 00/0259 : 20 E6 03 | jsr showWORD - 585 | 1 debug.s 260 | Empty | 00 | | 0 | 00/025C | - 586 | 1 debug.s 261 | Code | 00 | | 1 | 00/025C : 68 | pla - 587 | 1 debug.s 262 | Code | 00 | 2 | 3 | 00/025D : 20 9A 02 | jsr showERRCODE - 588 | 1 debug.s 263 | Code | 00 | 2 | 3 | 00/0260 : 20 BB 02 | jsr printBUFFER ; output two lines of buffer - 589 | 1 debug.s 264 | Empty | 00 | | 0 | 00/0263 | - 590 | 1 debug.s 265 | Code | 00 | 2 | 3 | 00/0263 : 20 C1 03 | jsr waitFORKEY ; is it 0-9 - 591 | 1 debug.s 266 | Code | 00 | | 3 | 00/0266 : C9 1B 00 | cmp #$1b - 592 | 1 debug.s 267 | Code | 00 | | 2 | 00/0269 : F0 14 | beq doEXIT - 593 | 1 debug.s 268 | Code | 00 | | 3 | 00/026B : C9 9B 00 | cmp #$9b - 594 | 1 debug.s 269 | Code | 00 | | 2 | 00/026E : F0 0F | beq doEXIT - 595 | 1 debug.s 270 | Empty | 00 | | 0 | 00/0270 | - 596 | 1 debug.s 271 | Code | 00 | 2 | 3 | 00/0270 : EE 5E 04 | inc proDREAD+12 - 597 | 1 debug.s 272 | Code | 00 | | 2 | 00/0273 : D0 AD | bne doREAD - 598 | 1 debug.s 273 | Code | 00 | 2 | 3 | 00/0275 : EE 60 04 | inc proDREAD+14 - 599 | 1 debug.s 274 | Code | 00 | | 2 | 00/0278 : 80 A8 | bra doREAD - 600 | 1 debug.s 275 | Empty | 00 | | 0 | 00/027A | - 601 | 1 debug.s 276 | Code | 00 | 2 | 3 | 00/027A : AD 32 04 | lda errCODE ; only write if read is OK - 602 | 1 debug.s 277 | Code | 00 | | 2 | 00/027D : F0 01 | beq okWRITE - 603 | 1 debug.s 278 | Code | 00 | | 1 | 00/027F : 60 | doEXIT rts - 604 | 1 debug.s 279 | Empty | 00 | | 0 | 00/0280 | - 605 | 1 debug.s 280 | Comment | 00 | | 0 | 00/0280 | *--- Perform a DWrite - 606 | 1 debug.s 281 | Empty | 00 | | 0 | 00/0280 | - 607 | 1 debug.s 282 | Macro | 00 | | 0 | 00/0280 | okWRITE PushLong #strDWRITE ; show the string - 611 | 1 debug.s 282 | Code | 00 | 1 >>16 | 3 | 00/0280 : F4 00 00 | PEA #^#strDWRITE - 618 | 1 debug.s 282 | Code | 00 | 2 | 3 | 00/0283 : F4 66 03 | PEA #strDWRITE - 621 | 1 debug.s 283 | Macro | 00 | | 0 | 00/0286 | _WriteCString - 623 | 1 debug.s 283 | Code | 00 | | 3 | 00/0286 : A2 0C 20 | LDX #$200C ; load tool call # - 624 | 1 debug.s 283 | Code | 00 | | 4 | 00/0289 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 625 | 1 debug.s 284 | Empty | 00 | | 0 | 00/028D | - 626 | 1 debug.s 285 | Code | 00 | | 4 | 00/028D : 22 A8 00 E1 | jsl {$e100a8} - 627 | 1 debug.s 286 | Data | 00 | | 2 | 00/0291 : 30 20 | dw $2030 - 628 | 1 debug.s 287 | Data | 00 | 3 | 4 | 00/0293 : 68 04 00 00 | adrl proDWRITE - 629 | 1 debug.s 288 | Code | 00 | 2 | 3 | 00/0297 : 4C 9A 02 | jmp showERRCODE - 630 | 1 debug.s 289 | Empty | 00 | | 0 | 00/029A | - 631 | 1 debug.s 290 | Comment | 00 | | 0 | 00/029A | *--- Code end - 632 | 1 debug.s 291 | Empty | 00 | | 0 | 00/029A | - 633 | 1 debug.s 292 | Empty | 00 | | 0 | 00/029A | showERRCODE - 634 | 1 debug.s 293 | Code | 00 | 2 | 3 | 00/029A : 8D 32 04 | sta errCODE ; save it - 635 | 1 debug.s 294 | Empty | 00 | | 0 | 00/029D | - 636 | 1 debug.s 295 | Macro | 00 | | 0 | 00/029D | PushLong #strERR ; show the string - 640 | 1 debug.s 295 | Code | 00 | 1 >>16 | 3 | 00/029D : F4 00 00 | PEA #^#strERR - 647 | 1 debug.s 295 | Code | 00 | 2 | 3 | 00/02A0 : F4 A4 03 | PEA #strERR - 650 | 1 debug.s 296 | Macro | 00 | | 0 | 00/02A3 | _WriteCString - 652 | 1 debug.s 296 | Code | 00 | | 3 | 00/02A3 : A2 0C 20 | LDX #$200C ; load tool call # - 653 | 1 debug.s 296 | Code | 00 | | 4 | 00/02A6 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 654 | 1 debug.s 297 | Empty | 00 | | 0 | 00/02AA | - 655 | 1 debug.s 298 | Code | 00 | 2 | 3 | 00/02AA : AD 32 04 | lda errCODE ; show the error code - 656 | 1 debug.s 299 | Code | 00 | 2 | 3 | 00/02AD : 20 06 04 | jsr showHEX - 657 | 1 debug.s 300 | Empty | 00 | | 0 | 00/02B0 | - 658 | 1 debug.s 301 | Macro | 00 | | 0 | 00/02B0 | PushWord #$0d - 660 | 1 debug.s 301 | Code | 00 | | 3 | 00/02B0 : F4 0D 00 | PEA #$0d - 663 | 1 debug.s 302 | Macro | 00 | | 0 | 00/02B3 | _WriteChar - 665 | 1 debug.s 302 | Code | 00 | | 3 | 00/02B3 : A2 0C 18 | LDX #$180C ; load tool call # - 666 | 1 debug.s 302 | Code | 00 | | 4 | 00/02B6 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 667 | 1 debug.s 303 | Code | 00 | | 1 | 00/02BA : 60 | rts - 668 | 1 debug.s 304 | Empty | 00 | | 0 | 00/02BB | - 669 | 1 debug.s 305 | Comment | 00 | | 0 | 00/02BB | *--- Print a line of buffer - 670 | 1 debug.s 306 | Empty | 00 | | 0 | 00/02BB | - 671 | 1 debug.s 307 | Macro | 00 | | 0 | 00/02BB | printBUFFER PushWord #$20 - 673 | 1 debug.s 307 | Code | 00 | | 3 | 00/02BB : F4 20 00 | PEA #$20 - 676 | 1 debug.s 308 | Macro | 00 | | 0 | 00/02BE | _WriteChar - 678 | 1 debug.s 308 | Code | 00 | | 3 | 00/02BE : A2 0C 18 | LDX #$180C ; load tool call # - 679 | 1 debug.s 308 | Code | 00 | | 4 | 00/02C1 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 680 | 1 debug.s 309 | Empty | 00 | | 0 | 00/02C5 | - 681 | 1 debug.s 310 | Code | 00 | 2 | 3 | 00/02C5 : AD DE 04 | lda myBUFFER - 682 | 1 debug.s 311 | Code | 00 | 2 | 3 | 00/02C8 : 20 36 03 | jsr printME - 683 | 1 debug.s 312 | Code | 00 | 2 | 3 | 00/02CB : AD E0 04 | lda myBUFFER+2 - 684 | 1 debug.s 313 | Code | 00 | 2 | 3 | 00/02CE : 20 36 03 | jsr printME - 685 | 1 debug.s 314 | Code | 00 | 2 | 3 | 00/02D1 : AD E2 04 | lda myBUFFER+4 - 686 | 1 debug.s 315 | Code | 00 | 2 | 3 | 00/02D4 : 20 36 03 | jsr printME - 687 | 1 debug.s 316 | Code | 00 | 2 | 3 | 00/02D7 : AD E4 04 | lda myBUFFER+6 - 688 | 1 debug.s 317 | Code | 00 | 2 | 3 | 00/02DA : 20 36 03 | jsr printME - 689 | 1 debug.s 318 | Code | 00 | 2 | 3 | 00/02DD : AD E6 04 | lda myBUFFER+8 - 690 | 1 debug.s 319 | Code | 00 | 2 | 3 | 00/02E0 : 20 36 03 | jsr printME - 691 | 1 debug.s 320 | Code | 00 | 2 | 3 | 00/02E3 : AD E8 04 | lda myBUFFER+10 - 692 | 1 debug.s 321 | Code | 00 | 2 | 3 | 00/02E6 : 20 36 03 | jsr printME - 693 | 1 debug.s 322 | Code | 00 | 2 | 3 | 00/02E9 : AD EA 04 | lda myBUFFER+12 - 694 | 1 debug.s 323 | Code | 00 | 2 | 3 | 00/02EC : 20 36 03 | jsr printME - 695 | 1 debug.s 324 | Code | 00 | 2 | 3 | 00/02EF : AD EC 04 | lda myBUFFER+14 - 696 | 1 debug.s 325 | Code | 00 | 2 | 3 | 00/02F2 : 20 36 03 | jsr printME - 697 | 1 debug.s 326 | Empty | 00 | | 0 | 00/02F5 | - 698 | 1 debug.s 327 | Macro | 00 | | 0 | 00/02F5 | PushWord #$0d - 700 | 1 debug.s 327 | Code | 00 | | 3 | 00/02F5 : F4 0D 00 | PEA #$0d - 703 | 1 debug.s 328 | Macro | 00 | | 0 | 00/02F8 | _WriteChar - 705 | 1 debug.s 328 | Code | 00 | | 3 | 00/02F8 : A2 0C 18 | LDX #$180C ; load tool call # - 706 | 1 debug.s 328 | Code | 00 | | 4 | 00/02FB : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 707 | 1 debug.s 329 | Empty | 00 | | 0 | 00/02FF | - 708 | 1 debug.s 330 | Macro | 00 | | 0 | 00/02FF | PushWord #$20 - 710 | 1 debug.s 330 | Code | 00 | | 3 | 00/02FF : F4 20 00 | PEA #$20 - 713 | 1 debug.s 331 | Macro | 00 | | 0 | 00/0302 | _WriteChar - 715 | 1 debug.s 331 | Code | 00 | | 3 | 00/0302 : A2 0C 18 | LDX #$180C ; load tool call # - 716 | 1 debug.s 331 | Code | 00 | | 4 | 00/0305 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 717 | 1 debug.s 332 | Empty | 00 | | 0 | 00/0309 | - 718 | 1 debug.s 333 | Code | 00 | 2 | 3 | 00/0309 : AD EE 04 | lda myBUFFER+16 - 719 | 1 debug.s 334 | Code | 00 | 2 | 3 | 00/030C : 20 36 03 | jsr printME - 720 | 1 debug.s 335 | Code | 00 | 2 | 3 | 00/030F : AD F0 04 | lda myBUFFER+18 - 721 | 1 debug.s 336 | Code | 00 | 2 | 3 | 00/0312 : 20 36 03 | jsr printME - 722 | 1 debug.s 337 | Code | 00 | 2 | 3 | 00/0315 : AD F2 04 | lda myBUFFER+20 - 723 | 1 debug.s 338 | Code | 00 | 2 | 3 | 00/0318 : 20 36 03 | jsr printME - 724 | 1 debug.s 339 | Code | 00 | 2 | 3 | 00/031B : AD F4 04 | lda myBUFFER+22 - 725 | 1 debug.s 340 | Code | 00 | 2 | 3 | 00/031E : 20 36 03 | jsr printME - 726 | 1 debug.s 341 | Code | 00 | 2 | 3 | 00/0321 : AD F6 04 | lda myBUFFER+24 - 727 | 1 debug.s 342 | Code | 00 | 2 | 3 | 00/0324 : 20 36 03 | jsr printME - 728 | 1 debug.s 343 | Code | 00 | 2 | 3 | 00/0327 : AD F8 04 | lda myBUFFER+26 - 729 | 1 debug.s 344 | Code | 00 | 2 | 3 | 00/032A : 20 36 03 | jsr printME - 730 | 1 debug.s 345 | Code | 00 | 2 | 3 | 00/032D : AD FA 04 | lda myBUFFER+28 - 731 | 1 debug.s 346 | Code | 00 | 2 | 3 | 00/0330 : 20 36 03 | jsr printME - 732 | 1 debug.s 347 | Code | 00 | 2 | 3 | 00/0333 : AD FC 04 | lda myBUFFER+30 ; ends into the code below... - 733 | 1 debug.s 348 | Empty | 00 | | 0 | 00/0336 | - 734 | 1 debug.s 349 | Code | 00 | | 1 | 00/0336 : 48 | printME pha ; from a word to a string - 735 | 1 debug.s 350 | Code | 00 | | 1 | 00/0337 : 48 | pha - 736 | 1 debug.s 351 | Code | 00 | | 1 | 00/0338 : 48 | pha ; <= here, really - 737 | 1 debug.s 352 | Macro | 00 | | 0 | 00/0339 | _HexIt - 739 | 1 debug.s 352 | Code | 00 | | 3 | 00/0339 : A2 0B 2A | LDX #$2A0B ; load tool call # - 740 | 1 debug.s 352 | Code | 00 | | 4 | 00/033C : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 741 | 1 debug.s 353 | Macro | 00 | | 0 | 00/0340 | PullLong strBUFFER - 744 | 1 debug.s 353 | Code | 00 | | 1 | 00/0340 : 68 | PLA - 746 | 1 debug.s 353 | Code | 00 | 2 | 3 | 00/0341 : 8D 2C 04 | STA strBUFFER - 751 | 1 debug.s 353 | Code | 00 | | 1 | 00/0344 : 68 | PLA - 753 | 1 debug.s 353 | Code | 00 | 2 | 3 | 00/0345 : 8D 2E 04 | STA strBUFFER+2 - 759 | 1 debug.s 354 | Empty | 00 | | 0 | 00/0348 | - 760 | 1 debug.s 355 | Macro | 00 | | 0 | 00/0348 | PushLong #strBUFFER ; show the string - 764 | 1 debug.s 355 | Code | 00 | 1 >>16 | 3 | 00/0348 : F4 00 00 | PEA #^#strBUFFER - 771 | 1 debug.s 355 | Code | 00 | 2 | 3 | 00/034B : F4 2C 04 | PEA #strBUFFER - 774 | 1 debug.s 356 | Macro | 00 | | 0 | 00/034E | _WriteCString - 776 | 1 debug.s 356 | Code | 00 | | 3 | 00/034E : A2 0C 20 | LDX #$200C ; load tool call # - 777 | 1 debug.s 356 | Code | 00 | | 4 | 00/0351 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 778 | 1 debug.s 357 | Code | 00 | | 1 | 00/0355 : 60 | rts - 779 | 1 debug.s 358 | Empty | 00 | | 0 | 00/0356 | - 780 | 1 debug.s 359 | Comment | 00 | | 0 | 00/0356 | *---------- Data - 781 | 1 debug.s 360 | Empty | 00 | | 0 | 00/0356 | - 782 | 1 debug.s 361 | Data | 00 | | 16 | 00/0356 : 0D 0D 44 52 | strDREAD asc 0d0d'DRead block $'00 + 331 | 1 debug.s 139 | Empty | 00 | | 0 | 00/013B | + 332 | 1 debug.s 140 | Comment | 00 | | 0 | 00/013B | *---------------------------- + 333 | 1 debug.s 141 | Comment | 00 | | 0 | 00/013B | * QUIT PROGRAM + 334 | 1 debug.s 142 | Comment | 00 | | 0 | 00/013B | *---------------------------- + 335 | 1 debug.s 143 | Empty | 00 | | 0 | 00/013B | + 336 | 1 debug.s 144 | Macro | 00 | | 0 | 00/013B | doQUIT _IMShutDown + 338 | 1 debug.s 144 | Code | 00 | | 3 | 00/013B : A2 0B 03 | LDX #$30B ; load tool call # + 339 | 1 debug.s 144 | Code | 00 | | 4 | 00/013E : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 340 | 1 debug.s 145 | Macro | 00 | | 0 | 00/0142 | _TextShutDown + 342 | 1 debug.s 145 | Code | 00 | | 3 | 00/0142 : A2 0C 03 | LDX #$30C ; load tool call # + 343 | 1 debug.s 145 | Code | 00 | | 4 | 00/0145 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 344 | 1 debug.s 146 | Macro | 00 | | 0 | 00/0149 | _MTShutDown + 346 | 1 debug.s 146 | Code | 00 | | 3 | 00/0149 : A2 03 03 | LDX #$303 ; load tool call # + 347 | 1 debug.s 146 | Code | 00 | | 4 | 00/014C : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 348 | 1 debug.s 147 | Empty | 00 | | 0 | 00/0150 | + 349 | 1 debug.s 148 | Macro | 00 | | 0 | 00/0150 | PushWord myID + 354 | 1 debug.s 148 | Code | 00 | 2 | 3 | 00/0150 : AD 0F 05 | LDA myID + 355 | 1 debug.s 148 | Code | 00 | | 1 | 00/0153 : 48 | PHA + 357 | 1 debug.s 149 | Macro | 00 | | 0 | 00/0154 | _DisposeAll + 359 | 1 debug.s 149 | Code | 00 | | 3 | 00/0154 : A2 02 11 | LDX #$1102 ; load tool call # + 360 | 1 debug.s 149 | Code | 00 | | 4 | 00/0157 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 361 | 1 debug.s 150 | Empty | 00 | | 0 | 00/015B | + 362 | 1 debug.s 151 | Macro | 00 | | 0 | 00/015B | PushWord appID + 367 | 1 debug.s 151 | Code | 00 | 2 | 3 | 00/015B : AD 0D 05 | LDA appID + 368 | 1 debug.s 151 | Code | 00 | | 1 | 00/015E : 48 | PHA + 370 | 1 debug.s 152 | Macro | 00 | | 0 | 00/015F | _MMShutDown + 372 | 1 debug.s 152 | Code | 00 | | 3 | 00/015F : A2 02 03 | LDX #$302 ; load tool call # + 373 | 1 debug.s 152 | Code | 00 | | 4 | 00/0162 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 374 | 1 debug.s 153 | Empty | 00 | | 0 | 00/0166 | + 375 | 1 debug.s 154 | Macro | 00 | | 0 | 00/0166 | _TLShutDown + 377 | 1 debug.s 154 | Code | 00 | | 3 | 00/0166 : A2 01 03 | LDX #$301 ; load tool call # + 378 | 1 debug.s 154 | Code | 00 | | 4 | 00/0169 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 379 | 1 debug.s 155 | Empty | 00 | | 0 | 00/016D | + 380 | 1 debug.s 156 | Code | 00 | | 4 | 00/016D : 22 A8 00 E1 | jsl {$e100a8} + 381 | 1 debug.s 157 | Data | 00 | | 2 | 00/0171 : 29 20 | dw $2029 + 382 | 1 debug.s 158 | Data | 00 | 3 | 4 | 00/0173 : 71 04 00 00 | adrl proQUIT + 383 | 1 debug.s 159 | Empty | 00 | | 0 | 00/0177 | + 384 | 1 debug.s 160 | Code | 00 | | 2 | 00/0177 : 00 BD | brk $bd + 385 | 1 debug.s 161 | Empty | 00 | | 0 | 00/0179 | + 386 | 1 debug.s 162 | Comment | 00 | | 0 | 00/0179 | *---------------------------- + 387 | 1 debug.s 163 | Comment | 00 | | 0 | 00/0179 | * POLL DEVICES + 388 | 1 debug.s 164 | Comment | 00 | | 0 | 00/0179 | *---------------------------- + 389 | 1 debug.s 165 | Empty | 00 | | 0 | 00/0179 | + 390 | 1 debug.s 166 | Code | 00 | | 3 | 00/0179 : A9 01 00 | pollDEVICES lda #1 ; start with device 1 + 391 | 1 debug.s 167 | Code | 00 | 2 | 3 | 00/017C : 8D 7B 04 | sta proDINFO+2 + 392 | 1 debug.s 168 | Empty | 00 | | 0 | 00/017F | + 393 | 1 debug.s 169 | Code | 00 | | 4 | 00/017F : 22 A8 00 E1 | ozunid_1 jsl {$e100a8} ; do a DInfo + 394 | 1 debug.s 170 | Data | 00 | | 2 | 00/0183 : 2C 20 | dw $202c + 395 | 1 debug.s 171 | Data | 00 | 3 | 4 | 00/0185 : 79 04 00 00 | adrl proDINFO + 396 | 1 debug.s 172 | Code | 00 | | 2 | 00/0189 : 90 0B | bcc found + 397 | 1 debug.s 173 | Empty | 00 | | 0 | 00/018B | + 398 | 1 debug.s 174 | Code | 00 | | 3 | 00/018B : C9 11 00 | cmp #$0011 ; no more devices + 399 | 1 debug.s 175 | Code | 00 | | 2 | 00/018E : D0 01 | bne loop + 400 | 1 debug.s 176 | Code | 00 | | 1 | 00/0190 : 60 | rts + 401 | 1 debug.s 177 | Empty | 00 | | 0 | 00/0191 | + 402 | 1 debug.s 178 | Code | 00 | 2 | 3 | 00/0191 : EE 7B 04 | loop inc proDINFO+2 + 403 | 1 debug.s 179 | Code | 00 | | 2 | 00/0194 : 80 E9 | bra ozunid_1 + 404 | 1 debug.s 180 | Empty | 00 | | 0 | 00/0196 | + 405 | 1 debug.s 181 | Comment | 00 | | 0 | 00/0196 | *---------- Show device + 406 | 1 debug.s 182 | Empty | 00 | | 0 | 00/0196 | + 407 | 1 debug.s 183 | Code | 00 | 2 | 3 | 00/0196 : AD 81 04 | found lda proDINFO+8 ; block device? + 408 | 1 debug.s 184 | Code | 00 | | 3 | 00/0199 : 29 80 00 | and #{$0080} + 409 | 1 debug.s 185 | Code | 00 | | 2 | 00/019C : F0 F3 | beq loop + 410 | 1 debug.s 186 | Empty | 00 | | 0 | 00/019E | + 411 | 1 debug.s 187 | Code | 00 | 2 | 3 | 00/019E : AD DB 04 | lda devINFO1 ; from a STRL to a STR + 412 | 1 debug.s 188 | Code | 00 | | 1 | 00/01A1 : EB | xba + 413 | 1 debug.s 189 | Code | 00 | 2 | 3 | 00/01A2 : 8D DB 04 | sta devINFO1 + 414 | 1 debug.s 190 | Empty | 00 | | 0 | 00/01A5 | + 415 | 1 debug.s 191 | Code | 00 | | 3 | 00/01A5 : A2 0A 00 | ldx #10 ; compare name + 416 | 1 debug.s 192 | Code | 00 | 2 | 3 | 00/01A8 : BD DC 04 | ozunid_2 lda devINFO2,x + 417 | 1 debug.s 193 | Code | 00 | 2 | 3 | 00/01AB : DD CD 04 | cmp strDEVICE,x + 418 | 1 debug.s 194 | Code | 00 | | 2 | 00/01AE : D0 E1 | bne loop + 419 | 1 debug.s 195 | Code | 00 | | 1 | 00/01B0 : CA | dex + 420 | 1 debug.s 196 | Code | 00 | | 1 | 00/01B1 : CA | dex + 421 | 1 debug.s 197 | Code | 00 | | 2 | 00/01B2 : 10 F4 | bpl ozunid_2 + 422 | 1 debug.s 198 | Empty | 00 | | 0 | 00/01B4 | + 423 | 1 debug.s 199 | Comment | 00 | | 0 | 00/01B4 | *--- Show device ID + 424 | 1 debug.s 200 | Empty | 00 | | 0 | 00/01B4 | + 425 | 1 debug.s 201 | Code | 00 | 2 | 3 | 00/01B4 : AD 7B 04 | lda proDINFO+2 + 426 | 1 debug.s 202 | Code | 00 | 2 | 3 | 00/01B7 : 8D 91 04 | sta proDREAD+2 + 427 | 1 debug.s 203 | Code | 00 | 2 | 3 | 00/01BA : 8D A7 04 | sta proDWRITE+2 + 428 | 1 debug.s 204 | Code | 00 | 2 | 3 | 00/01BD : 8D BD 04 | sta proDSTATUS+2 + 429 | 1 debug.s 205 | Code | 00 | 2 | 3 | 00/01C0 : 20 43 04 | jsr showHEX + 430 | 1 debug.s 206 | Empty | 00 | | 0 | 00/01C3 | + 431 | 1 debug.s 207 | Macro | 00 | | 0 | 00/01C3 | PushWord #$20 + 433 | 1 debug.s 207 | Code | 00 | | 3 | 00/01C3 : F4 20 00 | PEA #$20 + 436 | 1 debug.s 208 | Macro | 00 | | 0 | 00/01C6 | _WriteChar + 438 | 1 debug.s 208 | Code | 00 | | 3 | 00/01C6 : A2 0C 18 | LDX #$180C ; load tool call # + 439 | 1 debug.s 208 | Code | 00 | | 4 | 00/01C9 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 440 | 1 debug.s 209 | Empty | 00 | | 0 | 00/01CD | + 441 | 1 debug.s 210 | Comment | 00 | | 0 | 00/01CD | *--- Show Characteristics + 442 | 1 debug.s 211 | Empty | 00 | | 0 | 00/01CD | + 443 | 1 debug.s 212 | Code | 00 | 2 | 3 | 00/01CD : AD 81 04 | lda proDINFO+8 + 444 | 1 debug.s 213 | Code | 00 | 2 | 3 | 00/01D0 : 20 43 04 | jsr showHEX + 445 | 1 debug.s 214 | Empty | 00 | | 0 | 00/01D3 | + 446 | 1 debug.s 215 | Macro | 00 | | 0 | 00/01D3 | PushWord #$20 + 448 | 1 debug.s 215 | Code | 00 | | 3 | 00/01D3 : F4 20 00 | PEA #$20 + 451 | 1 debug.s 216 | Macro | 00 | | 0 | 00/01D6 | _WriteChar + 453 | 1 debug.s 216 | Code | 00 | | 3 | 00/01D6 : A2 0C 18 | LDX #$180C ; load tool call # + 454 | 1 debug.s 216 | Code | 00 | | 4 | 00/01D9 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 455 | 1 debug.s 217 | Empty | 00 | | 0 | 00/01DD | + 456 | 1 debug.s 218 | Comment | 00 | | 0 | 00/01DD | *--- Show Name + 457 | 1 debug.s 219 | Empty | 00 | | 0 | 00/01DD | + 458 | 1 debug.s 220 | Macro | 00 | | 0 | 00/01DD | PushLong #devINFO2 + 462 | 1 debug.s 220 | Code | 00 | 1 >>16 | 3 | 00/01DD : F4 00 00 | PEA #^#devINFO2 + 469 | 1 debug.s 220 | Code | 00 | 2 | 3 | 00/01E0 : F4 DC 04 | PEA #devINFO2 + 472 | 1 debug.s 221 | Macro | 00 | | 0 | 00/01E3 | _WriteString + 474 | 1 debug.s 221 | Code | 00 | | 3 | 00/01E3 : A2 0C 1C | LDX #$1C0C ; load tool call # + 475 | 1 debug.s 221 | Code | 00 | | 4 | 00/01E6 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 476 | 1 debug.s 222 | Empty | 00 | | 0 | 00/01EA | + 477 | 1 debug.s 223 | Comment | 00 | | 0 | 00/01EA | *--- Perform a DStatus + 478 | 1 debug.s 224 | Empty | 00 | | 0 | 00/01EA | + 479 | 1 debug.s 225 | Macro | 00 | | 0 | 00/01EA | PushLong #strDSTATUS ; show the string + 483 | 1 debug.s 225 | Code | 00 | 1 >>16 | 3 | 00/01EA : F4 00 00 | PEA #^#strDSTATUS + 490 | 1 debug.s 225 | Code | 00 | 2 | 3 | 00/01ED : F4 AD 03 | PEA #strDSTATUS + 493 | 1 debug.s 226 | Macro | 00 | | 0 | 00/01F0 | _WriteCString + 495 | 1 debug.s 226 | Code | 00 | | 3 | 00/01F0 : A2 0C 20 | LDX #$200C ; load tool call # + 496 | 1 debug.s 226 | Code | 00 | | 4 | 00/01F3 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 497 | 1 debug.s 227 | Empty | 00 | | 0 | 00/01F7 | + 498 | 1 debug.s 228 | Code | 00 | | 4 | 00/01F7 : 22 A8 00 E1 | jsl {$e100a8} + 499 | 1 debug.s 229 | Data | 00 | | 2 | 00/01FB : 2D 20 | dw $202d + 500 | 1 debug.s 230 | Data | 00 | 3 | 4 | 00/01FD : BB 04 00 00 | adrl proDSTATUS + 501 | 1 debug.s 231 | Code | 00 | 2 | 3 | 00/0201 : 20 D7 02 | jsr showERRCODE + 502 | 1 debug.s 232 | Empty | 00 | | 0 | 00/0204 | + 503 | 1 debug.s 233 | Comment | 00 | | 0 | 00/0204 | *--- Show device status characteristics + 504 | 1 debug.s 234 | Empty | 00 | | 0 | 00/0204 | + 505 | 1 debug.s 235 | Macro | 00 | | 0 | 00/0204 | PushLong #strCHARS ; show device characteristics + 509 | 1 debug.s 235 | Code | 00 | 1 >>16 | 3 | 00/0204 : F4 00 00 | PEA #^#strCHARS + 516 | 1 debug.s 235 | Code | 00 | 2 | 3 | 00/0207 : F4 B8 03 | PEA #strCHARS + 519 | 1 debug.s 236 | Macro | 00 | | 0 | 00/020A | _WriteCString + 521 | 1 debug.s 236 | Code | 00 | | 3 | 00/020A : A2 0C 20 | LDX #$200C ; load tool call # + 522 | 1 debug.s 236 | Code | 00 | | 4 | 00/020D : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 523 | 1 debug.s 237 | Empty | 00 | | 0 | 00/0211 | + 524 | 1 debug.s 238 | Code | 00 | 2 | 3 | 00/0211 : AD 1B 07 | lda myLIST + 525 | 1 debug.s 239 | Code | 00 | 2 | 3 | 00/0214 : 20 43 04 | jsr showHEX + 526 | 1 debug.s 240 | Empty | 00 | | 0 | 00/0217 | + 527 | 1 debug.s 241 | Comment | 00 | | 0 | 00/0217 | *--- Show device status number of blocks + 528 | 1 debug.s 242 | Empty | 00 | | 0 | 00/0217 | + 529 | 1 debug.s 243 | Macro | 00 | | 0 | 00/0217 | PushLong #strBLOCKS ; show number of blocks + 533 | 1 debug.s 243 | Code | 00 | 1 >>16 | 3 | 00/0217 : F4 00 00 | PEA #^#strBLOCKS + 540 | 1 debug.s 243 | Code | 00 | 2 | 3 | 00/021A : F4 CC 03 | PEA #strBLOCKS + 543 | 1 debug.s 244 | Macro | 00 | | 0 | 00/021D | _WriteCString + 545 | 1 debug.s 244 | Code | 00 | | 3 | 00/021D : A2 0C 20 | LDX #$200C ; load tool call # + 546 | 1 debug.s 244 | Code | 00 | | 4 | 00/0220 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 547 | 1 debug.s 245 | Empty | 00 | | 0 | 00/0224 | + 548 | 1 debug.s 246 | Code | 00 | 2 | 3 | 00/0224 : AD 1F 07 | lda myLIST+4 + 549 | 1 debug.s 247 | Code | 00 | 2 | 3 | 00/0227 : 20 43 04 | jsr showHEX + 550 | 1 debug.s 248 | Code | 00 | 2 | 3 | 00/022A : AD 1D 07 | lda myLIST+2 + 551 | 1 debug.s 249 | Code | 00 | 2 | 3 | 00/022D : 20 23 04 | jsr showWORD + 552 | 1 debug.s 250 | Empty | 00 | | 0 | 00/0230 | + 553 | 1 debug.s 251 | Comment | 00 | | 0 | 00/0230 | *--- Perform a DRead + 554 | 1 debug.s 252 | Empty | 00 | | 0 | 00/0230 | + 555 | 1 debug.s 253 | Macro | 00 | | 0 | 00/0230 | doREAD PushLong #strDREAD ; show the string + 559 | 1 debug.s 253 | Code | 00 | 1 >>16 | 3 | 00/0230 : F4 00 00 | PEA #^#strDREAD + 566 | 1 debug.s 253 | Code | 00 | 2 | 3 | 00/0233 : F4 93 03 | PEA #strDREAD + 569 | 1 debug.s 254 | Macro | 00 | | 0 | 00/0236 | _WriteCString + 571 | 1 debug.s 254 | Code | 00 | | 3 | 00/0236 : A2 0C 20 | LDX #$200C ; load tool call # + 572 | 1 debug.s 254 | Code | 00 | | 4 | 00/0239 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 573 | 1 debug.s 255 | Empty | 00 | | 0 | 00/023D | + 574 | 1 debug.s 256 | Comment | 00 | | 0 | 00/023D | * jsr debugBORDER + 575 | 1 debug.s 257 | Empty | 00 | | 0 | 00/023D | + 576 | 1 debug.s 258 | Code | 00 | 2 | 3 | 00/023D : 20 86 02 | jsr readablock + 577 | 1 debug.s 259 | Empty | 00 | | 0 | 00/0240 | + 578 | 1 debug.s 260 | Comment | 00 | | 0 | 00/0240 | * jsl GSOS + 579 | 1 debug.s 261 | Comment | 00 | | 0 | 00/0240 | * dw $202f + 580 | 1 debug.s 262 | Comment | 00 | | 0 | 00/0240 | * adrl proDREAD + 581 | 1 debug.s 263 | Comment | 00 | | 0 | 00/0240 | * pha + 582 | 1 debug.s 264 | Empty | 00 | | 0 | 00/0240 | + 583 | 1 debug.s 265 | Code | 00 | 2 | 3 | 00/0240 : AD 9D 04 | lda proDREAD+14 + 584 | 1 debug.s 266 | Code | 00 | 2 | 3 | 00/0243 : 20 23 04 | jsr showWORD + 585 | 1 debug.s 267 | Code | 00 | 2 | 3 | 00/0246 : AD 9B 04 | lda proDREAD+12 + 586 | 1 debug.s 268 | Code | 00 | 2 | 3 | 00/0249 : 20 23 04 | jsr showWORD + 587 | 1 debug.s 269 | Empty | 00 | | 0 | 00/024C | + 588 | 1 debug.s 270 | Macro | 00 | | 0 | 00/024C | PushWord #' ' + 590 | 1 debug.s 270 | Code | 00 | | 3 | 00/024C : F4 20 00 | PEA #' ' + 593 | 1 debug.s 271 | Macro | 00 | | 0 | 00/024F | _WriteChar + 595 | 1 debug.s 271 | Code | 00 | | 3 | 00/024F : A2 0C 18 | LDX #$180C ; load tool call # + 596 | 1 debug.s 271 | Code | 00 | | 4 | 00/0252 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 597 | 1 debug.s 272 | Code | 00 | 2 | 3 | 00/0256 : AD A3 04 | lda proDREAD+20 + 598 | 1 debug.s 273 | Code | 00 | 2 | 3 | 00/0259 : 20 23 04 | jsr showWORD + 599 | 1 debug.s 274 | Code | 00 | 2 | 3 | 00/025C : AD A1 04 | lda proDREAD+18 + 600 | 1 debug.s 275 | Code | 00 | 2 | 3 | 00/025F : 20 23 04 | jsr showWORD + 601 | 1 debug.s 276 | Empty | 00 | | 0 | 00/0262 | + 602 | 1 debug.s 277 | Code | 00 | | 1 | 00/0262 : 68 | pla + 603 | 1 debug.s 278 | Code | 00 | 2 | 3 | 00/0263 : 20 D7 02 | jsr showERRCODE + 604 | 1 debug.s 279 | Code | 00 | 2 | 3 | 00/0266 : 20 F8 02 | jsr printBUFFER ; output two lines of buffer + 605 | 1 debug.s 280 | Empty | 00 | | 0 | 00/0269 | + 606 | 1 debug.s 281 | Code | 00 | 2 | 3 | 00/0269 : 20 FE 03 | jsr waitFORKEY ; is it 0-9 + 607 | 1 debug.s 282 | Code | 00 | | 3 | 00/026C : C9 1B 00 | cmp #$1b + 608 | 1 debug.s 283 | Code | 00 | | 2 | 00/026F : F0 14 | beq doEXIT + 609 | 1 debug.s 284 | Code | 00 | | 3 | 00/0271 : C9 9B 00 | cmp #$9b + 610 | 1 debug.s 285 | Code | 00 | | 2 | 00/0274 : F0 0F | beq doEXIT + 611 | 1 debug.s 286 | Empty | 00 | | 0 | 00/0276 | + 612 | 1 debug.s 287 | Code | 00 | 2 | 3 | 00/0276 : EE 9B 04 | inc proDREAD+12 + 613 | 1 debug.s 288 | Code | 00 | | 2 | 00/0279 : D0 B5 | bne doREAD + 614 | 1 debug.s 289 | Code | 00 | 2 | 3 | 00/027B : EE 9D 04 | inc proDREAD+14 + 615 | 1 debug.s 290 | Code | 00 | | 2 | 00/027E : 80 B0 | bra doREAD + 616 | 1 debug.s 291 | Empty | 00 | | 0 | 00/0280 | + 617 | 1 debug.s 292 | Code | 00 | 2 | 3 | 00/0280 : AD 6F 04 | lda errCODE ; only write if read is OK + 618 | 1 debug.s 293 | Code | 00 | | 2 | 00/0283 : F0 38 | beq okWRITE + 619 | 1 debug.s 294 | Code | 00 | | 1 | 00/0285 : 60 | doEXIT rts + 620 | 1 debug.s 295 | Empty | 00 | | 0 | 00/0286 | + 621 | 1 debug.s 296 | Comment | 00 | | 0 | 00/0286 | *--- + 622 | 1 debug.s 297 | Empty | 00 | | 0 | 00/0286 | + 623 | 1 debug.s 298 | Code | 10 | | 2 | 00/0286 : E2 20 | readablock sep #$20 + 624 | 1 debug.s 299 | Code | 10 | 2 | 3 | 00/0288 : AD 9E 04 | lda proDREAD+15 + 625 | 1 debug.s 300 | Code | 10 | | 4 | 00/028B : 8F 00 00 E4 | stal {$e40000} + 626 | 1 debug.s 301 | Code | 10 | 2 | 3 | 00/028F : AD 9D 04 | lda proDREAD+14 + 627 | 1 debug.s 302 | Code | 10 | | 4 | 00/0292 : 8F 02 00 E4 | stal {$e40002} + 628 | 1 debug.s 303 | Code | 10 | 2 | 3 | 00/0296 : AD 9C 04 | lda proDREAD+13 + 629 | 1 debug.s 304 | Code | 10 | | 4 | 00/0299 : 8F 04 00 E4 | stal {$e40004} + 630 | 1 debug.s 305 | Code | 10 | 2 | 3 | 00/029D : AD 9B 04 | lda proDREAD+12 + 631 | 1 debug.s 306 | Code | 10 | | 4 | 00/02A0 : 8F 06 00 E4 | stal {$e40006} + 632 | 1 debug.s 307 | Empty | 10 | | 0 | 00/02A4 | + 633 | 1 debug.s 308 | Code | 10 | | 2 | 00/02A4 : A9 01 | lda #1 + 634 | 1 debug.s 309 | Code | 10 | | 4 | 00/02A6 : 8F 08 00 E4 | stal {$e40008} + 635 | 1 debug.s 310 | Empty | 10 | | 0 | 00/02AA | + 636 | 1 debug.s 311 | Code | 10 | | 3 | 00/02AA : A0 00 00 | ldy #0 + 637 | 1 debug.s 312 | Code | 10 | | 4 | 00/02AD : AF 0A 00 E4 | ozunid_3 ldal {$e4000a} + 638 | 1 debug.s 313 | Code | 10 | 2 | 3 | 00/02B1 : 99 1B 05 | sta myBUFFER,y + 639 | 1 debug.s 314 | Code | 10 | | 1 | 00/02B4 : C8 | iny + 640 | 1 debug.s 315 | Code | 10 | | 3 | 00/02B5 : C0 00 02 | cpy #512 + 641 | 1 debug.s 316 | Code | 10 | | 2 | 00/02B8 : D0 F3 | bne ozunid_3 + 642 | 1 debug.s 317 | Code | 00 | | 2 | 00/02BA : C2 20 | rep #$20 + 643 | 1 debug.s 318 | Empty | 00 | | 0 | 00/02BC | + 644 | 1 debug.s 319 | Code | 00 | | 1 | 00/02BC : 60 | rts + 645 | 1 debug.s 320 | Empty | 00 | | 0 | 00/02BD | + 646 | 1 debug.s 321 | Comment | 00 | | 0 | 00/02BD | *--- Perform a DWrite + 647 | 1 debug.s 322 | Empty | 00 | | 0 | 00/02BD | + 648 | 1 debug.s 323 | Macro | 00 | | 0 | 00/02BD | okWRITE PushLong #strDWRITE ; show the string + 652 | 1 debug.s 323 | Code | 00 | 1 >>16 | 3 | 00/02BD : F4 00 00 | PEA #^#strDWRITE + 659 | 1 debug.s 323 | Code | 00 | 2 | 3 | 00/02C0 : F4 A3 03 | PEA #strDWRITE + 662 | 1 debug.s 324 | Macro | 00 | | 0 | 00/02C3 | _WriteCString + 664 | 1 debug.s 324 | Code | 00 | | 3 | 00/02C3 : A2 0C 20 | LDX #$200C ; load tool call # + 665 | 1 debug.s 324 | Code | 00 | | 4 | 00/02C6 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 666 | 1 debug.s 325 | Empty | 00 | | 0 | 00/02CA | + 667 | 1 debug.s 326 | Code | 00 | | 4 | 00/02CA : 22 A8 00 E1 | jsl {$e100a8} + 668 | 1 debug.s 327 | Data | 00 | | 2 | 00/02CE : 30 20 | dw $2030 + 669 | 1 debug.s 328 | Data | 00 | 3 | 4 | 00/02D0 : A5 04 00 00 | adrl proDWRITE + 670 | 1 debug.s 329 | Code | 00 | 2 | 3 | 00/02D4 : 4C D7 02 | jmp showERRCODE + 671 | 1 debug.s 330 | Empty | 00 | | 0 | 00/02D7 | + 672 | 1 debug.s 331 | Comment | 00 | | 0 | 00/02D7 | *--- Code end + 673 | 1 debug.s 332 | Empty | 00 | | 0 | 00/02D7 | + 674 | 1 debug.s 333 | Empty | 00 | | 0 | 00/02D7 | showERRCODE + 675 | 1 debug.s 334 | Code | 00 | 2 | 3 | 00/02D7 : 8D 6F 04 | sta errCODE ; save it + 676 | 1 debug.s 335 | Empty | 00 | | 0 | 00/02DA | + 677 | 1 debug.s 336 | Macro | 00 | | 0 | 00/02DA | PushLong #strERR ; show the string + 681 | 1 debug.s 336 | Code | 00 | 1 >>16 | 3 | 00/02DA : F4 00 00 | PEA #^#strERR + 688 | 1 debug.s 336 | Code | 00 | 2 | 3 | 00/02DD : F4 E1 03 | PEA #strERR + 691 | 1 debug.s 337 | Macro | 00 | | 0 | 00/02E0 | _WriteCString + 693 | 1 debug.s 337 | Code | 00 | | 3 | 00/02E0 : A2 0C 20 | LDX #$200C ; load tool call # + 694 | 1 debug.s 337 | Code | 00 | | 4 | 00/02E3 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 695 | 1 debug.s 338 | Empty | 00 | | 0 | 00/02E7 | + 696 | 1 debug.s 339 | Code | 00 | 2 | 3 | 00/02E7 : AD 6F 04 | lda errCODE ; show the error code + 697 | 1 debug.s 340 | Code | 00 | 2 | 3 | 00/02EA : 20 43 04 | jsr showHEX + 698 | 1 debug.s 341 | Empty | 00 | | 0 | 00/02ED | + 699 | 1 debug.s 342 | Macro | 00 | | 0 | 00/02ED | PushWord #$0d + 701 | 1 debug.s 342 | Code | 00 | | 3 | 00/02ED : F4 0D 00 | PEA #$0d + 704 | 1 debug.s 343 | Macro | 00 | | 0 | 00/02F0 | _WriteChar + 706 | 1 debug.s 343 | Code | 00 | | 3 | 00/02F0 : A2 0C 18 | LDX #$180C ; load tool call # + 707 | 1 debug.s 343 | Code | 00 | | 4 | 00/02F3 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 708 | 1 debug.s 344 | Code | 00 | | 1 | 00/02F7 : 60 | rts + 709 | 1 debug.s 345 | Empty | 00 | | 0 | 00/02F8 | + 710 | 1 debug.s 346 | Comment | 00 | | 0 | 00/02F8 | *--- Print a line of buffer + 711 | 1 debug.s 347 | Empty | 00 | | 0 | 00/02F8 | + 712 | 1 debug.s 348 | Macro | 00 | | 0 | 00/02F8 | printBUFFER PushWord #$20 + 714 | 1 debug.s 348 | Code | 00 | | 3 | 00/02F8 : F4 20 00 | PEA #$20 + 717 | 1 debug.s 349 | Macro | 00 | | 0 | 00/02FB | _WriteChar + 719 | 1 debug.s 349 | Code | 00 | | 3 | 00/02FB : A2 0C 18 | LDX #$180C ; load tool call # + 720 | 1 debug.s 349 | Code | 00 | | 4 | 00/02FE : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 721 | 1 debug.s 350 | Empty | 00 | | 0 | 00/0302 | + 722 | 1 debug.s 351 | Code | 00 | 2 | 3 | 00/0302 : AD 1B 05 | lda myBUFFER + 723 | 1 debug.s 352 | Code | 00 | 2 | 3 | 00/0305 : 20 73 03 | jsr printME + 724 | 1 debug.s 353 | Code | 00 | 2 | 3 | 00/0308 : AD 1D 05 | lda myBUFFER+2 + 725 | 1 debug.s 354 | Code | 00 | 2 | 3 | 00/030B : 20 73 03 | jsr printME + 726 | 1 debug.s 355 | Code | 00 | 2 | 3 | 00/030E : AD 1F 05 | lda myBUFFER+4 + 727 | 1 debug.s 356 | Code | 00 | 2 | 3 | 00/0311 : 20 73 03 | jsr printME + 728 | 1 debug.s 357 | Code | 00 | 2 | 3 | 00/0314 : AD 21 05 | lda myBUFFER+6 + 729 | 1 debug.s 358 | Code | 00 | 2 | 3 | 00/0317 : 20 73 03 | jsr printME + 730 | 1 debug.s 359 | Code | 00 | 2 | 3 | 00/031A : AD 23 05 | lda myBUFFER+8 + 731 | 1 debug.s 360 | Code | 00 | 2 | 3 | 00/031D : 20 73 03 | jsr printME + 732 | 1 debug.s 361 | Code | 00 | 2 | 3 | 00/0320 : AD 25 05 | lda myBUFFER+10 + 733 | 1 debug.s 362 | Code | 00 | 2 | 3 | 00/0323 : 20 73 03 | jsr printME + 734 | 1 debug.s 363 | Code | 00 | 2 | 3 | 00/0326 : AD 27 05 | lda myBUFFER+12 + 735 | 1 debug.s 364 | Code | 00 | 2 | 3 | 00/0329 : 20 73 03 | jsr printME + 736 | 1 debug.s 365 | Code | 00 | 2 | 3 | 00/032C : AD 29 05 | lda myBUFFER+14 + 737 | 1 debug.s 366 | Code | 00 | 2 | 3 | 00/032F : 20 73 03 | jsr printME + 738 | 1 debug.s 367 | Empty | 00 | | 0 | 00/0332 | + 739 | 1 debug.s 368 | Macro | 00 | | 0 | 00/0332 | PushWord #$0d + 741 | 1 debug.s 368 | Code | 00 | | 3 | 00/0332 : F4 0D 00 | PEA #$0d + 744 | 1 debug.s 369 | Macro | 00 | | 0 | 00/0335 | _WriteChar + 746 | 1 debug.s 369 | Code | 00 | | 3 | 00/0335 : A2 0C 18 | LDX #$180C ; load tool call # + 747 | 1 debug.s 369 | Code | 00 | | 4 | 00/0338 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 748 | 1 debug.s 370 | Empty | 00 | | 0 | 00/033C | + 749 | 1 debug.s 371 | Macro | 00 | | 0 | 00/033C | PushWord #$20 + 751 | 1 debug.s 371 | Code | 00 | | 3 | 00/033C : F4 20 00 | PEA #$20 + 754 | 1 debug.s 372 | Macro | 00 | | 0 | 00/033F | _WriteChar + 756 | 1 debug.s 372 | Code | 00 | | 3 | 00/033F : A2 0C 18 | LDX #$180C ; load tool call # + 757 | 1 debug.s 372 | Code | 00 | | 4 | 00/0342 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 758 | 1 debug.s 373 | Empty | 00 | | 0 | 00/0346 | + 759 | 1 debug.s 374 | Code | 00 | 2 | 3 | 00/0346 : AD 2B 05 | lda myBUFFER+16 + 760 | 1 debug.s 375 | Code | 00 | 2 | 3 | 00/0349 : 20 73 03 | jsr printME + 761 | 1 debug.s 376 | Code | 00 | 2 | 3 | 00/034C : AD 2D 05 | lda myBUFFER+18 + 762 | 1 debug.s 377 | Code | 00 | 2 | 3 | 00/034F : 20 73 03 | jsr printME + 763 | 1 debug.s 378 | Code | 00 | 2 | 3 | 00/0352 : AD 2F 05 | lda myBUFFER+20 + 764 | 1 debug.s 379 | Code | 00 | 2 | 3 | 00/0355 : 20 73 03 | jsr printME + 765 | 1 debug.s 380 | Code | 00 | 2 | 3 | 00/0358 : AD 31 05 | lda myBUFFER+22 + 766 | 1 debug.s 381 | Code | 00 | 2 | 3 | 00/035B : 20 73 03 | jsr printME + 767 | 1 debug.s 382 | Code | 00 | 2 | 3 | 00/035E : AD 33 05 | lda myBUFFER+24 + 768 | 1 debug.s 383 | Code | 00 | 2 | 3 | 00/0361 : 20 73 03 | jsr printME + 769 | 1 debug.s 384 | Code | 00 | 2 | 3 | 00/0364 : AD 35 05 | lda myBUFFER+26 + 770 | 1 debug.s 385 | Code | 00 | 2 | 3 | 00/0367 : 20 73 03 | jsr printME + 771 | 1 debug.s 386 | Code | 00 | 2 | 3 | 00/036A : AD 37 05 | lda myBUFFER+28 + 772 | 1 debug.s 387 | Code | 00 | 2 | 3 | 00/036D : 20 73 03 | jsr printME + 773 | 1 debug.s 388 | Code | 00 | 2 | 3 | 00/0370 : AD 39 05 | lda myBUFFER+30 ; ends into the code below... + 774 | 1 debug.s 389 | Empty | 00 | | 0 | 00/0373 | + 775 | 1 debug.s 390 | Code | 00 | | 1 | 00/0373 : 48 | printME pha ; from a word to a string + 776 | 1 debug.s 391 | Code | 00 | | 1 | 00/0374 : 48 | pha + 777 | 1 debug.s 392 | Code | 00 | | 1 | 00/0375 : 48 | pha ; <= here, really + 778 | 1 debug.s 393 | Macro | 00 | | 0 | 00/0376 | _HexIt + 780 | 1 debug.s 393 | Code | 00 | | 3 | 00/0376 : A2 0B 2A | LDX #$2A0B ; load tool call # + 781 | 1 debug.s 393 | Code | 00 | | 4 | 00/0379 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 782 | 1 debug.s 394 | Macro | 00 | | 0 | 00/037D | PullLong strBUFFER + 785 | 1 debug.s 394 | Code | 00 | | 1 | 00/037D : 68 | PLA + 787 | 1 debug.s 394 | Code | 00 | 2 | 3 | 00/037E : 8D 69 04 | STA strBUFFER + 792 | 1 debug.s 394 | Code | 00 | | 1 | 00/0381 : 68 | PLA + 794 | 1 debug.s 394 | Code | 00 | 2 | 3 | 00/0382 : 8D 6B 04 | STA strBUFFER+2 + 800 | 1 debug.s 395 | Empty | 00 | | 0 | 00/0385 | + 801 | 1 debug.s 396 | Macro | 00 | | 0 | 00/0385 | PushLong #strBUFFER ; show the string + 805 | 1 debug.s 396 | Code | 00 | 1 >>16 | 3 | 00/0385 : F4 00 00 | PEA #^#strBUFFER + 812 | 1 debug.s 396 | Code | 00 | 2 | 3 | 00/0388 : F4 69 04 | PEA #strBUFFER + 815 | 1 debug.s 397 | Macro | 00 | | 0 | 00/038B | _WriteCString + 817 | 1 debug.s 397 | Code | 00 | | 3 | 00/038B : A2 0C 20 | LDX #$200C ; load tool call # + 818 | 1 debug.s 397 | Code | 00 | | 4 | 00/038E : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 819 | 1 debug.s 398 | Code | 00 | | 1 | 00/0392 : 60 | rts + 820 | 1 debug.s 399 | Empty | 00 | | 0 | 00/0393 | + 821 | 1 debug.s 400 | Comment | 00 | | 0 | 00/0393 | *---------- Data + 822 | 1 debug.s 401 | Empty | 00 | | 0 | 00/0393 | + 823 | 1 debug.s 402 | Data | 00 | | 16 | 00/0393 : 0D 0D 44 52 | strDREAD asc 0d0d'DRead block $'00 | | | | | | 65 61 64 20 | | | | | | | 62 6C 6F 63 | | | | | | | 6B 20 24 00 | - 783 | 1 debug.s 362 | Data | 00 | | 10 | 00/0366 : 0D 0D 44 57 | strDWRITE asc 0d0d'DWrite '00 + 824 | 1 debug.s 403 | Data | 00 | | 10 | 00/03A3 : 0D 0D 44 57 | strDWRITE asc 0d0d'DWrite '00 | | | | | | 72 69 74 65 | | | | | | | 20 00 | - 784 | 1 debug.s 363 | Data | 00 | | 11 | 00/0370 : 0D 0D 44 53 | strDSTATUS asc 0d0d'DStatus '00 + 825 | 1 debug.s 404 | Data | 00 | | 11 | 00/03AD : 0D 0D 44 53 | strDSTATUS asc 0d0d'DStatus '00 | | | | | | 74 61 74 75 | | | | | | | 73 20 00 | - 785 | 1 debug.s 364 | Empty | 00 | | 0 | 00/037B | - 786 | 1 debug.s 365 | Data | 00 | | 20 | 00/037B : 20 43 68 61 | strCHARS asc ' Characteristics: '00 + 826 | 1 debug.s 405 | Empty | 00 | | 0 | 00/03B8 | + 827 | 1 debug.s 406 | Data | 00 | | 20 | 00/03B8 : 20 43 68 61 | strCHARS asc ' Characteristics: '00 | | | | | | 72 61 63 74 | | | | | | | 65 72 69 73 | | | | | | | 74 69 63 73 | | | | | | | 3A 20 20 00 | - 787 | 1 debug.s 366 | Data | 00 | | 21 | 00/038F : 0D 20 4E 75 | strBLOCKS asc 0d' Number of blocks: '00 + 828 | 1 debug.s 407 | Data | 00 | | 21 | 00/03CC : 0D 20 4E 75 | strBLOCKS asc 0d' Number of blocks: '00 | | | | | | 6D 62 65 72 | | | | | | | 20 6F 66 20 | | | | | | | 62 6C 6F 63 | | | | | | | 6B 73 3A 20 | | | | | | | 00 | - 788 | 1 debug.s 367 | Empty | 00 | | 0 | 00/03A4 | - 789 | 1 debug.s 368 | Data | 00 | | 15 | 00/03A4 : 0D 2D 20 45 | strERR asc 0d'- Error code '00 + 829 | 1 debug.s 408 | Empty | 00 | | 0 | 00/03E1 | + 830 | 1 debug.s 409 | Data | 00 | | 15 | 00/03E1 : 0D 2D 20 45 | strERR asc 0d'- Error code '00 | | | | | | 72 72 6F 72 | | | | | | | 20 63 6F 64 | | | | | | | 65 20 00 | - 790 | 1 debug.s 369 | Empty | 00 | | 0 | 00/03B3 | - 791 | 1 debug.s 370 | Comment | 00 | | 0 | 00/03B3 | *---------------------------- - 792 | 1 debug.s 371 | Comment | 00 | | 0 | 00/03B3 | * DEBUG - 793 | 1 debug.s 372 | Comment | 00 | | 0 | 00/03B3 | *---------------------------- - 794 | 1 debug.s 373 | Empty | 00 | | 0 | 00/03B3 | - 795 | 1 debug.s 374 | Empty | 00 | | 0 | 00/03B3 | debugBORDER - 796 | 1 debug.s 375 | Code | 10 | | 2 | 00/03B3 : E2 20 | sep #$20 - 797 | 1 debug.s 376 | Code | 10 | | 4 | 00/03B5 : AF 34 C0 00 | ldal $c034 - 798 | 1 debug.s 377 | Code | 10 | | 1 | 00/03B9 : 1A | inc - 799 | 1 debug.s 378 | Code | 10 | | 4 | 00/03BA : 8F 34 C0 00 | stal $c034 - 800 | 1 debug.s 379 | Code | 00 | | 2 | 00/03BE : C2 20 | rep #$20 - 801 | 1 debug.s 380 | Code | 00 | | 1 | 00/03C0 : 60 | rts - 802 | 1 debug.s 381 | Empty | 00 | | 0 | 00/03C1 | - 803 | 1 debug.s 382 | Comment | 00 | | 0 | 00/03C1 | *---------------------------- - 804 | 1 debug.s 383 | Comment | 00 | | 0 | 00/03C1 | * TEXT ROUTINES - 805 | 1 debug.s 384 | Comment | 00 | | 0 | 00/03C1 | *---------------------------- - 806 | 1 debug.s 385 | Empty | 00 | | 0 | 00/03C1 | - 807 | 1 debug.s 386 | Comment | 00 | | 0 | 00/03C1 | *---------- Wait for a key - 808 | 1 debug.s 387 | Empty | 00 | | 0 | 00/03C1 | - 809 | 1 debug.s 388 | Macro | 00 | | 0 | 00/03C1 | waitFORKEY PushWord #0 ; wait for key - 811 | 1 debug.s 388 | Code | 00 | | 3 | 00/03C1 : F4 00 00 | PEA #0 - 814 | 1 debug.s 389 | Macro | 00 | | 0 | 00/03C4 | PushWord #1 ; echo char - 816 | 1 debug.s 389 | Code | 00 | | 3 | 00/03C4 : F4 01 00 | PEA #1 - 819 | 1 debug.s 390 | Macro | 00 | | 0 | 00/03C7 | _ReadChar - 821 | 1 debug.s 390 | Code | 00 | | 3 | 00/03C7 : A2 0C 22 | LDX #$220C ; load tool call # - 822 | 1 debug.s 390 | Code | 00 | | 4 | 00/03CA : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 823 | 1 debug.s 391 | Empty | 00 | | 0 | 00/03CE | - 824 | 1 debug.s 392 | Code | 00 | | 2 | 00/03CE : A3 01 | waitKEY1 lda 1,s ; check CR - 825 | 1 debug.s 393 | Code | 00 | | 3 | 00/03D0 : 29 FF 00 | and #$ff ; of typed - 826 | 1 debug.s 394 | Code | 00 | | 2 | 00/03D3 : 83 01 | sta 1,s ; in char - 827 | 1 debug.s 395 | Code | 00 | | 3 | 00/03D5 : C9 8D 00 | cmp #$8d - 828 | 1 debug.s 396 | Code | 00 | | 2 | 00/03D8 : F0 0A | beq waitKEY9 - 829 | 1 debug.s 397 | Empty | 00 | | 0 | 00/03DA | - 830 | 1 debug.s 398 | Macro | 00 | | 0 | 00/03DA | waitKEY8 PushWord #$0d ; return - 832 | 1 debug.s 398 | Code | 00 | | 3 | 00/03DA : F4 0D 00 | PEA #$0d - 835 | 1 debug.s 399 | Macro | 00 | | 0 | 00/03DD | _WriteChar - 837 | 1 debug.s 399 | Code | 00 | | 3 | 00/03DD : A2 0C 18 | LDX #$180C ; load tool call # - 838 | 1 debug.s 399 | Code | 00 | | 4 | 00/03E0 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 839 | 1 debug.s 400 | Empty | 00 | | 0 | 00/03E4 | - 840 | 1 debug.s 401 | Code | 00 | | 1 | 00/03E4 : 68 | waitKEY9 pla ; restore entered char - 841 | 1 debug.s 402 | Code | 00 | | 1 | 00/03E5 : 60 | rts - 842 | 1 debug.s 403 | Empty | 00 | | 0 | 00/03E6 | - 843 | 1 debug.s 404 | Comment | 00 | | 0 | 00/03E6 | *---------- Display a word - 844 | 1 debug.s 405 | Empty | 00 | | 0 | 00/03E6 | - 845 | 1 debug.s 406 | Code | 00 | | 1 | 00/03E6 : 48 | showWORD pha ; from a word to a string - 846 | 1 debug.s 407 | Code | 00 | | 1 | 00/03E7 : 48 | pha - 847 | 1 debug.s 408 | Code | 00 | | 1 | 00/03E8 : 48 | pha ; <= here, really - 848 | 1 debug.s 409 | Macro | 00 | | 0 | 00/03E9 | _HexIt - 850 | 1 debug.s 409 | Code | 00 | | 3 | 00/03E9 : A2 0B 2A | LDX #$2A0B ; load tool call # - 851 | 1 debug.s 409 | Code | 00 | | 4 | 00/03EC : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 852 | 1 debug.s 410 | Macro | 00 | | 0 | 00/03F0 | PullLong strHEX - 855 | 1 debug.s 410 | Code | 00 | | 1 | 00/03F0 : 68 | PLA - 857 | 1 debug.s 410 | Code | 00 | 2 | 3 | 00/03F1 : 8D 27 04 | STA strHEX - 862 | 1 debug.s 410 | Code | 00 | | 1 | 00/03F4 : 68 | PLA - 864 | 1 debug.s 410 | Code | 00 | 2 | 3 | 00/03F5 : 8D 29 04 | STA strHEX+2 - 870 | 1 debug.s 411 | Empty | 00 | | 0 | 00/03F8 | - 871 | 1 debug.s 412 | Macro | 00 | | 0 | 00/03F8 | PushLong #strHEX ; show the string - 875 | 1 debug.s 412 | Code | 00 | 1 >>16 | 3 | 00/03F8 : F4 00 00 | PEA #^#strHEX - 882 | 1 debug.s 412 | Code | 00 | 2 | 3 | 00/03FB : F4 27 04 | PEA #strHEX - 885 | 1 debug.s 413 | Macro | 00 | | 0 | 00/03FE | _WriteCString - 887 | 1 debug.s 413 | Code | 00 | | 3 | 00/03FE : A2 0C 20 | LDX #$200C ; load tool call # - 888 | 1 debug.s 413 | Code | 00 | | 4 | 00/0401 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 889 | 1 debug.s 414 | Code | 00 | | 1 | 00/0405 : 60 | rts - 890 | 1 debug.s 415 | Empty | 00 | | 0 | 00/0406 | - 891 | 1 debug.s 416 | Comment | 00 | | 0 | 00/0406 | *---------- Display a hex word with a $ - 892 | 1 debug.s 417 | Empty | 00 | | 0 | 00/0406 | - 893 | 1 debug.s 418 | Code | 00 | | 1 | 00/0406 : 48 | showHEX pha ; from a word to a string - 894 | 1 debug.s 419 | Code | 00 | | 1 | 00/0407 : 48 | pha - 895 | 1 debug.s 420 | Code | 00 | | 1 | 00/0408 : 48 | pha ; <= here, really - 896 | 1 debug.s 421 | Macro | 00 | | 0 | 00/0409 | _HexIt - 898 | 1 debug.s 421 | Code | 00 | | 3 | 00/0409 : A2 0B 2A | LDX #$2A0B ; load tool call # - 899 | 1 debug.s 421 | Code | 00 | | 4 | 00/040C : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 900 | 1 debug.s 422 | Macro | 00 | | 0 | 00/0410 | PullLong strHEX - 903 | 1 debug.s 422 | Code | 00 | | 1 | 00/0410 : 68 | PLA - 905 | 1 debug.s 422 | Code | 00 | 2 | 3 | 00/0411 : 8D 27 04 | STA strHEX - 910 | 1 debug.s 422 | Code | 00 | | 1 | 00/0414 : 68 | PLA - 912 | 1 debug.s 422 | Code | 00 | 2 | 3 | 00/0415 : 8D 29 04 | STA strHEX+2 - 918 | 1 debug.s 423 | Empty | 00 | | 0 | 00/0418 | - 919 | 1 debug.s 424 | Macro | 00 | | 0 | 00/0418 | PushLong #strHEX1 ; show the string - 923 | 1 debug.s 424 | Code | 00 | 1 >>16 | 3 | 00/0418 : F4 00 00 | PEA #^#strHEX1 - 930 | 1 debug.s 424 | Code | 00 | 2 | 3 | 00/041B : F4 26 04 | PEA #strHEX1 - 933 | 1 debug.s 425 | Macro | 00 | | 0 | 00/041E | _WriteCString - 935 | 1 debug.s 425 | Code | 00 | | 3 | 00/041E : A2 0C 20 | LDX #$200C ; load tool call # - 936 | 1 debug.s 425 | Code | 00 | | 4 | 00/0421 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher - 937 | 1 debug.s 426 | Code | 00 | | 1 | 00/0425 : 60 | rts - 938 | 1 debug.s 427 | Empty | 00 | | 0 | 00/0426 | - 939 | 1 debug.s 428 | Comment | 00 | | 0 | 00/0426 | *--- Data - 940 | 1 debug.s 429 | Empty | 00 | | 0 | 00/0426 | - 941 | 1 debug.s 430 | Data | 00 | | 1 | 00/0426 : 24 | strHEX1 asc '$' - 942 | 1 debug.s 431 | Data | 00 | | 5 | 00/0427 : 30 30 30 30 | strHEX asc '0000'00 + 831 | 1 debug.s 410 | Empty | 00 | | 0 | 00/03F0 | + 832 | 1 debug.s 411 | Comment | 00 | | 0 | 00/03F0 | *---------------------------- + 833 | 1 debug.s 412 | Comment | 00 | | 0 | 00/03F0 | * DEBUG + 834 | 1 debug.s 413 | Comment | 00 | | 0 | 00/03F0 | *---------------------------- + 835 | 1 debug.s 414 | Empty | 00 | | 0 | 00/03F0 | + 836 | 1 debug.s 415 | Empty | 00 | | 0 | 00/03F0 | debugBORDER + 837 | 1 debug.s 416 | Code | 10 | | 2 | 00/03F0 : E2 20 | sep #$20 + 838 | 1 debug.s 417 | Code | 10 | | 4 | 00/03F2 : AF 34 C0 00 | ldal $c034 + 839 | 1 debug.s 418 | Code | 10 | | 1 | 00/03F6 : 1A | inc + 840 | 1 debug.s 419 | Code | 10 | | 4 | 00/03F7 : 8F 34 C0 00 | stal $c034 + 841 | 1 debug.s 420 | Code | 00 | | 2 | 00/03FB : C2 20 | rep #$20 + 842 | 1 debug.s 421 | Code | 00 | | 1 | 00/03FD : 60 | rts + 843 | 1 debug.s 422 | Empty | 00 | | 0 | 00/03FE | + 844 | 1 debug.s 423 | Comment | 00 | | 0 | 00/03FE | *---------------------------- + 845 | 1 debug.s 424 | Comment | 00 | | 0 | 00/03FE | * TEXT ROUTINES + 846 | 1 debug.s 425 | Comment | 00 | | 0 | 00/03FE | *---------------------------- + 847 | 1 debug.s 426 | Empty | 00 | | 0 | 00/03FE | + 848 | 1 debug.s 427 | Comment | 00 | | 0 | 00/03FE | *---------- Wait for a key + 849 | 1 debug.s 428 | Empty | 00 | | 0 | 00/03FE | + 850 | 1 debug.s 429 | Macro | 00 | | 0 | 00/03FE | waitFORKEY PushWord #0 ; wait for key + 852 | 1 debug.s 429 | Code | 00 | | 3 | 00/03FE : F4 00 00 | PEA #0 + 855 | 1 debug.s 430 | Macro | 00 | | 0 | 00/0401 | PushWord #1 ; echo char + 857 | 1 debug.s 430 | Code | 00 | | 3 | 00/0401 : F4 01 00 | PEA #1 + 860 | 1 debug.s 431 | Macro | 00 | | 0 | 00/0404 | _ReadChar + 862 | 1 debug.s 431 | Code | 00 | | 3 | 00/0404 : A2 0C 22 | LDX #$220C ; load tool call # + 863 | 1 debug.s 431 | Code | 00 | | 4 | 00/0407 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 864 | 1 debug.s 432 | Empty | 00 | | 0 | 00/040B | + 865 | 1 debug.s 433 | Code | 00 | | 2 | 00/040B : A3 01 | waitKEY1 lda 1,s ; check CR + 866 | 1 debug.s 434 | Code | 00 | | 3 | 00/040D : 29 FF 00 | and #$ff ; of typed + 867 | 1 debug.s 435 | Code | 00 | | 2 | 00/0410 : 83 01 | sta 1,s ; in char + 868 | 1 debug.s 436 | Code | 00 | | 3 | 00/0412 : C9 8D 00 | cmp #$8d + 869 | 1 debug.s 437 | Code | 00 | | 2 | 00/0415 : F0 0A | beq waitKEY9 + 870 | 1 debug.s 438 | Empty | 00 | | 0 | 00/0417 | + 871 | 1 debug.s 439 | Macro | 00 | | 0 | 00/0417 | waitKEY8 PushWord #$0d ; return + 873 | 1 debug.s 439 | Code | 00 | | 3 | 00/0417 : F4 0D 00 | PEA #$0d + 876 | 1 debug.s 440 | Macro | 00 | | 0 | 00/041A | _WriteChar + 878 | 1 debug.s 440 | Code | 00 | | 3 | 00/041A : A2 0C 18 | LDX #$180C ; load tool call # + 879 | 1 debug.s 440 | Code | 00 | | 4 | 00/041D : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 880 | 1 debug.s 441 | Empty | 00 | | 0 | 00/0421 | + 881 | 1 debug.s 442 | Code | 00 | | 1 | 00/0421 : 68 | waitKEY9 pla ; restore entered char + 882 | 1 debug.s 443 | Code | 00 | | 1 | 00/0422 : 60 | rts + 883 | 1 debug.s 444 | Empty | 00 | | 0 | 00/0423 | + 884 | 1 debug.s 445 | Comment | 00 | | 0 | 00/0423 | *---------- Display a word + 885 | 1 debug.s 446 | Empty | 00 | | 0 | 00/0423 | + 886 | 1 debug.s 447 | Code | 00 | | 1 | 00/0423 : 48 | showWORD pha ; from a word to a string + 887 | 1 debug.s 448 | Code | 00 | | 1 | 00/0424 : 48 | pha + 888 | 1 debug.s 449 | Code | 00 | | 1 | 00/0425 : 48 | pha ; <= here, really + 889 | 1 debug.s 450 | Macro | 00 | | 0 | 00/0426 | _HexIt + 891 | 1 debug.s 450 | Code | 00 | | 3 | 00/0426 : A2 0B 2A | LDX #$2A0B ; load tool call # + 892 | 1 debug.s 450 | Code | 00 | | 4 | 00/0429 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 893 | 1 debug.s 451 | Macro | 00 | | 0 | 00/042D | PullLong strHEX + 896 | 1 debug.s 451 | Code | 00 | | 1 | 00/042D : 68 | PLA + 898 | 1 debug.s 451 | Code | 00 | 2 | 3 | 00/042E : 8D 64 04 | STA strHEX + 903 | 1 debug.s 451 | Code | 00 | | 1 | 00/0431 : 68 | PLA + 905 | 1 debug.s 451 | Code | 00 | 2 | 3 | 00/0432 : 8D 66 04 | STA strHEX+2 + 911 | 1 debug.s 452 | Empty | 00 | | 0 | 00/0435 | + 912 | 1 debug.s 453 | Macro | 00 | | 0 | 00/0435 | PushLong #strHEX ; show the string + 916 | 1 debug.s 453 | Code | 00 | 1 >>16 | 3 | 00/0435 : F4 00 00 | PEA #^#strHEX + 923 | 1 debug.s 453 | Code | 00 | 2 | 3 | 00/0438 : F4 64 04 | PEA #strHEX + 926 | 1 debug.s 454 | Macro | 00 | | 0 | 00/043B | _WriteCString + 928 | 1 debug.s 454 | Code | 00 | | 3 | 00/043B : A2 0C 20 | LDX #$200C ; load tool call # + 929 | 1 debug.s 454 | Code | 00 | | 4 | 00/043E : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 930 | 1 debug.s 455 | Code | 00 | | 1 | 00/0442 : 60 | rts + 931 | 1 debug.s 456 | Empty | 00 | | 0 | 00/0443 | + 932 | 1 debug.s 457 | Comment | 00 | | 0 | 00/0443 | *---------- Display a hex word with a $ + 933 | 1 debug.s 458 | Empty | 00 | | 0 | 00/0443 | + 934 | 1 debug.s 459 | Code | 00 | | 1 | 00/0443 : 48 | showHEX pha ; from a word to a string + 935 | 1 debug.s 460 | Code | 00 | | 1 | 00/0444 : 48 | pha + 936 | 1 debug.s 461 | Code | 00 | | 1 | 00/0445 : 48 | pha ; <= here, really + 937 | 1 debug.s 462 | Macro | 00 | | 0 | 00/0446 | _HexIt + 939 | 1 debug.s 462 | Code | 00 | | 3 | 00/0446 : A2 0B 2A | LDX #$2A0B ; load tool call # + 940 | 1 debug.s 462 | Code | 00 | | 4 | 00/0449 : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 941 | 1 debug.s 463 | Macro | 00 | | 0 | 00/044D | PullLong strHEX + 944 | 1 debug.s 463 | Code | 00 | | 1 | 00/044D : 68 | PLA + 946 | 1 debug.s 463 | Code | 00 | 2 | 3 | 00/044E : 8D 64 04 | STA strHEX + 951 | 1 debug.s 463 | Code | 00 | | 1 | 00/0451 : 68 | PLA + 953 | 1 debug.s 463 | Code | 00 | 2 | 3 | 00/0452 : 8D 66 04 | STA strHEX+2 + 959 | 1 debug.s 464 | Empty | 00 | | 0 | 00/0455 | + 960 | 1 debug.s 465 | Macro | 00 | | 0 | 00/0455 | PushLong #strHEX1 ; show the string + 964 | 1 debug.s 465 | Code | 00 | 1 >>16 | 3 | 00/0455 : F4 00 00 | PEA #^#strHEX1 + 971 | 1 debug.s 465 | Code | 00 | 2 | 3 | 00/0458 : F4 63 04 | PEA #strHEX1 + 974 | 1 debug.s 466 | Macro | 00 | | 0 | 00/045B | _WriteCString + 976 | 1 debug.s 466 | Code | 00 | | 3 | 00/045B : A2 0C 20 | LDX #$200C ; load tool call # + 977 | 1 debug.s 466 | Code | 00 | | 4 | 00/045E : 22 00 00 E1 | JSL $E10000 ; go to dispatcher + 978 | 1 debug.s 467 | Code | 00 | | 1 | 00/0462 : 60 | rts + 979 | 1 debug.s 468 | Empty | 00 | | 0 | 00/0463 | + 980 | 1 debug.s 469 | Comment | 00 | | 0 | 00/0463 | *--- Data + 981 | 1 debug.s 470 | Empty | 00 | | 0 | 00/0463 | + 982 | 1 debug.s 471 | Data | 00 | | 1 | 00/0463 : 24 | strHEX1 asc '$' + 983 | 1 debug.s 472 | Data | 00 | | 5 | 00/0464 : 30 30 30 30 | strHEX asc '0000'00 | | | | | | 00 | - 943 | 1 debug.s 432 | Data | 00 | | 6 | 00/042C : 30 30 30 30 | strBUFFER asc '0000 '00 + 984 | 1 debug.s 473 | Data | 00 | | 6 | 00/0469 : 30 30 30 30 | strBUFFER asc '0000 '00 | | | | | | 20 00 | - 944 | 1 debug.s 433 | Empty | 00 | | 0 | 00/0432 | - 945 | 1 debug.s 434 | Comment | 00 | | 0 | 00/0432 | *---------------------------- - 946 | 1 debug.s 435 | Comment | 00 | | 0 | 00/0432 | * DATA - 947 | 1 debug.s 436 | Comment | 00 | | 0 | 00/0432 | *---------------------------- - 948 | 1 debug.s 437 | Empty | 00 | | 0 | 00/0432 | - 949 | 1 debug.s 438 | Data | 00 | | 2 | 00/0432 : 00 00 | errCODE ds 2 - 950 | 1 debug.s 439 | Empty | 00 | | 0 | 00/0434 | - 951 | 1 debug.s 440 | Data | 00 | | 2 | 00/0434 : 02 00 | proQUIT dw 2 ; pCount - 952 | 1 debug.s 441 | Data | 00 | | 4 | 00/0436 : 00 00 00 00 | ds 4 ; 02 pathname - 953 | 1 debug.s 442 | Data | 00 | | 2 | 00/043A : 00 00 | ds 2 ; 06 flags - 954 | 1 debug.s 443 | Empty | 00 | | 0 | 00/043C | - 955 | 1 debug.s 444 | Data | 00 | | 2 | 00/043C : 08 00 | proDINFO dw 8 ; Parms for DInfo - 956 | 1 debug.s 445 | Data | 00 | | 2 | 00/043E : 00 00 | ds 2 ; 02 device num - 957 | 1 debug.s 446 | Data | 00 | 3 | 4 | 00/0440 : 9C 04 00 00 | adrl devINFO ; 04 device name - 958 | 1 debug.s 447 | Data | 00 | | 2 | 00/0444 : 00 00 | ds 2 ; 08 characteristics - 959 | 1 debug.s 448 | Data | 00 | | 4 | 00/0446 : 00 00 00 00 | ds 4 ; 0A total blocks - 960 | 1 debug.s 449 | Data | 00 | | 2 | 00/044A : 00 00 | ds 2 ; 0E slot number - 961 | 1 debug.s 450 | Data | 00 | | 2 | 00/044C : 00 00 | ds 2 ; 10 unit number - 962 | 1 debug.s 451 | Data | 00 | | 2 | 00/044E : 00 00 | ds 2 ; 12 version - 963 | 1 debug.s 452 | Data | 00 | | 2 | 00/0450 : 00 00 | ds 2 ; 14 device id - 964 | 1 debug.s 453 | Empty | 00 | | 0 | 00/0452 | - 965 | 1 debug.s 454 | Data | 00 | | 2 | 00/0452 : 06 00 | proDREAD dw 6 ; pCount - 966 | 1 debug.s 455 | Data | 00 | | 2 | 00/0454 : 00 00 | ds 2 ; 02 devNum - 967 | 1 debug.s 456 | Data | 00 | 3 | 4 | 00/0456 : DE 04 00 00 | adrl myBUFFER ; 04 buffer - 968 | 1 debug.s 457 | Data | 00 | | 4 | 00/045A : 00 02 00 00 | adrl 512 ; 08 requestCount - 969 | 1 debug.s 458 | Data | 00 | | 4 | 00/045E : 00 00 00 00 | adrl 0 ; 0C startingBlock - 970 | 1 debug.s 459 | Data | 00 | | 2 | 00/0462 : 00 02 | dw 512 ; 10 blockSize - 971 | 1 debug.s 460 | Data | 00 | | 4 | 00/0464 : 00 00 00 00 | ds 4 ; 14 transferCount - 972 | 1 debug.s 461 | Empty | 00 | | 0 | 00/0468 | - 973 | 1 debug.s 462 | Data | 00 | | 2 | 00/0468 : 06 00 | proDWRITE dw 6 ; pCount - 974 | 1 debug.s 463 | Data | 00 | | 2 | 00/046A : 00 00 | ds 2 ; 02 devNum - 975 | 1 debug.s 464 | Data | 00 | 3 | 4 | 00/046C : DE 04 00 00 | adrl myBUFFER ; 04 buffer - 976 | 1 debug.s 465 | Data | 00 | | 4 | 00/0470 : 00 02 00 00 | adrl 512 ; 08 requestCount - 977 | 1 debug.s 466 | Data | 00 | | 4 | 00/0474 : 00 00 00 00 | adrl 0 ; 0C startingBlock - 978 | 1 debug.s 467 | Data | 00 | | 2 | 00/0478 : 00 02 | dw 512 ; 10 blockSize - 979 | 1 debug.s 468 | Data | 00 | | 4 | 00/047A : 00 00 00 00 | ds 4 ; 14 transferCount - 980 | 1 debug.s 469 | Empty | 00 | | 0 | 00/047E | - 981 | 1 debug.s 470 | Data | 00 | | 2 | 00/047E : 05 00 | proDSTATUS dw 5 ; pCount - 982 | 1 debug.s 471 | Data | 00 | | 2 | 00/0480 : 00 00 | ds 2 ; 02 devNum - 983 | 1 debug.s 472 | Data | 00 | | 2 | 00/0482 : 00 00 | ds 2 ; 04 code ($0000 = Device Status) - 984 | 1 debug.s 473 | Data | 00 | 3 | 4 | 00/0484 : DE 06 00 00 | adrl myLIST ; 06 list - 985 | 1 debug.s 474 | Data | 00 | | 4 | 00/0488 : 00 02 00 00 | adrl 512 ; 0A requestCount (a big buffer) - 986 | 1 debug.s 475 | Data | 00 | | 4 | 00/048C : 00 00 00 00 | ds 4 ; 0E transferCount - 987 | 1 debug.s 476 | Empty | 00 | | 0 | 00/0490 | - 988 | 1 debug.s 477 | Comment | 00 | | 0 | 00/0490 | *---------- - 989 | 1 debug.s 478 | Empty | 00 | | 0 | 00/0490 | - 990 | 1 debug.s 479 | Data | 00 | | 12 | 00/0490 : 0B 2E 41 53 | strDEVICE str '.ASSDDevice' ; length is 12 chars (including length byte) + 985 | 1 debug.s 474 | Empty | 00 | | 0 | 00/046F | + 986 | 1 debug.s 475 | Comment | 00 | | 0 | 00/046F | *---------------------------- + 987 | 1 debug.s 476 | Comment | 00 | | 0 | 00/046F | * DATA + 988 | 1 debug.s 477 | Comment | 00 | | 0 | 00/046F | *---------------------------- + 989 | 1 debug.s 478 | Empty | 00 | | 0 | 00/046F | + 990 | 1 debug.s 479 | Data | 00 | | 2 | 00/046F : 00 00 | errCODE ds 2 + 991 | 1 debug.s 480 | Empty | 00 | | 0 | 00/0471 | + 992 | 1 debug.s 481 | Data | 00 | | 2 | 00/0471 : 02 00 | proQUIT dw 2 ; pCount + 993 | 1 debug.s 482 | Data | 00 | | 4 | 00/0473 : 00 00 00 00 | ds 4 ; 02 pathname + 994 | 1 debug.s 483 | Data | 00 | | 2 | 00/0477 : 00 00 | ds 2 ; 06 flags + 995 | 1 debug.s 484 | Empty | 00 | | 0 | 00/0479 | + 996 | 1 debug.s 485 | Data | 00 | | 2 | 00/0479 : 08 00 | proDINFO dw 8 ; Parms for DInfo + 997 | 1 debug.s 486 | Data | 00 | | 2 | 00/047B : 00 00 | ds 2 ; 02 device num + 998 | 1 debug.s 487 | Data | 00 | 3 | 4 | 00/047D : D9 04 00 00 | adrl devINFO ; 04 device name + 999 | 1 debug.s 488 | Data | 00 | | 2 | 00/0481 : 00 00 | ds 2 ; 08 characteristics + 1000 | 1 debug.s 489 | Data | 00 | | 4 | 00/0483 : 00 00 00 00 | ds 4 ; 0A total blocks + 1001 | 1 debug.s 490 | Data | 00 | | 2 | 00/0487 : 00 00 | ds 2 ; 0E slot number + 1002 | 1 debug.s 491 | Data | 00 | | 2 | 00/0489 : 00 00 | ds 2 ; 10 unit number + 1003 | 1 debug.s 492 | Data | 00 | | 2 | 00/048B : 00 00 | ds 2 ; 12 version + 1004 | 1 debug.s 493 | Data | 00 | | 2 | 00/048D : 00 00 | ds 2 ; 14 device id + 1005 | 1 debug.s 494 | Empty | 00 | | 0 | 00/048F | + 1006 | 1 debug.s 495 | Data | 00 | | 2 | 00/048F : 06 00 | proDREAD dw 6 ; pCount + 1007 | 1 debug.s 496 | Data | 00 | | 2 | 00/0491 : 00 00 | ds 2 ; 02 devNum + 1008 | 1 debug.s 497 | Data | 00 | 3 | 4 | 00/0493 : 1B 05 00 00 | adrl myBUFFER ; 04 buffer + 1009 | 1 debug.s 498 | Data | 00 | | 4 | 00/0497 : 00 02 00 00 | adrl 512 ; 08 requestCount + 1010 | 1 debug.s 499 | Data | 00 | | 4 | 00/049B : 00 00 00 00 | adrl 0 ; 0C startingBlock + 1011 | 1 debug.s 500 | Data | 00 | | 2 | 00/049F : 00 02 | dw 512 ; 10 blockSize + 1012 | 1 debug.s 501 | Data | 00 | | 4 | 00/04A1 : 00 00 00 00 | ds 4 ; 14 transferCount + 1013 | 1 debug.s 502 | Empty | 00 | | 0 | 00/04A5 | + 1014 | 1 debug.s 503 | Data | 00 | | 2 | 00/04A5 : 06 00 | proDWRITE dw 6 ; pCount + 1015 | 1 debug.s 504 | Data | 00 | | 2 | 00/04A7 : 00 00 | ds 2 ; 02 devNum + 1016 | 1 debug.s 505 | Data | 00 | 3 | 4 | 00/04A9 : 1B 05 00 00 | adrl myBUFFER ; 04 buffer + 1017 | 1 debug.s 506 | Data | 00 | | 4 | 00/04AD : 00 02 00 00 | adrl 512 ; 08 requestCount + 1018 | 1 debug.s 507 | Data | 00 | | 4 | 00/04B1 : 00 00 00 00 | adrl 0 ; 0C startingBlock + 1019 | 1 debug.s 508 | Data | 00 | | 2 | 00/04B5 : 00 02 | dw 512 ; 10 blockSize + 1020 | 1 debug.s 509 | Data | 00 | | 4 | 00/04B7 : 00 00 00 00 | ds 4 ; 14 transferCount + 1021 | 1 debug.s 510 | Empty | 00 | | 0 | 00/04BB | + 1022 | 1 debug.s 511 | Data | 00 | | 2 | 00/04BB : 05 00 | proDSTATUS dw 5 ; pCount + 1023 | 1 debug.s 512 | Data | 00 | | 2 | 00/04BD : 00 00 | ds 2 ; 02 devNum + 1024 | 1 debug.s 513 | Data | 00 | | 2 | 00/04BF : 00 00 | ds 2 ; 04 code ($0000 = Device Status) + 1025 | 1 debug.s 514 | Data | 00 | 3 | 4 | 00/04C1 : 1B 07 00 00 | adrl myLIST ; 06 list + 1026 | 1 debug.s 515 | Data | 00 | | 4 | 00/04C5 : 00 02 00 00 | adrl 512 ; 0A requestCount (a big buffer) + 1027 | 1 debug.s 516 | Data | 00 | | 4 | 00/04C9 : 00 00 00 00 | ds 4 ; 0E transferCount + 1028 | 1 debug.s 517 | Empty | 00 | | 0 | 00/04CD | + 1029 | 1 debug.s 518 | Comment | 00 | | 0 | 00/04CD | *---------- + 1030 | 1 debug.s 519 | Empty | 00 | | 0 | 00/04CD | + 1031 | 1 debug.s 520 | Data | 00 | | 12 | 00/04CD : 0B 2E 41 53 | strDEVICE str '.ASSDDevice' ; length is 12 chars (including length byte) | | | | | | 53 44 44 65 | | | | | | | 76 69 63 65 | - 991 | 1 debug.s 480 | Empty | 00 | | 0 | 00/049C | - 992 | 1 debug.s 481 | Data | 00 | | 2 | 00/049C : 32 00 | devINFO dw $0032 ; buffer size - 993 | 1 debug.s 482 | Data | 00 | | 1 | 00/049E : 00 | devINFO1 db $00 ; length - 994 | 1 debug.s 483 | Data | 00 | | 1 | 00/049F : 00 | devINFO2 db $00 - 995 | 1 debug.s 484 | Data | 00 | | 48 | 00/04A0 : 00 00 00 00 | devINFO3 ds $30 ; data + 1032 | 1 debug.s 521 | Empty | 00 | | 0 | 00/04D9 | + 1033 | 1 debug.s 522 | Data | 00 | | 2 | 00/04D9 : 32 00 | devINFO dw $0032 ; buffer size + 1034 | 1 debug.s 523 | Data | 00 | | 1 | 00/04DB : 00 | devINFO1 db $00 ; length + 1035 | 1 debug.s 524 | Data | 00 | | 1 | 00/04DC : 00 | devINFO2 db $00 + 1036 | 1 debug.s 525 | Data | 00 | | 48 | 00/04DD : 00 00 00 00 | devINFO3 ds $30 ; data | | | | | | 00 00 00 00 | | | | | | | 00 00 00 00 | | | | | | | 00 00 00 00 | @@ -693,19 +734,19 @@ | | | | | | 00 00 00 00 | | | | | | | 00 00 00 00 | | | | | | | 00 00 00 00 | - 996 | 1 debug.s 485 | Empty | 00 | | 0 | 00/04D0 | - 997 | 1 debug.s 486 | Comment | 00 | | 0 | 00/04D0 | *---------- - 998 | 1 debug.s 487 | Empty | 00 | | 0 | 00/04D0 | - 999 | 1 debug.s 488 | Data | 00 | | 2 | 00/04D0 : 00 00 | appID ds 2 - 1000 | 1 debug.s 489 | Data | 00 | | 2 | 00/04D2 : 00 00 | myID ds 2 - 1001 | 1 debug.s 490 | Empty | 00 | | 0 | 00/04D4 | - 1002 | 1 debug.s 491 | Data | 00 | | 2 | 00/04D4 : 00 00 | myDP ds 2 - 1003 | 1 debug.s 492 | Data | 00 | | 4 | 00/04D6 : 00 00 00 00 | ptrBUFFER ds 4 - 1004 | 1 debug.s 493 | Data | 00 | | 4 | 00/04DA : 00 00 00 00 | haBUFFER ds 4 - 1005 | 1 debug.s 494 | Empty | 00 | | 0 | 00/04DE | - 1006 | 1 debug.s 495 | Comment | 00 | | 0 | 00/04DE | *---------- - 1007 | 1 debug.s 496 | Empty | 00 | | 0 | 00/04DE | - 1008 | 1 debug.s 497 | Data | 00 | | 512 | 00/04DE : BD BD BD BD | myBUFFER ds 512,$bd + 1037 | 1 debug.s 526 | Empty | 00 | | 0 | 00/050D | + 1038 | 1 debug.s 527 | Comment | 00 | | 0 | 00/050D | *---------- + 1039 | 1 debug.s 528 | Empty | 00 | | 0 | 00/050D | + 1040 | 1 debug.s 529 | Data | 00 | | 2 | 00/050D : 00 00 | appID ds 2 + 1041 | 1 debug.s 530 | Data | 00 | | 2 | 00/050F : 00 00 | myID ds 2 + 1042 | 1 debug.s 531 | Empty | 00 | | 0 | 00/0511 | + 1043 | 1 debug.s 532 | Data | 00 | | 2 | 00/0511 : 00 00 | myDP ds 2 + 1044 | 1 debug.s 533 | Data | 00 | | 4 | 00/0513 : 00 00 00 00 | ptrBUFFER ds 4 + 1045 | 1 debug.s 534 | Data | 00 | | 4 | 00/0517 : 00 00 00 00 | haBUFFER ds 4 + 1046 | 1 debug.s 535 | Empty | 00 | | 0 | 00/051B | + 1047 | 1 debug.s 536 | Comment | 00 | | 0 | 00/051B | *---------- + 1048 | 1 debug.s 537 | Empty | 00 | | 0 | 00/051B | + 1049 | 1 debug.s 538 | Data | 00 | | 512 | 00/051B : BD BD BD BD | myBUFFER ds 512,$bd | | | | | | BD BD BD BD | | | | | | | BD BD BD BD | | | | | | | BD BD BD BD | @@ -833,7 +874,7 @@ | | | | | | BD BD BD BD | | | | | | | BD BD BD BD | | | | | | | BD BD BD BD | - 1009 | 1 debug.s 498 | Data | 00 | | 512 | 00/06DE : 00 00 00 00 | myLIST ds 512 + 1050 | 1 debug.s 539 | Data | 00 | | 512 | 00/071B : 00 00 00 00 | myLIST ds 512 | | | | | | 00 00 00 00 | | | | | | | 00 00 00 00 | | | | | | | 00 00 00 00 | @@ -961,6 +1002,6 @@ | | | | | | 00 00 00 00 | | | | | | | 00 00 00 00 | | | | | | | 00 00 00 00 | - 1010 | 1 debug.s 499 | Empty | 00 | | 0 | 00/08DE | - 1011 | 1 debug.s 500 | Empty | 00 | | 0 | 00/08DE | + 1051 | 1 debug.s 540 | Empty | 00 | | 0 | 00/091B | + 1052 | 1 debug.s 541 | Empty | 00 | | 0 | 00/091B | ------+-------------------+-------------+----+---------+------+-----------------------+-------------------------------------------------------------------