 .OPT NO LIST,NO MLIST› .OPT NO CLIST,NO EJECT›; SAVE #D1:ATARIROM.M65›;›; Comments follow in this file›;› .TITLE "Atari ROM Disassembly"› .IF .NOT .DEF DUNIT›@LF .=  0› .INCLUDE #D1:SYSEQU.M65› .INCLUDE #D1:MACROS.M65› .INCLUDE #D1:HARDCODE.M65› .ENDIF›  LIST 0› .INCLUDE #D1:INTERUPT.M65›  LIST 0› .INCLUDE #D1:INIT.M65›  LIST 0› .INCLUDE #D1:DISKOPS.M65›  LIST 0› .INCLUDE #D1:PARALLEL.M65›  LIST 0› .INCLUDE #D1:SELFTEST.M65›  LIST 0› .INCLUDE #D1:CHARSET2.M65›  LIST 0› .INCLUDE #D1:ST1.M65› .INCLUDE #D1:ST2.M65›  LIST 0› .INCLUDE #D1:FLOAT1.M65› .INCLUDE #D1:FLOAT2.M65›  LIST 0› .INCLUDE #D1:CHARSET1.M65›  LIST 0› .INCLUDE #D1:VECTABLE.M65›  LIST 0› .INCLUDE #D1:CIO.M65›  LIST 0› .INCLUDE #D1:PERHNDLR.M65›  LIST 0› .INCLUDE #D1:SIO.M65›  LIST 0› .INCLUDE #D1:STABLE1.M65›  LIST 0› .INCLUDE #D1:PHENTRY.M65›  LIST 0› .INCLUDE #D1:SCREEN1.M65› .INCLUDE #D1:SCREEN2.M65› .INCLUDE #D1:SCREEN3.M65› .INCLUDE #D1:SCREEN4.M65›  LIST 0› .INCLUDE #D1:STABLE2.M65›  LIST 0› .INCLUDE #D1:KEYTABLE.M65›  LIST 0› .INCLUDE #D1:KEYBDIRQ.M65›  LIST 0› .INCLUDE #D1:CASSETTE.M65›  LIST 0› .INCLUDE #D1:PRINTER.M65›  LIST 0› .INCLUDE #D1:ROMTEST.M65›  CHECK  0›  LIST 0› .END›;›; The XL/XE Operating System›;  Copyright Atari Inc.›;›; Disassembly by John Picken›; last rev. 14 Mar 96›;›; These files assemble an›; exact copy of the XL/XE OS›; under MAC/65 (disk or cart)›;›; Most non-local labels are›; from Mapping the Atari.›; Labels in many areas such›; as SIO are those found in›; the 800 source and those in›; floating point are from the›; Atari BASIC Source Book.›; Some were simply assigned,›; as disassembly was carried›; without access to other›; references.›;›; Line numbers reflect actual›; decimal addresses, eg.›;›;  49152 L49152  *= $C000›;    ..    ..       ..›;    ..    ..       ..›;  58829 ?58839  LDA #$FF›;  58831 L59831  JSR L60321›;›; This system makes re-assembly›; and de-bugging considerably›; simpler.›;›; Macros are used to force›; MAC/65 to use absolute›; addressing mode on page zero›; to match original code. I›; suspect these occurrences›; were the result of use of›; a cross-assembler that wasn't›; smart enough to use zero page›; mode where applicable.›;›; Other macros are used solely›; to check assembly addresses›; and for assembly listing›; control. See MACROS.LST for›; explanation.›