IRQ-Routine DAFD: 48 PHA Prozessor-Register retten DAFE: 8A TXA DAFF: 48 PHA DB00: 98 TYA DB01: 48 PHA DB02: AD 0D 40 LDA $400D ICR: Interrupt-Ursache holen DB05: A8 TAY DB06: 25 76 AND $76 Bus-Modus b3=1: FSM-erlaubt ? DB08: 29 08 AND #$08 und wenn ja: Byte ueber FSM-empfangen ? DB0A: F0 06 BEQ $DB12 nein, ==> DB0C: A5 76 LDA $76 DB0E: 09 20 ORA #$20 FSM-Modus aktivieren DB10: 85 76 STA $76 Einsprung von $DB0A: DB12: 98 TYA DB13: 29 10 AND #$10 ATN aufgetreten ? DB15: F0 06 BEQ $DB1D nein, ==> DB17: A5 76 LDA $76 DB19: 09 01 ORA #$01 Flag fuer ATN merken DB1B: 85 76 STA $76 Einsprung von $DB15: DB1D: 98 TYA DB1E: 29 02 AND #$02 Timer-IRQ aufgetreten ? DB20: F0 03 BEQ $DB25 nein, ==> DB22: 20 39 FF JSR $FF39 Controller-Routine aufrufen Einsprung von $DB20: DB25: BA TSX DB26: BD 04 01 LDA $0104,X BRK-Kommando ? DB29: 29 10 AND #$10 DB2B: F0 03 BEQ $DB30 nein, ==> DB2D: 20 39 FF JSR $FF39 Controller-Routine aufrufen Einsprung von $DB2B: DB30: 68 PLA Prozessor-Register zurueckholen DB31: A8 TAY DB32: 68 PLA DB33: AA TAX DB34: 68 PLA DB35: 40 RTI ROM-Tabellen U0-Befehle: Adressen, Befehlsnr., Name, Drive, Seite DB36: 11 BB W $BB11 $00: Read N0 S0 DB38: FA BA W $BAFA $01: Read (n.v.) N1 S0 DB3A: 01 BC W $BC01 $02: Write N0 S0 DB3C: F9 BB W $BBF9 $03: Write (n.v.) N1 S0 DB3E: B2 BC W $BCB2 $04: Inquire Disk N0 S0 DB40: FA BA W $BAFA $05: Inq.D.(n.v.) N1 S0 DB42: 12 BD W $BD12 $06: Format N0 DB44: 12 BD W $BD12 $07: Format N1 DB46: FC BD W $BDFC $08: (Syntax Error) DB48: FC BD W $BDFC $09: (Syntax Error) DB4A: 06 BE W $BE06 $0a: Query Format N0 S0 DB4C: FA BA W $BAFA $0b: Query (n.v.) N1 S0 DB4E: BB BE W $BEBB $0c: Inquire Stat N0 DB50: FA BA W $BAFA $0d: Inq.S.(n.v.) N1 DB52: F8 BE W $BEF8 $0e: (Syntax Error) DB54: F8 BE W $BEF8 $0f: (Syntax Error) DB56: 11 BB W $BB11 $10: Read N0 S1 DB58: FA BA W $BAFA $11: Read (n.v.) N1 S1 DB5A: 01 BC W $BC01 $12: Write N0 S1 DB5C: F9 BB W $BBF9 $13: Write (n.v.) N1 S1 DB5E: B2 BC W $BCB2 $14: Inquire Disk N0 S1 DB60: FA BA W $BAFA $15: Inq.D.(n.v.) N1 S1 DB62: 12 BD W $BD12 $16: Format N0 DB64: 12 BD W $BD12 $17: Format N1 DB66: CB 89 W $89CB $18: (rts) DB68: CB 89 W $89CB $19: (rts) DB6A: 06 BE W $BE06 $1a: Query Format N0 S1 DB6C: FA BA W $BAFA $1b: Query (n.v.) N1 S1 DB6E: 02 BF W $BF02 $1c: Dump Cache N0 DB70: 02 BF W $BF02 $1d: Dump Cache N1 DB72: 3C AA W $AA3C $1e: ChgUtl DB74: D5 B8 W $B8D5 $1f: Fastload DB76: 06 Anzahl der BAM-Bytes pro Spur DB77: 04 Position des Disknamens im Verzeichnis-Header Diskettenkommandos DB78: 56 49 2F 4D 42 55 50 26 vi/mbup& [Der sowieso nicht verwendbare DB80: 43 52 53 4E crsn Duplicate-Befehl der 1541 ist DB84: 09 0C 0F 12 15 18 1B 1E Lo-Bytes durch den Partition-Befehl '/' DB8C: 21 24 27 2A ersetzt worden.] DB90: FF FF FF FF FF FF FF FF Hi-Bytes DB98: FF FF FF FF Bitmuster zur Ueberpruefung des Befehlsformates b0 : 1: '=' notwendig b1 : 1: '=' verboten b2 : 0: ',' nach '=' erlaubt b3 : 0: '*' nach '=' erlaubt b4 : immer 0 b5 : immer 1 b6 : 0: ',' vor '=' erlaubt b7 : 0: '*' vor '=' erlaubt DB9C: 51 %01010001 Copy DB9D: DD %11011101 Rename DB9E: 1C %00011100 Scratch DB9F: 9E %10011110 New DBA0: 1C %00011100 Laden DBA1: 52 57 41 4D 'RWAM' Filemodi DBA5: 44 53 50 55 4C 43 'DSPULC' Filetypen DBAB: 44 53 50 55 52 43 DSPURC Filetypen DBB1: 45 45 52 53 45 42 EERSEB [senkrecht lesen !] DBB6: 4C 51 47 52 4C 4D LQGRLM DBBD: 00 z-Flag setzen durch BIT-Befehl gezieltes Setzen der nv-Flags durch BIT-Befehl DBBE: 3F 7F BF FF --, -v, n-, nv DBC2: 01 FF FF 01 00 Kopfjustage bei Leseproblemen (n.v.) Previous Page / Next Page |