þþ*èX;SAVE #D2:DUPEQU.M65òA‡EQUATESAüX; **** EQUATES ****X;X;X;$ ƒCIOVä. …DKHNDSä3,†SECSIZ€;; Assume 128 byte sectors only8†SETVBV\äB†SYSVBV_äL†XITVBVbäV†CIOINVnä`7†POKMSK;; Pokey interrupt mask (shadow for IRQEN)j-…IRQENÒ;; IRQ interrupt enable on pokeyt†MEMTOPå~ †BRKKEYˆ †DOSVEC ’†DOSINI ;;DOS INIT VECTORœ †WARMST¦ †LMARGNR° †RMARGNSº†CARTSTú¿Ä3‡INTRVEC ;;INTERRUPT VECTOR LOC FOR SIO PATCHÎ …MEMLOç؆SHFLOK¾â†INITADâì …RUNADàö †ICHIDZ  †ICDNOZ!  †ICBALZ$ †ICBAHZ% †ICIDNO.( †MAXDEV!2†HATABS<†USRDOSF ƒFMSP†FMINITƒFMSàZ7†DRVBYT ;; Drive byte - tells which drives exist.dƒDOSƒFMS@n!†WRMSTRtä;;WARM START VECTORx?…BSIORr;;ENTRY POINT TO FMS DISK HANDLER USED BY DUP DISK‚X;Œ ‚CR›– …SPACE   ƒCUPª ƒCDN´ ƒCLF¾ ƒCRTÈ ƒDLLœÒ …CLSCR}Ü(ƒEOFˆ;;ENDFILE RETURN CODE FROM CIOæX;ðX;ú „OPEN …CLOSE  †PUTCHR  †GETCHR" †GETREC, †PUTREC 6 †RENAME @ †DELETE!J †FORMATþO9ˆFORCEFMTý;; Forces sgl or dbl format (aux1 is flag)T „LOCK#^ †UNLOCK$h0†STAREQS;;STATUS COMMAND TO DISK CONTROLLERrX;| …IOCB1†X;3†DVSTATê;;ADDRESS OF STATUS INFO STORED BY OSšX;¤X;® ƒDCB¸…DUNITƒDCB†DCOMNDƒDCB̆DSTATSƒDCBÖ†DBUFLOƒDCBà†DBUFHIƒDCBê„DSLOƒDCB ô„DSHIƒDCB þX; „IOCB@…ICHID„IOCB…ICDNO„IOCB&…ICCOM„IOCB0…ICSTA„IOCB:…ICBAL„IOCBD…ICBAH„IOCBN…ICBLL„IOCBX…ICBLH„IOCB b…ICAX1„IOCB l…ICAX2„IOCB vX;€ …SYSEDŠ …OWRIT” †ORDWRT žX;¨X;²(X; **** ZERO PAGE VARIABLES ****¼X;ÆX;ÐÚ †JMPTBLä …RAMLOî>†BUFADR…RAMLO;;SAVE AREA FOR BUFFER ADDRESS USED BY USEPGMøX;X; X; Equates within FMS:X; '‡VTOCPTRE;; Address of VTOC buffer*/‡MAXVTOC;; Maximum byte index w/ in VTOC4.†ENTSTK ;; Stack pointer on entry to FMS>/†RDVTOCT;; Routine to read vtoc from diskH-†WRVTOC”;; " " write " to "RX;