Faicuai Posted July 2, 2018 Share Posted July 2, 2018 The recovery BIOS area sounds promising, but how can that area be accessed? No idea... In theory, the host Atari could just boot into it, whatever code is there... I CANNOT find a single trace of documentation for it, nor the "BOOT Diagnostic Cart" option on Incognito / Ultimate BIOS... I believe that the Incognito / Ultimate SIDE-Loader screen (accessed with "L" from main BIOS screen) is probably the way to go. IndusGT accepts code-upload, and all is needed to push existing 4-5 sectors worth of Indus-Loader bytes into IndusGT ram, via SIO upload code, which is natively supported in v1.20 rom. This could be done with a simple .EXE or .COM that runs in memory space not conflictive with SIDE-Loader space. Once that is done, IndusGT would be ready for EVERYTHING (whether it is SDX, or Atari DOS, or ANY Dos, it would not matter!) The advantage here is that Indus-Doubler could be easily updated and easily-loaded into Atari (no re-flashing needed into Incognito / Ultimate). The disadvantage? You NEED to remember this step prior to booting into your desired application. 2 Quote Link to comment Share on other sites More sharing options...
sup8pdct Posted July 2, 2018 Share Posted July 2, 2018 This would be the easiest way if the indus has a command to upload and trigger execution of the code via SIO. I don't know for sure, but I figured the INDUS.SYS with SDX does something like this. Maybe that should be checked out to see how it's doing it? Or analyse the SIO commands it's sending to the drive. Indus does a command that loads code and executes it. it is X here is the code that handles it EXTERNALCMD: ; command X 41 bytes CALL Lb42 ; 02D8 CD0F0A send Ack LD A,($7821) ; 02DB 3A2178 daux2 AND $01 ; 02DE E601 aux 2 = 0? JR Z,Lb53 ; 02E0 2817 go straight to external routine LD HL,$7F00 ; 02E2 21007F buffer to put data LD A,(CAUX12) ; 02E5 3A2078 number of bytes to load Daux1 LD B,A ; 02E8 47 CALL Lb39 ; 02E9 CD7C09 get bytes JP NZ,Lb54 ; 02EC C2A00A CALL Lb55 ; 02EF CD1B0A send Ack LD A,$43 ; 02F2 3E43 'C'omplete CALL SSIOBYTE ; 02F4 CD230A send byte sio JR Lb56 ; 02F7 1806 jump relative always Lb53: CALL Lb38 ; 02F9 CD007F call external command CALL C,SSIOBYTE ; 02FC DC230A send byte sio Lb56: XOR A ; 02FF AF zero A RET ; 0300 C9 . James 2 Quote Link to comment Share on other sites More sharing options...
Kyle22 Posted July 3, 2018 Share Posted July 3, 2018 Here's how to make an INDUS.SYS for SDX: You will, of course, need to replace all the db's with your own code. Begin file below here............................... $title (INDUS GT High Speed Code for Downloading into drive)$include "kernal" seg indus;=======================================; Program all indus drives; ------------------------pro_indus proc lda #8 sta dunit..top jsr happy jsr get_serial ; get serial number from indus bmi ..skip ldx i_serial+1 ; high serial (always 1) lda i_serial cpx #1 bne ..skip ; too old or new a version cmp #$10 beq ..v1.10 bcc ..skip ; too old cmp #$21 bcs ..skip..v1.20 jsr do_1.20 jmp ..cont..v1.10 jsr do_1.10..cont ldy #2 ; send loader to indus... jsr send_block bmi ..skip ldy #0 ; send data block 1 jsr send_data bmi ..skip jsr intermission bmi ..skip$( -- skip CPM portion of INDUS code!! -- )------------------------------------------- ldy #2 ; send data block 2 jsr send_data bmi ..skip jsr intermission bmi ..skip$) jsr statck ; allow switch of speeds.....skip dec dunit bne ..top rts endproc; Do status check on drive; ------------------------statck proc ldx #10-1 db $2Chappy ldx #20-1 ldy #10-1 ; Do status check on drive..dcb lda dcbdat,x ; ------------------------ sta dcomnd,y ; this allows drive to bomb out early dex dey ; if no drive online (reduces the sputter bpl ..dcb ; time)... Also, allows speed switch in HSIO jmp sector_io endproc; status command data; -------------------dcbdat db 'S',$40 dw $2EA,1,4,0 db 'H',$00 dw $0,1,0,$20; Get serial number from drive; ----------------------------get_serial proc ldy #0 jsr send_block ; send gserial routine bmi ..xit lda #2 ; receive two bytes... sta dbytlo lda Aserial ldx Aserial+1 jsr receive..xit rts endprocAserial dw i_serial; Send a block with X command; ---------------------------; in:; Y = index of block to sendsend_block proc lda #'X' sta dcomnd lda #$80 sta dstats lda bufad,y sta dbuflo lda bufad+1,y sta dbufhi lda bufle,y sta dbytlo sta sector ; length of block (this is how indus lda bufle+1,y ; knows the length) sta dbythi lda #5 ; timeout value for all these commands... sta dtimlo lda #$31 sta ddevic lda #1 sta sector+1 ; this is the load and go flag... jmp sector_io endproc; Send a block of data to indus; -----------------------------; in:; Y = 0 if first block; = 2 if second blocksend_data proc sty blok_idx..top lda nbytes,y bne ..some lda #0 ; set # bytes to send..some sta dbytlo lda blok_adr,y ldx blok_adr+1,y jsr send bmi ..xit ldy blok_idx lda nbytes,y beq ..256 clc ; process a block less than 256 bytes adc blok_adr,y sta blok_adr,y lda #0 sta nbytes,y adc blok_adr+1,y sta blok_adr+1,y jmp ..top..256 clc lda blok_adr+1,y adc #1 sta blok_adr+1,y sec lda nbytes+1,y sbc #1 sta nbytes+1,y bne ..top..xit rts endproc; Send/receive a block of data on indus; -------------------------------------; in:; XA = ptr to bufferreceive proc ldy #$40 db $2Csend ldy #$80 db $2Cintermission ldy #0 sty dstats sta dbuflo stx dbufhi lda #0 sta dbythi sta sector sta sector+1 lda dbytlo bne ..skip inc dbythi..skip lda #'X' sta dcomnd jmp sector_io ; do SIO endproc; Program with version 1.2 code; -----------------------------do_1.20 proc ldy #22-1..mov lda stg2_12,y sta ibuffr,y dey bpl ..mov ldy #8-1..mov2 lda blok_12,y sta blok_adr,y dey bpl ..mov2 rts endproc; Program with version 1.1 code; -----------------------------do_1.10 proc ldy #22-1..mov lda stg2_11,y ; get stage2 data sta ibuffr,y dey bpl ..mov ldy #8-1..mov2 lda blok_11,y sta blok_adr,y dey bpl ..mov2 rts endprocblok_idx ds 1 ; temp for send_data;===========================================================; Holds buffer start/length data for send_data; --------------------------------------------blok_adr ds 4nbytes ds 4; Block length data for version 1.10; ----------------------------------blok_11 dw b1_v11, b2_v11 dw xb1_v11-b1_v11, xb2_v11-b2_v11; Block length data for version 1.20; ----------------------------------blok_12 dw b1_v12, b2_v12 dw xb1_v12-b1_v12, xb2_v12-b2_v12;============================================================; Holds buffer start/length data for send_block; ---------------------------------------------bufad dw gserial, loaderbufle dw xgserial-gserial, xloader-loader; Program to get serial number from indus; ---------------------------------------gserial db $0e, $00, $cd, $04, $00, $ed, $53, $17 db $7f, $11, $17, $7f, $06, $02, $0e, $08 db $3e, $43, $cd, $04, $00, $b7, $c9i_serial db $00, $00xgserial; Loader for indus; ----------------loader db $f3, $2a, $e3, $7f, $22, $04, $78 db $22, $07, $78, $22, $0a, $78, $2a, $d7 db $7f, $ed, $5b, $e1, $7f, $73, $23, $72 db $fb, $21, $cd, $7f, $7e, $34, $b7, $28; db $64, $3d, $28, $33, $3d, $28, $5e, $f3; no CPM replacement for above db $64, $00, $00, $00, $00, $00, $00, $f3 ; no-op CPM stuff db $2a, $d7, $7f, $ed, $5b, $d9, $7f, $73 db $23, $72, $3a, $ce, $7f, $b7, $28, $14 db $2a, $dd, $7f, $22, $07, $78, $2a, $df db $7f, $22, $0a, $78, $2a, $db, $7f, $22 db $04, $78, $18, $06, $2a, $e1, $7f, $22 db $0a, $78, $fb, $3e, $43, $37, $c9, $2a db $d5, $7f, $22, $d1, $7f, $2a, $d3, $7f db $22, $cf, $7f, $3a, $00, $10, $3a, $01 db $10, $e6, $10, $20, $10, $21, $ff, $ff db $46, $af, $77, $be, $20, $07, $3c, $20 db $f9, $70, $3d, $18, $01, $af, $32, $ce db $7f, $3e, $43, $37, $c9, $ed, $5b, $d1 db $7f, $2a, $cf, $7f, $e5, $7b, $b7, $28 db $0b, $47, $1e, $00, $85, $6f, $7c, $ce db $00, $67, $18, $04, $06, $00, $15, $24 db $e3, $d5, $eb, $0e, $07, $cd, $04, $00 db $c1, $e1, $28, $08, $3a, $ce, $7f, $b7 db $3e, $4e, $20, $18, $22, $cf, $7f, $ed db $43, $d1, $7f, $78, $b1, $28, $04, $21 db $cd, $7f, $35, $3e, $41, $0e, $06, $cd db $04, $00, $3e, $43, $37, $c9, $00, $00ibuffr ds 22 ; buffer for 22 bytes of dataxloader; Data for stage 2 (version 1.10); -------------------------------stg2_11 dw $7b82, xb1_v11-b1_v11 dw $fbd9, xb2_v11-b2_v11 dw $783e, $7eeb, $fc31, $fbd9 dw $fc12, $7b82, $0c4e; Data for stage 2 (version 1.20); -------------------------------stg2_12 dw $7b84, xb1_v12-b1_v12 dw $fbd9, xb2_v12-b2_v12 dw $7840, $7eed, $fc31, $fbd9 dw $fc12, $7b84, $0ca0;============================================; Block 1 of version 1.10 code; ----------------------------b1_v11 db $21, $00 db $00, $22, $2a, $78, $79, $07, $d0, $e1 db $9f, $32, $14, $78, $cb, $b9, $06, $08 db $21, $b6, $7b, $7e, $23, $b9, $28, $06 db $23, $23, $10, $f7, $18, $08, $7e, $23 db $66, $6f, $cd, $b5, $7b, $c8, $01, $82 db $00, $cd, $46, $0c, $3e, $4e, $c3, $ca db $7e, $e9, $4e, $75, $7c, $4f, $a7, $7c db $50, $2c, $7c, $52, $18, $7c, $53, $ce db $7b, $57, $33, $7c, $21, $d0, $7c, $23 db $d6, $7c, $cd, $b6, $7e, $cd, $23, $05 db $cd, $f8, $08; buggy portion of STATUS command; db $3a, $00, $60, $e6, $40; db $c6, $ff, $9f, $e6, $08, $4f, $3a, $17; db $78, $c6, $ff, $9f, $e6, $20, $47; replacement code!!! 9-1-88 db $0e,$08,$3a,$17,$78,$b7,$28,$05,$c6,$fe db $1f,$e6,$a0,$47,$00,$00,$00,$00,$00,$00 db $3a db $1c, $78, $e6, $57, $b0, $b1, $21, $40 db $79, $77, $23, $cd, $9f, $0b, $3a, $1d db $78, $2f, $77, $23, $3a, $1b, $78, $77 db $23, $3a, $24, $78, $cb, $3f, $77, $3e db $43, $21, $40, $79, $06, $04, $cd, $98 db $7e, $c3, $2d, $02, $cd, $ee, $0b, $c2 db $5d, $0a, $cd, $b6, $7e, $cd, $23, $05 db $cd, $56, $04, $cd, $90, $7e, $af, $c9 db $cd, $26, $7e, $c0, $c3, $70, $7c, $cd db $26, $7e, $c0, $fe, $45, $28, $35, $cd db $4c, $0a, $cd, $69, $0a, $48, $06, $00 db $0d, $03, $2a, $22, $78, $11, $40, $79 db $ed, $b0, $cd, $56, $04, $fe, $45, $28 db $13, $cd, $69, $0a, $2a, $22, $78, $11 db $40, $79, $1a, $be, $20, $06, $10, $fa db $3e, $43, $18, $08, $21, $98, $8c, $cd db $d5, $0a, $3e, $45, $cd, $ca, $7e, $af db $c9, $cd, $b6, $7e, $cd, $23, $05, $21 db $ff, $02, $11, $40, $79, $01, $0c, $00 db $ed, $b0, $21, $45, $79, $c6, $ff, $9f db $e6, $04, $77, $23, $cd, $77, $0a, $05 db $48, $06, $00, $03, $70, $23, $71, $3e db $43, $21, $40, $79, $06, $0c, $cd, $98 db $7e, $af, $c9, $cd, $b6, $7e, $06, $0c db $21, $40, $79, $cd, $41, $7e, $c2, $63 db $0a, $cd, $c2, $7e, $cd, $23, $05, $3a db $45, $79, $b7, $28, $01, $3c, $32, $17 db $78, $32, $16, $78, $cd, $9f, $0b, $3e db $43, $c3, $70, $7c, $3e, $4e, $2e, $00 db $18, $0e, $2e, $02, $3a, $17, $78, $b7 db $3e, $04, $28, $04, $3e, $02, $18, $00 db $32, $84, $7d, $e5, $21, $17, $78, $7e db $d6, $02, $20, $07, $77, $32, $16, $78 db $cd, $9f, $0b, $cd, $b6, $7e, $e1, $3a db $17, $78, $f5, $85, $87, $6f, $26, $00 db $11, $86, $7d, $19, $7e, $23, $66, $6f db $22, $2a, $78, $cd, $23, $05, $f1, $32 db $17, $78, $32, $16, $78, $cd, $9f, $0b db $cd, $81, $08, $21, $ff, $ff, $22, $1e db $78, $cd, $77, $0a, $af, $32, $20, $78 db $3d, $21, $40, $79, $77, $23, $10, $fc db $cd, $b7, $07, $3e, $05, $32, $26, $78 db $cd, $07, $0b, $cd, $d6, $05, $32, $1d db $78, $e6, $44, $28, $1b, $47, $e6, $40 db $78, $20, $06, $21, $26, $78, $35, $20 db $e7, $cd, $b9, $0a, $26, $8e, $cd, $c8 db $0a, $21, $1c, $78, $cb, $d6, $18, $19 db $3a, $84, $7d, $21, $20, $78, $be, $28 db $04, $34, $34, $18, $c3, $cd, $07, $0b db $cd, $b4, $7d, $20, $04, $3e, $43, $18 db $02, $3e, $45, $cd, $86, $7e, $af, $c9 db $00, $00, $8e, $7d, $a1, $7d, $f9, $06 db $f9, $06; skew table for single density db 4, 8, 12, 16, 1, 5, 9, 13, 17 db 2, 6, 10, 14, 18, 3, 7, 11, 15, $80; skew table for double density db 1, 14, 9, 4, 17, 12, 7, 2, 15 db 10, 5, 18, 13, 8, 3, 16, 11, 6, $80 db $cd, $77, $0a, $78, $cb, $3f, $3d, $32 db $27, $78, $af, $32, $20, $78, $fd, $21 db $40, $79, $cd, $b7, $07, $cd, $7b, $07 db $dd, $2a, $2a, $78, $dd, $7e, $00, $32 db $02, $60, $3e, $05, $32, $26, $78, $2a db $22, $78, $cd, $98, $05, $28, $05, $cd db $2b, $09, $18, $05, $cd, $f8, $08, $f6 db $10, $e6, $1c, $28, $1f, $21, $26, $78 db $35, $20, $e4, $cd, $27, $0c, $fd, $75 db $00, $fd, $23, $fd, $74, $00, $fd, $23 db $21, $98, $8e, $cd, $c8, $0a, $21, $27 db $78, $35, $28, $13, $dd, $23, $dd, $7e db $00, $07, $30, $b8, $21, $20, $78, $34 db $34, $3a, $84, $7d, $be, $30, $a3, $c3 db $4f, $04, $cd, $ee, $0b, $c2, $5d, $0a db $cd, $b6, $7e, $cd, $3b, $7e, $c2, $63 db $0a, $cd, $c2, $7e, $c3, $78, $04, $cd db $69, $0a, $2a, $22, $78, $c5, $e5, $eb db $78, $d9, $4f, $0d, $06, $00, $03, $03 db $d9, $21, $00, $20, $7e, $e6, $fb, $f6 db $03, $47, $18, $04, $79, $12, $13, $78 db $be, $da, $5c, $7e, $08, $d9, $0b, $78 db $b1, $d9, $08, $0e, $7f, $ed, $47, $ed db $47, $be, $be, $00, $00, $ed, $47, $be db $cb, $19, $38, $f5, $08, $c2, $58, $7e db $79, $e1, $c1, $f5, $cd, $44, $0a, $c1 db $b8, $c9, $f5, $cd, $69, $0a, $f1, $21 db $40, $79, $18, $08, $f5, $cd, $69, $0a db $f1, $2a, $22, $78; 9-12-88 - moved delay in TXD to occur between COMP and data frame; overruns occurred easily before because could not turn off; NMI and still allow timeout to occur; db $48, $06, $5a, $cd; db $4c, $0c, $41, $cd, $ca, $7e db $cd,$ca,$7e,$48,$06,$5a,$cd,$4c,$0c,$41 db $c5, $e5 db $cd, $44, $0a, $e1, $c1, $f5, $7e, $cd db $ca, $7e, $23, $10, $f9, $f1, $cd, $ca db $7e, $c9, $3e, $41, $cd, $e6, $09, $3a db $14, $78, $32, $15, $78, $c9, $01, $82 db $00, $cd, $46, $0c, $3e, $41, $d9, $2f db $57, $1e, $02, $db, $05, $06, $08, $ed db $44, $cb, $1a, $4b, $cb, $11, $ed, $78 db $ed, $47, $00, $10, $f4, $ed, $47, $ed db $47, $ed, $44, $db, $04, $d9, $c9xb1_v11;============================================; Block 2 of version 1.10 code; ----------------------------b2_v11$(------ skip this stuff!!! -------) db $2e db $60, $3a, $01, $10, $a5, $bd, $20, $0f db $3a, $34, $78, $b5, $32, $34, $78, $3e db $ff, $32, $19, $78, $32, $1a, $78, $21 db $cd, $fe, $7e, $3c, $28, $10, $3d, $20 db $06, $3a, $19, $78, $b7, $28, $10, $36 db $ff, $3e, $00, $32, $35, $78, $21, $8e db $83, $22, $38, $78, $cd, $d5, $0a, $c9 db $79, $e6, $7f, $fe, $4f, $28, $0c, $fe db $24, $38, $08, $fe, $57, $20, $09, $3e db $ff, $18, $06, $3e, $ff, $32, $cd, $fe db $af, $32, $d0, $fe, $c3, $82, $7b, $e1 db $22, $ce, $fe, $f5, $3a, $cd, $fe, $b7 db $28, $4d, $cd, $23, $05, $cd, $77, $0a db $68, $2d, $26, $00, $23, $22, $d1, $fe db $29, $5d, $54, $29, $29, $29, $19, $22 db $d3, $fe, $3e, $12, $32, $d5, $fe, $af db $32, $d6, $fe, $32, $69, $ff, $eb, $21 db $d9, $fb, $dd, $21, $d8, $fe, $01, $03 db $00, $ed, $52, $38, $13, $dd, $36, $00 db $ff, $dd, $23, $dd, $75, $00, $dd, $23 db $dd, $74, $00, $dd, $09, $3c, $18, $e9 db $32, $d7, $fe, $af, $32, $cd, $fe, $f1 db $b7, $20, $05, $cd, $96, $fc, $18, $03 db $cd, $ab, $fc, $c9, $3a, $d0, $fe, $b7 db $20, $0a, $cd, $c1, $fc, $20, $05, $ed db $b0, $af, $18, $04, $af, $cd, $c9, $fe db $c9, $cd, $c9, $fe, $20, $10, $cd, $c1 db $fc, $20, $0a, $1a, $2f, $77, $13, $23 db $0b, $78, $b1, $20, $f6, $af, $c9, $3a db $20, $78, $b7, $20, $0d, $3a, $21, $78 db $3d, $20, $07, $3a, $69, $ff, $b7, $c2 db $d9, $fd, $cd, $ee, $fd, $28, $61, $21 db $d6, $fe, $7e, $b7, $20, $01, $34, $3a db $d8, $fe, $3c, $28, $4b, $3a, $d7, $fe db $4f, $06, $00, $69, $60, $29, $29, $09 db $4d, $44, $11, $d7, $fe, $19, $e5, $11 db $05, $00, $19, $eb, $e1, $e5, $f3, $ed db $b8, $23, $36, $ff, $23, $eb, $e1, $23 db $23, $ed, $a0, $ed, $a0, $21, $d6, $fe db $3a, $d7, $fe, $3d, $be, $38, $01, $34 db $2a, $de, $fe, $ed, $5b, $d9, $fe, $22 db $d9, $fe, $ed, $53, $de, $fe, $ed, $4b db $d3, $fe, $d3, $0f, $ed, $b0, $d3, $0e db $cd, $06, $fe, $c2, $ed, $fd, $18, $4c db $e5, $cd, $ba, $fe, $e1, $3a, $d8, $fe db $47, $3a, $20, $78, $b8, $28, $44, $5d db $54, $1b, $23, $4e, $23, $46, $c5, $23 db $4e, $23, $46, $c5, $e5, $01, $dc, $fe db $b7, $ed, $42, $4d, $44, $e1, $eb, $f3 db $ed, $b8, $e1, $22, $db, $fe, $e1, $e5 db $dd, $e1, $22, $de, $fe, $ed, $5b, $d9 db $fe, $ed, $4b, $d3, $fe, $d3, $0f, $1a db $ed, $a0, $dd, $77, $00, $dd, $23, $ea db $79, $fd, $d3, $0e, $3a, $20, $78, $32 db $d8, $fe, $fb, $3a, $d5, $fe, $47, $2a db $db, $fe, $dd, $2a, $d9, $fe, $ed, $5b db $d1, $fe, $3a, $21, $78, $4f, $7e, $b9 db $28, $19, $07, $38, $07, $dd, $19, $23 db $10, $f4, $18, $3f, $3a, $d5, $fe, $5f db $16, $00, $b7, $ed, $52, $ed, $5b, $d1 db $fe, $18, $e3, $3a, $20, $78, $b7, $20 db $20, $3a, $21, $78, $3d, $20, $1a, $dd db $e5, $e1, $01, $80, $00, $11, $6a, $ff db $ed, $b0, $3e, $ff, $32, $69, $ff, $cd db $ba, $fe, $dd, $21, $6a, $ff, $11, $80 db $00, $dd, $e5, $e1, $4b, $42, $ed, $5b db $22, $78, $af, $c9, $11, $05, $00, $21 db $d8, $fe, $3a, $d6, $fe, $47, $c6, $ff db $30, $09, $3a, $20, $78, $be, $28, $03 db $19, $10, $fa, $c9, $cd, $81, $08, $cd db $b7, $07, $3e, $05, $32, $26, $78, $3a db $0f, $78, $21, $ea, $ff, $cd, $9b, $05 db $20, $05, $cd, $f8, $08, $18, $78, $cd db $2b, $09, $e6, $1c, $28, $08, $21, $26 db $78, $35, $20, $e3, $18, $69, $3a, $15 db $78, $2f, $e6, $04, $47, $3a, $17, $78 db $87, $b0, $6f, $26, $00, $11, $86, $7d db $19, $5e, $23, $56, $eb, $3a, $ec, $ff db $47, $7e, $23, $b8, $28, $05, $07, $30 db $f8, $18, $44, $22, $db, $fe, $e5, $cd db $7b, $07, $dd, $e1, $2a, $d9, $fe, $dd db $7e, $00, $cb, $7f, $28, $0c, $3a, $d5 db $fe, $2f, $5f, $16, $ff, $13, $dd, $19 db $18, $ed, $32, $02, $60, $3e, $05, $32 db $26, $78, $e5, $e1, $e5, $cd, $98, $05 db $28, $05, $cd, $2b, $09, $18, $05, $cd db $f8, $08, $f6, $10, $e6, $1c, $28, $0b db $21, $26, $78, $35, $20, $e5, $e1, $f6 db $ff, $18, $1c, $c1, $dd, $46, $00, $dd db $23, $3a, $ec, $ff, $b8, $20, $b8, $ed db $4b, $d3, $fe, $2a, $d9, $fe, $7e, $2f db $77, $23, $0b, $78, $b1, $20, $f7, $c9 db $3a, $20, $78, $cb, $3f, $cd, $86, $0a db $22, $38, $78, $cd, $d5, $0a, $c9, $2a db $ce, $fe, $e9, $fe$)xb2_v11;============================================; Block 1 of version 1.20 code; ----------------------------b1_v12 db $21, $00, $00, $22, $2c, $78 db $79, $07, $d0, $e1, $9f, $32, $14, $78 db $cb, $b9, $06, $08, $21, $b8, $7b, $7e db $23, $b9, $28, $06, $23, $23, $10, $f7 db $18, $08, $7e, $23, $66, $6f, $cd, $b7 db $7b, $c8, $01, $82, $00, $cd, $12, $00 db $3e, $4e, $c3, $cc, $7e, $e9, $4e, $77 db $7c, $4f, $a9, $7c, $50, $2e, $7c, $52 db $1a, $7c, $53, $d0, $7b, $57, $35, $7c db $21, $d2, $7c, $23, $d8, $7c, $cd, $b8 db $7e, $cd, $60, $05, $cd, $35, $09; buggy portion of STATUS command; db $3a, $00, $60, $e6, $40; db $c6, $ff, $9f, $e6, $08, $4f, $3a, $17; db $78, $c6, $ff, $9f, $e6, $20, $47; replacement code!!! 9-1-88 db $0e,$08,$3a,$17,$78,$b7,$28,$05,$c6,$fe db $1f,$e6,$a0,$47,$00,$00,$00,$00,$00,$00 db $3a, $1e, $78, $e6, $57 db $b0, $b1, $21, $42, $79, $77, $23, $cd db $f2, $0b, $3a, $1f, $78, $2f, $77, $23 db $3a, $1d, $78, $77, $23, $3a, $26, $78 db $cb, $3f, $77, $3e, $43, $21, $42, $79 db $06, $04, $cd, $9a, $7e, $c3, $6f, $02 db $cd, $3c, $0c, $c2, $9a, $0a, $cd, $b8 db $7e, $cd, $60, $05, $cd, $95, $04, $cd db $92, $7e, $af, $c9, $cd, $28, $7e, $c0 db $c3, $72, $7c, $cd, $28, $7e, $c0, $fe db $45, $28, $35, $cd, $89, $0a, $cd, $a6 db $0a, $48, $06, $00, $0d, $03, $2a, $24 db $78, $11, $42, $79, $ed, $b0, $cd, $95 db $04, $fe, $45, $28, $13, $cd, $a6, $0a db $2a, $24, $78, $11, $42, $79, $1a, $be db $20, $06, $10, $fa, $3e, $43, $18, $08 db $21, $98, $8c, $cd, $12, $0b, $3e, $45 db $cd, $cc, $7e, $af, $c9, $cd, $b8, $7e db $cd, $60, $05, $21, $3e, $03, $11, $42 db $79, $01, $0c, $00, $ed, $b0, $21, $47 db $79, $c6, $ff, $9f, $e6, $04, $77, $23 db $cd, $b4, $0a, $05, $48, $06, $00, $03 db $70, $23, $71, $3e, $43, $21, $42, $79 db $06, $0c, $cd, $9a, $7e, $af, $c9, $cd db $b8, $7e, $06, $0c, $21, $42, $79, $cd db $43, $7e, $c2, $a0, $0a, $cd, $c4, $7e db $cd, $60, $05, $3a, $47, $79, $b7, $28 db $01, $3c, $32, $17, $78, $32, $16, $78 db $cd, $f2, $0b, $3e, $43, $c3, $72, $7c db $3e, $4e, $2e, $00, $18, $0e, $2e, $02 db $3a, $17, $78, $b7, $3e, $04, $28, $04 db $3e, $02, $18, $00, $32, $86, $7d, $e5 db $21, $17, $78, $7e, $d6, $02, $20, $07 db $77, $32, $16, $78, $cd, $f2, $0b, $cd db $b8, $7e, $e1, $3a, $17, $78, $f5, $85 db $87, $6f, $26, $00, $11, $88, $7d, $19 db $7e, $23, $66, $6f, $22, $2c, $78, $cd db $60, $05, $f1, $32, $17, $78, $32, $16 db $78, $cd, $f2, $0b, $cd, $be, $08, $21 db $ff, $ff, $22, $20, $78, $cd, $b4, $0a db $af, $32, $22, $78, $3d, $21, $42, $79 db $77, $23, $10, $fc, $cd, $f4, $07, $3e db $05, $32, $28, $78, $cd, $44, $0b, $cd db $13, $06, $32, $1f, $78, $e6, $44, $28 db $1b, $47, $e6, $40, $78, $20, $06, $21 db $28, $78, $35, $20, $e7, $cd, $f6, $0a db $26, $8e, $cd, $05, $0b, $21, $1e, $78 db $cb, $d6, $18, $19, $3a, $86, $7d, $21 db $22, $78, $be, $28, $04, $34, $34, $18 db $c3, $cd, $44, $0b, $cd, $b6, $7d, $20 db $04, $3e, $43, $18, $02, $3e, $45, $cd db $88, $7e, $af, $c9, $00, $00, $90, $7d db $a3, $7d, $36, $07, $36, $07; skew table for single density db 4, 8, 12, 16, 1, 5, 9, 13, 17 db 2, 6, 10, 14, 18, 3, 7, 11, 15, $80; skew table for double density db 1, 14, 9, 4, 17, 12, 7, 2, 15 db 10, 5, 18, 13, 8, 3, 16, 11, 6, $80 db $cd, $b4, $0a, $78 db $cb, $3f, $3d, $32, $29, $78, $af, $32 db $22, $78, $fd, $21, $42, $79, $cd, $f4 db $07, $cd, $b8, $07, $dd, $2a, $2c, $78 db $dd, $7e, $00, $32, $02, $60, $3e, $05 db $32, $28, $78, $2a, $24, $78, $cd, $d5 db $05, $28, $05, $cd, $68, $09, $18, $05 db $cd, $35, $09, $f6, $10, $e6, $1c, $28 db $1f, $21, $28, $78, $35, $20, $e4, $cd db $7f, $0c, $fd, $75, $00, $fd, $23, $fd db $74, $00, $fd, $23, $21, $98, $8e, $cd db $05, $0b, $21, $29, $78, $35, $28, $13 db $dd, $23, $dd, $7e, $00, $07, $30, $b8 db $21, $22, $78, $34, $34, $3a, $86, $7d db $be, $30, $a3, $c3, $8e, $04, $cd, $3c db $0c, $c2, $9a, $0a, $cd, $b8, $7e, $cd db $3d, $7e, $c2, $a0, $0a, $cd, $c4, $7e db $c3, $b7, $04, $cd, $a6, $0a, $2a, $24 db $78, $c5, $e5, $eb, $78, $d9, $4f, $0d db $06, $00, $03, $03, $d9, $21, $00, $20 db $7e, $e6, $fb, $f6, $03, $47, $18, $04 db $79, $12, $13, $78, $be, $da, $5e, $7e db $08, $d9, $0b, $78, $b1, $d9, $08, $0e db $7f, $ed, $47, $ed, $47, $be, $be, $00 db $00, $ed, $47, $be, $cb, $19, $38, $f5 db $08, $c2, $5a, $7e, $79, $e1, $c1, $f5 db $cd, $81, $0a, $c1, $b8, $c9, $f5, $cd db $a6, $0a, $f1, $21, $42, $79, $18, $08 db $f5, $cd, $a6, $0a, $f1, $2a, $24, $78; 9-12-88 - moved delay in TXD to occur between COMP and data frame; overruns occurred easily before because could not turn off; NMI and still allow timeout to occur; db $48, $06, $5a, $cd, $9e, $0c, $41, $cd; db $cc, $7e db $cd,$cc,$7e,$48,$06,$5a,$cd,$9e,$0c,$41 db $c5, $e5, $cd, $81, $0a, $e1 db $c1, $f5, $7e, $cd, $cc, $7e, $23, $10 db $f9, $f1, $cd, $cc, $7e, $c9, $3e, $41 db $cd, $23, $0a, $3a, $14, $78, $32, $15 db $78, $c9, $01, $82, $00, $cd, $12, $00 db $3e, $41, $d9, $2f, $57, $1e, $02, $db db $05, $06, $08, $ed, $44, $cb, $1a, $4b db $cb, $11, $ed, $78, $ed, $47, $00, $10 db $f4, $ed, $47, $ed, $47, $ed, $44, $db db $04, $d9, $c9xb1_v12;==========================================; Block 2 of version 1.20 code; ----------------------------b2_v12$(------ skip this stuff!!! -------) db $2e, $60, $3a, $01, $10 db $a5, $bd, $20, $0f, $3a, $36, $78, $b5 db $32, $36, $78, $3e, $ff, $32, $19, $78 db $32, $1a, $78, $21, $cd, $fe, $7e, $3c db $28, $10, $3d, $20, $06, $3a, $19, $78 db $b7, $28, $10, $36, $ff, $3e, $00, $32 db $37, $78, $21, $8e, $83, $22, $3a, $78 db $cd, $12, $0b, $c9, $79, $e6, $7f, $fe db $4f, $28, $0c, $fe, $24, $38, $08, $fe db $57, $20, $09, $3e, $ff, $18, $06, $3e db $ff, $32, $cd, $fe, $af, $32, $d0, $fe db $c3, $84, $7b, $e1, $22, $ce, $fe, $f5 db $3a, $cd, $fe, $b7, $28, $4d, $cd, $60 db $05, $cd, $b4, $0a, $68, $2d, $26, $00 db $23, $22, $d1, $fe, $29, $5d, $54, $29 db $29, $29, $19, $22, $d3, $fe, $3e, $12 db $32, $d5, $fe, $af, $32, $d6, $fe, $32 db $69, $ff, $eb, $21, $d9, $fb, $dd, $21 db $d8, $fe, $01, $03, $00, $ed, $52, $38 db $13, $dd, $36, $00, $ff, $dd, $23, $dd db $75, $00, $dd, $23, $dd, $74, $00, $dd db $09, $3c, $18, $e9, $32, $d7, $fe, $af db $32, $cd, $fe, $f1, $b7, $20, $05, $cd db $96, $fc, $18, $03, $cd, $ab, $fc, $c9 db $3a, $d0, $fe, $b7, $20, $0a, $cd, $c1 db $fc, $20, $05, $ed, $b0, $af, $18, $04 db $af, $cd, $c9, $fe, $c9, $cd, $c9, $fe db $20, $10, $cd, $c1, $fc, $20, $0a, $1a db $2f, $77, $13, $23, $0b, $78, $b1, $20 db $f6, $af, $c9, $3a, $22, $78, $b7, $20 db $0d, $3a, $23, $78, $3d, $20, $07, $3a db $69, $ff, $b7, $c2, $d9, $fd, $cd, $ee db $fd, $28, $61, $21, $d6, $fe, $7e, $b7 db $20, $01, $34, $3a, $d8, $fe, $3c, $28 db $4b, $3a, $d7, $fe, $4f, $06, $00, $69 db $60, $29, $29, $09, $4d, $44, $11, $d7 db $fe, $19, $e5, $11, $05, $00, $19, $eb db $e1, $e5, $f3, $ed, $b8, $23, $36, $ff db $23, $eb, $e1, $23, $23, $ed, $a0, $ed db $a0, $21, $d6, $fe, $3a, $d7, $fe, $3d db $be, $38, $01, $34, $2a, $de, $fe, $ed db $5b, $d9, $fe, $22, $d9, $fe, $ed, $53 db $de, $fe, $ed, $4b, $d3, $fe, $d3, $0f db $ed, $b0, $d3, $0e, $cd, $06, $fe, $c2 db $ed, $fd, $18, $4c, $e5, $cd, $ba, $fe db $e1, $3a, $d8, $fe, $47, $3a, $22, $78 db $b8, $28, $44, $5d, $54, $1b, $23, $4e db $23, $46, $c5, $23, $4e, $23, $46, $c5 db $e5, $01, $dc, $fe, $b7, $ed, $42, $4d db $44, $e1, $eb, $f3, $ed, $b8, $e1, $22 db $db, $fe, $e1, $e5, $dd, $e1, $22, $de db $fe, $ed, $5b, $d9, $fe, $ed, $4b, $d3 db $fe, $d3, $0f, $1a, $ed, $a0, $dd, $77 db $00, $dd, $23, $ea, $79, $fd, $d3, $0e db $3a, $22, $78, $32, $d8, $fe, $fb, $3a db $d5, $fe, $47, $2a, $db, $fe, $dd, $2a db $d9, $fe, $ed, $5b, $d1, $fe, $3a, $23 db $78, $4f, $7e, $b9, $28, $19, $07, $38 db $07, $dd, $19, $23, $10, $f4, $18, $3f db $3a, $d5, $fe, $5f, $16, $00, $b7, $ed db $52, $ed, $5b, $d1, $fe, $18, $e3, $3a db $22, $78, $b7, $20, $20, $3a, $23, $78 db $3d, $20, $1a, $dd, $e5, $e1, $01, $80 db $00, $11, $6a, $ff, $ed, $b0, $3e, $ff db $32, $69, $ff, $cd, $ba, $fe, $dd, $21 db $6a, $ff, $11, $80, $00, $dd, $e5, $e1 db $4b, $42, $ed, $5b, $24, $78, $af, $c9 db $11, $05, $00, $21, $d8, $fe, $3a, $d6 db $fe, $47, $c6, $ff, $30, $09, $3a, $22 db $78, $be, $28, $03, $19, $10, $fa, $c9 db $cd, $be, $08, $cd, $f4, $07, $3e, $05 db $32, $28, $78, $3a, $0f, $78, $21, $ea db $ff, $cd, $d8, $05, $20, $05, $cd, $35 db $09, $18, $78, $cd, $68, $09, $e6, $1c db $28, $08, $21, $28, $78, $35, $20, $e3 db $18, $69, $3a, $15, $78, $2f, $e6, $04 db $47, $3a, $17, $78, $87, $b0, $6f, $26 db $00, $11, $88, $7d, $19, $5e, $23, $56 db $eb, $3a, $ec, $ff, $47, $7e, $23, $b8 db $28, $05, $07, $30, $f8, $18, $44, $22 db $db, $fe, $e5, $cd, $b8, $07, $dd, $e1 db $2a, $d9, $fe, $dd, $7e, $00, $cb, $7f db $28, $0c, $3a, $d5, $fe, $2f, $5f, $16 db $ff, $13, $dd, $19, $18, $ed, $32, $02 db $60, $3e, $05, $32, $28, $78, $e5, $e1 db $e5, $cd, $d5, $05, $28, $05, $cd, $68 db $09, $18, $05, $cd, $35, $09, $f6, $10 db $e6, $1c, $28, $0b, $21, $28, $78, $35 db $20, $e5, $e1, $f6, $ff, $18, $1c, $c1 db $dd, $46, $00, $dd, $23, $3a, $ec, $ff db $b8, $20, $b8, $ed, $4b, $d3, $fe, $2a db $d9, $fe, $7e, $2f, $77, $23, $0b, $78 db $b1, $20, $f7, $c9, $3a, $22, $78, $cb db $3f, $cd, $c3, $0a, $22, $3a, $78, $cd db $12, $0b, $c9, $2a, $ce, $fe, $e9, $fe$)xb2_v12 end 1 Quote Link to comment Share on other sites More sharing options...
rcgldr Posted July 3, 2018 Author Share Posted July 3, 2018 Link to INITD.MAC. This is the Indus GT CP/M program that reads a file and create a bootable floppy disk, meant to be used for the Indus doubler. http://rcgldr.net/atari/INITD.MAC 3 Quote Link to comment Share on other sites More sharing options...
_The Doctor__ Posted July 10, 2018 Share Posted July 10, 2018 Progress on fixing your drive? Quote Link to comment Share on other sites More sharing options...
rcgldr Posted July 10, 2018 Author Share Posted July 10, 2018 Progress on fixing your drive? With the fan, it seems to be OK. I'm currently working on another project. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.