@L}5 _$% l0$)$$Hȱ$ UhL" `e$$%`$%`  R@P!( L(1   Y I`  d  Ld M * @  $ % CC$$)%1 Udߥ$9%: !0 S$% DD˙`  }J)Lr d M * @  $ % CC$$)%1 Udߥ$9%: !0 S$%} DD˙`  }J)Lr J  ((  p L ()   J}L= ( L 0q A    IB JC;? D W } LL  ` W )LA!  ߰")-݆ p" } $G@LL 08`Q")<2Q0 -G$Ș݆ UL# ; p8(()(0ʥ)NQ` }$GȘ݆LU )L ݆ L GȘ ݆LL )W>Z   HH)H }p h  hyhy D L> L JJ    ! LA*` BF }7'8  M HN H` 8 Z  \LdJJ!"! GFE@F (!L }EE !E^ ^ E E7EȩEdE/EȩE  D } .L }  ;F d  ;?F7F? ( .   Z D LL d } . D  L    p  E` , d)  D L) 0BM݊L݉} ML  N݆ L NLML [ TEqEHȱEqEh 0Gȹ G} HLL GɛL  LFREE SECTORS G) *Gȩ GȽG GȌ*jj >G} C8jJ3j2CD( C202C ԠBX` N 1? l LlD:RAMDISK}.COMLu L1 L ;LHL  T`  `1  ɐ     `TU  } L ? .  t`GBJ ~DEHI B V0dV!}QDEHI VF9 ,0 ,0 s0hhL  L` H hDHEh"}DEL8HI4 0 HI,0 0  9 .G VLO#},0 L4*IJ`llD1:AUTORUN.SYSNEED MEM.SAV TO LOAD THIS FILE.D1:MEM.SAV J y08 B|DEHI$} V0 0`B;DEL`?<0LV`@ʆ v s? F0Ξ05: [ BDEHI%} VY8 B V  @  /DE `E:D1:DUP.SYSERROR-SAVING USER MEMORY ON DISKTYPE Y TO &}STILL RUN DOS B;DE J  (` 9 V⪍ ઍ  -'}LLu ÝDEHILV 9 .l 9 .l  `` s$B BH(}I|DE V BLV nB,DE JLV B V BLVDEIʩ BꭝLu  } 3E:}DISK OPERATING SYSTEM II VERSION COPYRIGHT 1984 ATARI CORP.A. DISK DIRECTORY I. FORMAT DISKB. RUN CARTRIDG*}E J. DUPLICATE DISKC. COPY FILE K. BINARY SAVED. DELETE FILE(S) L. BINARY LOADE. RENAME FILE M. RUN AT ADDRES+}SF. LOCK FILE N. CREATE MEM.SAVG. UNLOCK FILE O. DUPLICATE FILEH. WRITE DOS FILES P. FORMAT SINGLEL !N',}#"&))9(&*)/h)''-&؆莟R'S  vL/ˢ L }Insert DOS 2.0s, type Y Λx -}DEfHI 1莏#q! @ y0ɛ8A0,' ȅ 1 1ild! 1L!NO SUCH ITEMSELECT.} ITEM OR FOR MENU! 0 .z:*{}.|{ 1 0 0JB 18L%|DL/}%DIRECTORY--SEARCH SPEC,LIST FILE?[# 0 0 &|D3" 1L!NOT A DISK FILEN !B 1L!E# 1 !BD0}ED:}:1BJ|DE 1DEBHI 1 h0ߢ 0.1}  0?詛 1 y0YЛ 1 ;#L" ;#L! BL1TYPE "Y" TO DELETE...DELETE FILE SPEC2}COPY--FROM, TO?OPTION NOT ALLOWED736 FREE SECTORS COPYING---D1:DIRECK.COMl# 0|D .L/%#3}##JB|DE 1BHID#E 1#0: B 1L!#͑### B 1#c$0SY4}S1}:## # # .#Ƚ# # 𩛙## 1,#PD#ELJ- <.BJD#E 5}1 1HH 0hh|DL%1}:̳# L% #D#EL% 1 0 . .0O% 1L!WILD CARDS NOT A6}LLOWED IN DESTINATION 0 <.|K}N 2 FORMAT. t* 5) 1L!`) 0NΞ 0 L1) 1 L!BAD LOAD FILELOAD FROM WHAT FILE?) 0 ?}0#B 1L!WHAT FILE TO LOCK?) 0 0$B 1L!WHAT FILE TO UNLOCK?DUP DISK-SOURCE,DEST DRIVES?TYPE "Y" IF OK TO US@}E PROGRAM AREACAUTION: A "Y" INVALIDATES MEM.SAV.FE! +L1   `*  70 2 2A} 0.* 1 y0 0)INSERT BOTH DISKS, TYPE RETURN^, 1 y038逍 N, 1L! ,B}C, t*  Lx+, 0 ^, 1 y0 , ,0,0 ,L+ ,I0 ,Vǭ0C}Ξ, 0 }, 1 y0C,ШC, 0K'!" H H 'h h Lx+!EF 5L1L!D,I,HhD}` NOT ENOUGH ROOMINSERT SOURCE DISK,TYPE RETURNINSERT DESTINATION DISK,TYPE RETURNE}`  `8 rL1`-* 1P* 1 y0Y`hhL!NAME OF FILE TO MOVE?- 0 0|DL% <.F},^ 1 70 0 .@L# .BJ 1  DEHIB V L1 ,} 1 70,L.  G}JB|,#P#DE 1 HI BDEHHII 1 B 1 ,^ 1 70,0La- B V,#PH},^ 1 70 0L#L!-* 1P* 1 y0Yj383}mm ݭI}}`8}``|* ? ɛ,`|:-)| / 1L!`DESTINATION CANT BE DOJ}S.SYS0 0H{ 24Δ 28/L!/) 2 Π 2 0 ξK}hAΞB,0 J 1 BDEHI,HÝDE 1HIHIDELSAVE-GIVE L}FILE,START,END(,INIT,RUN)O S0 1`BDEPHI V` S0H 1 L!M}0 0 1L~0`PLEASE TYPE 1 LETTER,0`hhL! 70 1L0L<1 ,;ɛ7,"ɛ:ݦ1ݥN}A"D|ݤD|ȩ:|ȩ|ɛ,,(/+.ީ1 1,ɛ`轤{NAMEO} TOO LONG B VL!` L1I H1EΝDL1|mDiE` V0`8d/8 i:222 1 LP}!ERROR- 138ɛ+,' 20*.. өr2 1``2TOO MANY DIGITSINVALID HEXAQ}DECIMAL PARAMETER800 0 8 00`,0'D800 H,ɛh`2L1NEED D1 THRU D8uR} ECIMAL PARAMETER800 0 8 00`,0'D800 H,ɛh`2L1NEED D1 THRU D8u(    2 f TA  , 0 ^ ZL   ~! ! A Z$ j$ !  @$ !! ! !  E! _! ~!T} @$ "L{ةDA01$ \`j`T Uͅԩթܩ  @$LRequires 48K RAMN(NʍNN`(U}F`0B0DEJK V`E:TUNԩթܩ `î 5$TUV}ԩթܩ  @$T`Load picture disk, press STARTTUͅԩթܩ `Choose a picture by its letter0W} BԝD՝EܝHݝI V` BJ$D E V`D1:*.?IC BKD EHI V` Kԩ թ X}ܩT N TTU K -L  `L hh`8A ԝ* `0BݝD EJ V`K:0BY}HI V A͟ !`!8A DK :L * M .M ?N IO CP Q ` BKD EJ V` BZ}D0EHI V` L!0 B V`S@ԩNթ֩ͅ,ע_ȥԑȥՑ`i@ԥii֥iL!, !"[}/`ʠ, !)ԩ"/`/01`  $LBL#ߢMLK"L"L|&ԩ0թܩ\} "CԩNթܩ` " @$L"`8ܥݠIL"I NNNNFL"  " 5$ @$]}L"ԩ, "ͅԩ, "`I)@ iԥi`M ! 5$ @$L" !$L"t# # @$L"^}#LP#t# # @$L"#Ld# 03;; ROW 3 PROW}CRSQ> A;; NO NAMES YET PNUMKEYQ>;; CLEAR KEYBOARDPCH DIRLOOP READDIR;; GET NEXT ENTRYGPROMPT;; BR I}F DONE* DISPDIR;; DISPLAY FILE NAME ON SCREEN QNUMKEYR> Z;; 25 FILES MAX  FPROMPT!DIRLOOP;; LOOP TILL DONE }PROMPT( PICKMSG;; DISPLAY SELECTION MESSAGE!# CLOSEDIR;; CLOSE THE DIRECTORY& CLOSESCR;; AND THE SCREEN+ QNUMKEY0!}R> A;; IF NO PICTURES, RESTART5 FNEWDISK: AGAIN?! CLEAR1;; CLEAR NORMAL SCREEND( CLEAR2;; CLEAR MAGNIFICATION SCREENI}/ INITDL2;; INIT DISPLAY LIST FOR MAG SCREENN DEFAULTS;; SET DEFAULTSS OPENKEY;; OPEN KEYBOARDX BEEP;; SHORT BEEP]} GETLET;; READ CHOICEb CLOSEKEY;; CLOSE KEYBOARDg QLETTERlR>;; IF ESC, GET NEW DISKq FNEWDISKv( GETNAME;; GET} FILE NAME FROM BUFFER{6 SETDL1;; FORCE NORMAL DISPLAY SCREEN DISPLAY LIST INITGR8;; SET TO GRAPHICS 8! OPENFIL;; OP}EN SELECTED FILE READFIL;; READ THE FILE CLOSEFIL;; CLOSE ITQ>;; CLEAR KEYBOARDPCH BEEP;; SHORT BEEP}LOOP+ MODESET;; DISPLAY THE SELECTED PICTURE!LOOP;; LOOP IN CASEAINITIALIZATION ROUTINESAX;X; ONE TIME INIT}IALIZATIONX;INIT-;; CLEAR DECIMAL MODEQ>&PCOLDST;; FORCE COLDSTART ON RESETQ>PGRMODE;; GRAPHICS MO}DE 8PMAGMODE;; NO MAGNIFICATIONPHOLD;; ALLOW SCROLLINGPSOUNDR;; SILENT READ5QSDLSTL;; COPY POINTER TO GRAPHICS} 0 DISPLAY LIST POLDDLL QSDLSTH POLDDLH!Q>;; DEFERRED VERTICAL BLANK $>SCROLL%>SCROLL. SETVBV;;} INSTALL SCROLL AS VERTICAL BLANK: X;%X; CHECK THAT 48K AVAILABLE*X;/ CHKRAM4QRAMTOP;; TOP OF RAM9 R>;; 48K>}H ;; BR IF NOTC:;; GO BACKHQ>;; ROW 1M PROWCRSRQ> ;; COLUMN 12W PCOLCRS\Q>RAMMSGa PPTR1LfQ>RAMMS}Gk PPTR1HpQ>;; 16 BYTESu PLNGLzQ> PLNGH WRITESCR;; SEND MESSAGE BEEP;; SHORT BEEP ! ;; LOOP R}AMMSG ARequires 48K RAMAX;$X; SET COLOURS FOR GRAPHICS 7 1/2X; DEFAULTS#Q>;; DEFAULT BACKGROUND COLOUR P}MYCOL46Q>(;; OTHERS ARE SET TO MICRO-ILLUSTRATOR DEFAULTS PMYCOL0Q> PMYCOL1Q> PMYCOL2:X; X; SE}T COLOURS FOR GRAPHICS 8X; INITGR8Q>( PCOLOR0Q> PCOLOR1Q>  PCOLOR2Q>F PCOLOR3Q> PC}OLOR4$:)ASCREEN HANDLING ROUTINESA.X;3X; OPEN THE SCREEN8X;= OPENSCRB$>0;; IOCB 3GQ>L PICCMD9QQ>EDI}TORV PICBAL9[Q>EDITOR` PICBAH9eQ>j PICAX19oQ>t PICAX29y CIOV~Q>;; TURN OFF CURSOR PCRSINH}:EDITOR AE:AX;X; DISPLAY TITLE MESSAGEX; TITLEQ>;; ROW 1 PROWCRSQ>;; COLUMN 8 PCOLCRSQ}>TITLEMSG PPTR1LQ>TITLEMSG PPTR1HQ>;; 24 BYTES LONG PLNGLQ> PLNGH WRITESCR;; DISPLAY IT}:,TITLEMSG =AMagnify - Bruce C. SmithAX;!X; DISPLAY PICTURE DISK PROMPTX; DISKMSG DELAY;; WAIT 1/2 S}ECOND Q>;; ROW 20 PROWCRSQ>;; COLUMN 5 PCOLCRSQ>DSKMSG# PPTR1L(Q>DSKMSG- PPTR1H2Q>;; 30 }BYTES LONG7 PLNGL<Q>A PLNGHF WRITESCRK BEEPP!Q>;; MOVE CURSOR UP TO ROW 3U PROWCRSZQ>_ DSKWAITd RC}ONSOL;; TEST FOR START KEYi HDSKWAIT;; LOOP TILL PRESSEDn:s DSKMSGx% ALoad picture disk, press STARTA}X;$X; DISPL}AY FILE SELECTION MESSAGEX; PICKMSGQ>;; ROW 20 PROWCRSQ>;; COLUMN 5 PCOLCRSQ>PCKMSG PPTR1L}Q>PCKMSG PPTR1HQ>;; 30 BYTES LONG PLNGLQ> PLNGH WRITESCR;; DISPLAY IT: PCKMSG% AChoose a} picture by its letterAX;#X; WRITE A MESSAGE TO THE SCREENX; WRITESCR$>0;; IOCB 3Q> ;; WRITE COMMAND PI}CCMD9QPTR1L;; MESSAGE ADDRESS  PICBAL9 QPTR1H PICBAH9 QLNGL PICBLL9" QLNGH' PICBLH9, CIOV;; CALL CIO}1:6"ADIRECTORY HANDLING ROUTINESA;X;@X; OPEN THE DIRECTORYEX;J OPENDIRO$> ;; IOCB 2TQ>Y PICCMD9^Q>c} PICAX19hQ>ALLFILESm PICBAL9rQ>ALLFILESw PICBAH9| CIOV;; CALL CIO: ALLFILES AD1:*.?ICAX;}X; READ DIRECTORY ENTRYX; READDIR$> ;; IOCB 2Q> PICCMD9Q>FNAME PICBAL9Q>FNAME PICBAH9}Q> PICBLL9Q> PICBLH9 CIOV;; CALL CIO:FNAME A A X;'X; DISPLAY DIRECTORY} ENTRY ON SCREENX; DISPDIR( CHKFRE;; CHECK FOR END OF DIRECTORYQ>FNAME  PPTR1LQ>FNAME PPTR1HQ}> ! PLNGL&Q>+ PLNGH0#ROWCRS;; BUMP ROW NUMBER5%>;; COLUMN 6: QNUMKEY?R> N;; SEE IF AT "N"D DFIRCOLI%>};; START SECOND COLUMNN QROWCRSSR>;; SEE IF AT ROW 17X HFIRCOL]Q>;; RESET TO ROW 4b PROWCRSg FIRCOLl'COL}CRS;; SET COLUMNq#QNUMKEY;; SAVE SELECTION LETTERvPFNAME;; IN FILENAME{Q> -;; "-" TOO PFNAME SAVENAM;; ADD T}O BUFFER% WRITESCR;; DISPLAY ON SCREEN TOO #NUMKEY;; BUMP SELECTION KEY: NUMKEY X; X; CHECK FOR END OF }DIRECTORYX; CHKFRE QFNAMER> ;; END IF BLANK FNOTFRE7;; POP ONE RETURN ADDRESS7;; OFF THE STACK NO}TFRE :;; RETURNX;X; ADD FILE NAME TO BUFFERX; SAVENAM%>/Q@PTR1L7;; LOAD SELECTION BYTE IN FILE NAME;}S> A;; MAP A->0,B->1T?T? T?;; MULTIPLY BY 8>;; OFFSET TO TABLE%>;; OFFSET TO NAME SAVENM1 Q@PTR1L7;;} LOAD BYTE%PNBUFF9;; SAVE IN BUFFER*2;; BUMP BUFFER INDEX/3;; AND FILENAME INDEX4)> ;; TEST IF AT 10TH BYTE9DSAV}ENM1;; LOOP IF NOT>:C!AKEYBOARD HANDLING ROUTINESAHX;MX; OPEN THE KEYBOARDRX;W OPENKEY\$>0;; IOCB 3aQ>f }PICCMD9kQ>KEYBOARDp PICBAL9uQ>KEYBOARDz PICBAH9Q> PICAX19 CIOV: KEYBOARD AK:AX;}X; READ SELECTION LETTERX; GETLET$>0;; IOCB 3Q> PICCMD9Q> PICBLL9 PICBLH9 CIOVR>FGE}TLETRETR> A DGETLET RNUMKEY EGETLETL> GETLETRET PLETTER : LETTER   X; &X; SEARCH BUFFER FO}R SELECTED ENTRY X; GETNAME$ QLETTER;; FILE SELECTOR) ;. S> A;; MAP A->0,B->13 T?8 T?= T?;; MULTIPLY BY 8B >;; S}TORE OFFSETG Q> DL PFNAMEQ Q> :V PFNAME;; D: TO FILENAME[ %>` GETNAM1e QNBUFF9;; COPY NAMEj R> ;; CHECK IF }BLANKo FGETNAM2;; STOP COPYINGt PFNAME8y 2~ 3 )>;; STOP AT 8 BYTES HGETNAM1 GETNAM2 Q> .;; ADD .?IC P}FNAME8 Q> ? PFNAME8 Q> I PFNAME8 Q> C PFNAME8 Q> PFNAME8 : 'AFILE HANDLING AND CLOS}E ROUTINESA X; X; OPEN SELECTED FILE X; OPENFIL $> ;; IOCB 2 Q> PICCMD9 Q>FNAME PICBAL9 Q>FNAM}E PICBAH9 Q> PICAX19  CIOV;; CALL CIO : X; X; READ THE FILE# X;( READFIL- $> ;; IOCB 22 Q>7 P}ICCMD9< Q>SCREEN1A PICBAL9F Q>SCREEN1K PICBAH9P Q>U PICBLL9Z Q>_ PICBLH9d  CIOV;; CALL C}IOi :n X;s !X; MULTI-PURPOSE CLOSE ROUTINEx X;} CLOSEDIR CLOSEFIL $> !CLOSEANY CLOSESCR CLOSEKEY $>0} CLOSEANY Q> PICCMD9 CIOV : 5AINITIALIZE DISPLAY LIST FOR MAGNIFIED PICTURESA INITDL2 Q>;; INITIALIZ}E ROW PCURROW Q>HLIMIT;; AND COLUMN NUMBER PCURCOL Q>SCREEN2S PPTR1L Q>SCREEN2S PPTR1H Q>DLIST}2X PPTR2L Q>DLIST2X PPTR2H $>;; 192 TIMES THROUGH LOOP DL2LOOP %> 6Q>_;; MODE 8 WITH LMS SET AND } HORIZONTAL SCROLLING P@PTR2L7 3 QPTR1L;; SCREEN POINTER" P@PTR2L7' 3, QPTR1H1 P@PTR2L76 0; H ;; BRANCH I }F NOT DONE@ :E ,J ,QPTR1L;; BUMP SCREEN POINTER TO NEXT ROWO O>@T PPTR1LY QPTR1H^ O>c PPTR1Hh ,m &QPTR2L;; BU }MP DISPLAY LIST POINTERr O>w PPTR2L| QPTR2H O> PPTR2H !DL2LOOP;; LOOP TILL DONE AINSTALL OUR DISPLAY LIS }TA X; X; USE DISPLAY LIST 1 SETDL1 $>DLIST1 %>DLIST1 SETDL Q>" PSDMCTL;; ENABLE ANTIC DMA :  }X; X; USE DISPLAY LIST 2 X; SETDL2 $>DLIST2 %>DLIST2 SETDL QCURCOL M> PHSCROL;; SETUP HSCR}OLL TOO Q>" PSDMCTL;; ENABLE DMA : X; X; INSTALL THE DISPLAY LIST X; SETDL Q> PSDMCTL;; DISABLE ANTIC} DMA! &SDLSTL& 'SDLSTH+ :0 #ADISPLAY PICTURE AS REQUESTEDA5 MODESET: Q>;; ENABLE SCROLLING? PHOLDD MODETESTI }Q>;; SEE IF KEY PRESSEDN RCHS FNOKEY;; BR IF NOTX PCH;; CLEAR IT]  RESTART;; RE-INITIALIZEb !AGAIN;; DISPLAY MEN}Ug NOKEYl Q>;; SEE IF TRIGGER PRESSEDq RTRIG0v H ;; BR IF NOT{ !TRIGGER;; TRIGGER PRESSED &QCONSOL;; CHECK FOR} CONSOLE BUTTON R> #FMODETEST;; LOOP IF NOT PRESSED $> WAIT (CONSOL;; WAIT TILL RELEASED HWAIT $> &}ATRACT;; TURN OFF ATTRACT R> H  !OPTION;; OPTION PRESSED R> H  !SELECT;; SELECT PRESSED R> HMO}DETEST !START;; START PRESSED X; "X; INVERT ALL BITS IN SCREEN(S) X; OPTION Q>;; HOLD SCROLLING PHOLD Q>}SCREEN1 PPTR1L Q>SCREEN1 PPTR1H Q> PLNGL Q> PLNGH . INVERT;; INVERT ALL BITS IN NORM}AL SCREEN% QMAGMODE* FSKIPSCRN2/ Q>SCREEN24 PPTR1L9 Q>SCREEN2> PPTR1HC Q>`H PLNGLM Q>`R P}LNGHW 1 INVERT;; INVERT ALL BITS ON MAGNIFIED SCREEN\ SKIPSCRN2a  BEEP;; SHORT BEEPf !MODESET;; LOOPk X;p X; ROUTINE} TO DO THE FLIPPINGu X;z INVERT QLNGL;; SEE IF DONE LLNGH HFLIPIT;; BR IF NOT :;; RETURN FLIPIT QLNGL;; D}ECREMENT LENGTH ; S> PLNGL QLNGH S> PLNGH %> Q@PTR1L7;; LOAD BYTE N>;; FLIP P@PTR1L7;; STORE} BACK #PTR1L;; BUMP SCREEN POINTER H  #PTR1H !INVERT;; LOOP TILL DONE X; X; CHANGE GRAPHICS MODES X; S}ELECT Q>;; HOLD SCROLLING PHOLD%QGRMODE;; FLIP GRAPHICS MODE FLAGN>  PGRMODEFGR8;; GRAPHICS 8 IF 01QM}YCOL4;; SET GRAPHICS 7 1/2 COLOUR REGISTERS PCOLOR4 QMYCOL0$ PCOLOR0) QMYCOL1. PCOLOR13 QMYCOL28 PCOLOR2=Q>}FB PCOLOR3G !GRANYLGR8Q. INITGR8;; SET GRAPHICS 8 COLOUR REGISTERSV GRANY[$ MODEFLIP;; SWITCH GRAPHICS MODE` }DELAY;; DELAY A BITe BEEP;; SHORT BEEPj!MODESET;; LOOPoX;tX; EXCHANGE GRAPHICS MODESyX;~ MODEFLIPQ>DLIST1X} PPTR1LQ>DLIST1X PPTR1H! DOMODE;; FLIP DISPLAY LIST 1Q>DLIST2X PPTR1LQ>DLIST2X PPTR1 }H! DOMODE;; FLIP DISPLAY LIST 2:X;)X; FLIP GRAPHICS MODE IN A DISPLAYLISTX; DOMODE$>%> DOMODE1!}Q@PTR1L7;; LOAD INSTRUCTIONN>;; FLIP LOW BITP@PTR1L7;; SAVE BACKM>@;; SEE IF LMS BIT ONFNOTLMS;; BR IF NO"}T,0QPTR1L;; ALLOW FOR 2 BYTES OF SCREEN ADDRESSO> PPTR1L  QPTR1HO> PPTR1H NOTLMS$3;; BUMP PAST D#}ISPLAY INSTRUCTION#0(HDOMODE1;; LOOP TILL DONE-:2X;7(X; ADVANCE TO NEXT MAGNIFICATION MODE<X;A TRIGGERFQ>K$}PHOLD;; PREVENT SCROLLINGPPATRACT;; TURN OFF ATTRACTU&#MAGMODE;; NEXT MAGNIFICATION MODEZ QMAGMODE_R>;; OVERFLOW%}dHMAGNIFY;; BR IF NOTi'Q>;; RESET TO MAGNIFICATION MODE 0n PMAGMODEs SETDL1;; USE DISPLAY LIST 1x DELAY;; WAIT &}A BIT} BEEP;; SHORT BEEP!MODESET;; LOOPX;!X; MAGNIFY PICTURE TO SCREEN 2X; MAGNIFY SETDL2;; USE DISPLAY'} LIST 21QMAGMODE;; BRANCH BASED ON MAGNIFICATION MODER> FMAG1R> FMAG2R> FMAG3R> FMAG44!(}MODESET;; SHOULD NOT HAPPEN, BUT RETURN IN CASEX;1X; INDIVIDUAL MAGNIFICATION SELECTION ROUTINESX;MAG1$>TABLE)}1;; USE TABLE 1%>TABLE1 MAG1A MAGSR1;; USE ROUTINE 1 BEEP;; SHORT BEEP!MODESET;; LOOPMAG2 $>*}TABLE2;; USE TABLE 2%>TABLE2!MAG1A;; GO USE ROUTINE 1MAG3$>TABLE1;; USE TABLE 1"%>TABLE1' +}MAG3A, MAGSR2;; USE ROUTINE 21 BEEP;; SHORT BEEP6!MODESET;; LOOP;MAG4@$>TABLE2;; USE TABLE 2E%>TABLE2,}J!MAG3A;; GO USE ROUTINE 2OX;TX; MAGNIFICATION TABLESYX;^#X; TABLE 1 DOES 1 BIT HORIZONTALcX;h TABLE1m =-}= =r 0=3=<=?w ===| ===X;#X; TABLE 2 DOES 2 BIT HORIZONTALX; TABLE2 == = .}P=U=Z=_ === ===$ASCREEN MAGNIFICATION ROUTINESAX; X; ROUTINE 1 - 1 BIT VERTICALX; MA/}GSR1 MAGINIT;; INITIALIZE!Q>@;; OUTPUT SCREEN INCREMENT PINCR MAG1LOOP MAGSR;; MAGNIFY A ROW,QPTR3L;;0} TO NEXT OUTPUT ROWO>@ PPTR3L QPTR3HO> PPTR3H"CNTR;; LOOP TILL DONE HMAG1LOOP: X; X; ROUTINE 1}2 - 2 BIT VERTICALX; MAGSR2! MAGINIT;; INITIALIZE&!Q>;; OUTPUT SCREEN INCREMENT+ PINCR0 MAG2LOOP5 MAGSR;; 2}MAGNIFY A ROW:&QCNTR;; CHECK FOR EVEN/ODD COUNTER?V?D DMAG2EVENI,N$QPTR3L;; BUMP BY 128 ON ODD ROWSSO>X PPTR33}L] QPTR3HbO>g PPTR3Hl MAG2EVENq "CNTRv HMAG2LOOP{:X;"X; INITIALIZE FOR MAGNIFICATIONX; MAGINIT&4}PTR1L;; STORE TABLE'PTR1H;; POINTERQ>SCREEN1T PPTR2LQ>SCREEN1T PPTR2HQ>SCREEN2 PPTR3LQ5}>SCREEN2 PPTR3HQ>;; 192 ROWS PCNTR:X;"X; MAGNIFY ONE ROW OF A PICTUREX; MAGSR$> ;; ONLY 32 6}BYTES MAGLOOP%>Q@PTR2L7;; LOAD BYTEM>;; TOP DIGIT ONLYV?V? V?V?;; SHIFT TO BOTTOM?;; USE AS IN7}DEX'Q@PTR1L7;; FETCH MAGNIFICATION BYTE %>;; RESTORE OFFSET%(P@PTR3L7;; STORE MAGNIFICATION VALUE*%INCR;; LOAD IN8}CREMENT/P@PTR3L7;; STORE THERE TOO4 #PTR3L;; BUMP OUTPUT POINTER9H > #PTR3HC%>HQ@PTR2L7;; FETCH BYTE AGAIN9}MM>;; KEEP LOWER DIGITR?W'Q@PTR1L7;; FETCH MAGNIFICATION BYTE\%>aP@PTR3L7;; STORE IN SCREENf %INCRkP@PTR3:}L7;; AND AGAINp #PTR2L;; BUMP SOURCE ADDRESSuH z #PTR2H #PTR3LH  #PTR3H0;; DECREMENT COUNTERHMAGL;}OOP;; LOOP TILL DONE, QPTR2L)O>;; SKIP OVER 8 BYTES NOT MAGNIFIED PPTR2L QPTR2HO> PPTR2H:AMIS<}CELLANEOUS ROUTINESAX;X; DELAY 30 JIFFIESX; DELAYQ> PRTCLOKQ> DELAYLP RRTCLOK HDELAYLP:=}X;X; SOUND A SHORT BEEPX; BEEPQ>d PAUDF1Q> PAUDC1$Q>) PRTCLOK.Q>3 BEEPLP8 RRTCLOK;; L>}OOP FOR 6 JIFFIES= HBEEPLPBQ>G PAUDC1L:QX;VX; ZERO OUT SCREEN BUFFERS[X;` CLEAR1e Q>j PLNGLo Q>?}t PLNGHy$>SCREEN1~%>SCREEN1 CLEAR;; CLEAR SCREEN 1: CLEAR2 Q>` PLNGL Q>` P@}LNGH$>SCREEN2%>SCREEN2 CLEAR;; CLEAR SCREEN 2:X;X; CLEAR SELECTED SCREENX; CLEAR!&PTR1L;A}; STORE SCREEN POINTER 'PTR1H CLEARLPQLNGL;; SEE IF DONE LLNGHH ;; BR IF NOT:;QLNGL;; DECREMENT B}LENGTHS> PLNGL QLNGH S> PLNGHQ>? P@PTR1L7# #PTR1L( HCLEARLP- #PTR1H2 !CLEARLP7X;<X; C}RE-INITIALIZE FOR RESTARTAX;F RESTARTKQ>P!RGRMODE;; CHECK GRAPHICS MODEUF ;; BR IF 8Z MODEFLIP;; FORCE MODED} 8_Q>dPGRMODE;; FLAG MODE 8i$PMAGMODE;; FLAG NO MAGNIFICATIONnPSDMCTL;; DISABLE ANTIC DMAs.QOLDDLL;; USE GRAPHIE}CS MODE 0 DISPLAY LISTx PSDLSTL} QOLDDLH PSDLSTHQ>(;; GRAPHICS 0 COLOURS PCOLOR0Q>ʖ PCOLOR1Q> PCF}OLOR2Q>F PCOLOR3Q> PCOLOR4Q>" PSDMCTL:-AVERTICAL BLANK ROUTINE TO DO SCROLLINGA SCROLL-;; G}CLEAR DECIMAL&QHOLD;; CHECK IF ALLOWED TO SCROLLHSCROLLON;; BR IF ARE SCROLLEND.!XITVBV;; EXIT FROM VERTICAL BLAH}NK ROUTINE SCROLLON"QMAGMODE;; IF NO MAGNIFICATIONFSCROLLEND;; THEN EXIT NOWQPORTA;; CHECK STICKR>#FSCRI}OLLEND;; EXIT IF IN NEUTRAL %R>;; BR BASED ON STICK DIRECTIONH !SCROLL0;; NORTHR>H "!SCROLL45;; NOJ}RTH-EAST'R>,H 1!SCROLL90;; EAST6R>;H @!SCROLL135;; SOUTH-EASTER>JH O!SCROLL180;; SOUTHTK}R>YH ^!SCROLL225;; SOUTH-WESTcR>hH m!SCROLL270;; WESTrR>wHSCROLLEND|!SCROLL315;; NORTH-WESTL} SCROLL0$ SCROLLUP;; SEE IF CAN SCROLL UPFSCROLL0E;; EXIT IF NOT SCROLLSUB;; SCROLL UP""CURROW;; DECREMENT ROWM} NUMBER SCROLL0E!SCROLLEND;; GO BACK SCROLL45$ SCROLLUP;; SEE IF CAN SCROLL UPFSCROLL45E;; EXIT IF NOT* SN}CROLLRIGHT;; SEE IF CAN SCROLL RIGHTFSCROLL45E;; EXIT IF NOT6QINCRH;; TEST IF COARSE HORIZONTAL SCROLL REQUIREDF O};; BR IF NOT!"INCR;; FORCE DIAGONAL SCROLL. SCROLLH;; DO FINE HORIZONTAL SCROLL FIRST" SCROLLSUB;; AND THEN VERTICAP}L"CURROW;; MODIFY ROW NUMBER SCROLL45E!SCROLLEND;; GO BACK SCROLL90* SCROLLRIGHT;; SEE IF CAN SCROLL RIGHTQ}FSCROLL90E;; EXIT IF NOT. SCROLLH;; DO FINE HORIZONTAL SCROLL FIRST6QINCRH;; TEST IF COARSE HORIZONTAL SCROLL REQUIRER}DF ;; BR IF NOTPINCR;; STORE AMOUNT SCROLLADD;; DO IT  SCROLL90E!SCROLLEND;; GO BACK SCROLL135( SCRS}OLLDOWN;; SEE IF CAN SCROLL DOWN!FSCROLL135E;; EXIT IF NOT&* SCROLLRIGHT;; SEE IF CAN SCROLL RIGHT+FSCROLL135E;; EXITT} IF NOT06QINCRH;; TEST IF COARSE HORIZONTAL SCROLL REQUIRED5F ;; BR IF NOT:!#INCR;; FORCE DIAGONAL SCROLL?. SCROLLU}H;; DO FINE HORIZONTAL SCROLL FIRSTD) SCROLLADD;; AND THEN VERTICAL SCROLLI#CURROW;; BUMP ROW NUMBERNSCROLL135ES!SV}CROLLEND;; GO BACKX SCROLL180]( SCROLLDOWN;; SEE IF CAN SCROLL DOWNbFSCROLL180E;; EXIT IF NOTg SCROLLADD;; SCROLL DW}OWNl#CURROW;; BUMP ROW NUMBERqSCROLL180Ev!SCROLLEND;; GO BACK{ SCROLL225( SCROLLDOWN;; SEE IF CAN SCROLL DOWNX}FSCROLL225E;; EXIT IF NOT( SCROLLLEFT;; SEE IF CAN SCROLL LEFTFSCROLL225E;; EXIT IF NOT6QINCRH;; TEST IF COARSE HY}ORIZONTAL SCROLL REQUIREDF ;; BR IF NOT!"INCR;; FORCE DIAGONAL SCROLL. SCROLLH;; DO FINE HORIZONTAL SCROLL FIRSTZ}' SCROLLADD;; AND THEN COARSE SCROLL#CURROW;; BUMP ROW NUMBERSCROLL225E!SCROLLEND;; GO BACK SCROLL270) SC[}ROLLLEFT;; SEE IF CAN SCROLL RIGHTFSCROLL270E;; EXIT IF NOT. SCROLLH;; DO FINE HORIZONTAL SCROLL FIRST6QINCRH;; TES\}T IF COARSE HORIZONTAL SCROLL REQUIREDF ;; BR IF NOTPINCR;; SET INCREMENT! SCROLLSUB;; DO COARSE SCROLLSCROL]}L270E!SCROLLEND;; GO BACK SCROLL315$ SCROLLUP;; SEE IF CAN SCROLL UPFSCROLL315E;; EXIT IF NOT( SCROLLLEFT;; ^}SEE IF CAN SCROLL LEFTFSCROLL315E;; EXIT IF NOT*QINCRH;; SEE IF COARSE SCROLL REQUIRED F ;; SKIP IF NOT#INCR;_}; SET INCREMENT. SCROLLH;; DO FINE HORIZONTAL SCROLL FIRST' SCROLLSUB;; AND THEN COARSE SCROLL ""CURROW;; DECREMENT R`}OW NUMBER%SCROLL315E*!SCROLLEND;; GO BACK/ SCROLLUP4%QCURROW;; LOAD CURRENT ROW NUMBER9"FSCROLLUPE;; NO SCROLLINGa} IF 0>4Q>@;; SCROLLING INCREMENT IS ONE ROW OF 64 BYTESCPINCR;; SAVE ITH SCROLLUPEM:;; GO BACKRSCROLLDOWNW%QCURb}ROW;; LOAD CURRENT ROW NUMBER\R>VLIMIT;; TEST IF AT LIMITaHSCROLLDOWNY;; BR IF NOTfQ>;; FLAG NO SCROLLINGk:;; GO c}BACKpSCROLLDOWNYu4Q>@;; SCROLLING INCREMENT IS ONE ROW OF 64 BYTESzPINCR;; SAVE IT:;; GO BACKSCROLLRIGHT.Q>d};; INITIALIZE HORIZONTAL SCROLLING FLAG PINCRH(QCURCOL;; LOAD CURRENT COLUMN NUMBER%FSCROLLRIGHTE;; NO SCROLLING IFe} 0%"CURCOL;; DECREMENT COLUMN NUMBERQCURCOL;; LOAD ITM>;; KEEP 2 BITS ONLYR>;; SEE IF 3HSCROLLRIGHTY;; Bf}R IF NOT$Q>;; COARSE SCROLL REQUIRED TOO PINCRHSCROLLRIGHTY!Q>;; FLAG SCROLLING REQUIREDSCROLLRIGHTE:;;g} GO BACKSCROLLLEFT.Q>;; INITIALIZE HORIZONTAL SCROLLING FLAG PINCRH"QCURCOL;; FETCH CURRENT COLUMNR>HLIMIT;q}B%DOS SYSB*)DUP SYSBSAUTORUN SYSBkMAGNIFY OBJB=MAGNIFY TXTBMAGNIFY M65; TEST IF AT LIMITHSCROLLLEFTY;; BR IF NOTQ>;; FLAG NO SCROLLING:;; GO BACKSCROLLLEFTY #CURCOL;; BUMP COLUr}MN NUMBERQCURCOL;; FETCH IT M>;; KEEP ONLY 3 BITSHSCROLLLEFTE;; BR IF NOT 0)Q>;; FLAG COARSE SCROLL REQUIRED s}TOO PINCRHSCROLLLEFTE$Q>;; FLAG SCROLL REQUIRED):;; GO BACK.X;3:X; SUBROUTINE TO SUBTRACT INCR FROM ADDRESSESt} IN D.L. 28X;= SCROLLSUBB-Q>DLIST2X;; FETCH DISPLAY LIST POINTERG PPTR1LLQ>DLIST2XQ PPTR1HV$>;; LOOP u}192 TIMES[%>;; INITIAL OFFSET OF 1`SCROLLSUBLPe.;;; SUBTRACT INCREMENT FROM ADDRESS IN D.L.j Q@PTR1L7o SINCRt P@v}PTR1L7y3;; OFFSET TO HIGH BYTE~H ;; BR IF NOT OVERFLOWED##PTR1H;; ELSE BUMP HIGH ADDRESS(Q@PTR1L7;; PROPAGATE Cw}ARRY INTO D.L.S> P@PTR1L70;; DECREMENT LOOP COUNTERH ;; BR IF NOT DONE:;; GO BACK&3;; OFFSET TO NEXT D.x}L. INSTRUCTION3HSCROLLSUBLP'#PTR1H;; BUMP HIGH BYTE IF OVERFLOWHSCROLLSUBLP;; LOOPX;0X; ROUTINE TO ADD INCy}R TO ADDRESSES IN D.L. 2X; SCROLLADDQ>DLIST2X PPTR1LQ>DLIST2X PPTR1H$>%>SCROLLADDLPz}, Q@PTR1L7 OINCR P@PTR1L7 3H  #PTR1H Q@PTR1L7O># P@PTR1L7(0-H 2:73<3AHSCROLLA{}DDLPF #PTR1HKHSCROLLADDLPPX;U*X; ROUTINE TO DO FINE HORIZONTAL SCROLLZX;_ SCROLLHd2QCURCOL;; USE LOWER 2 BITS O|}F COLUMN AS HSCROLiM>n PHSCROLs:xAPRINT APPROPRIATE SCREENA} STARTQ>;; HOLD SCROLLING PHOLD OPENPRT}};; OPEN PRINTERIOPENOK;; BR IF OK PRINTBAD CLOSEPRT;; CLOSE IOCB BEEP;; SHORT BEEP DELAY;; WAIT BEEP;;~} ANOTHER BEEP!MODESET;; LOOP BACK OPENOK SETSPACE;; SET LINES/INCHGPRINTBAD;; BR IF FAILEDQ>(;; LOOP COUNT}ER PCNTR2Q>SCREEN1B;; POINT TO PROPER BYTE OF SCREEN PPTR1LQ>SCREEN1B PPTR1H&QMAGMODE;; TEST MAGNIF}ICATION MODEH !PRINT0;; MODE 0R>H !PRINT1;; MODE 1R>H  !PRINT2;; MODE 2R>H }!PRINT3;; MODE 3R>"HPRINTDONE'!PRINT4;; MODE 4, PRINTDONE1! CLOSEPRT;; CLOSE THE PRINTER6 BEEP;; SHORT }BEEP;!MODESET;; LOOP BACK@APRINT ROUTINESAEX;J#X; PRINT GRAPHICS 8 SCREEN AS ISOX;T PRINT0Y' GETLINE;; GET 1 }COLUMN FROM SCREEN^ PRINTLINE1;; PRINT AS IScIPRINT0OK;; BR IF OKh!PRINTBAD;; BAD PRINTm PRINT0OKr"CNTR;; DECRE}MENT COUNTERwHPRINT0;; LOOP TILL DONE|!PRINTDONE;; GO CLEAN UPX;+X; MAGNIFY 1 BIT HORIZONTAL AND VERTICALX; }PRINT1+Q>TABLE1;; USE MAGNIFICATION TABLE 1 PPTR3LQ>TABLE1 PPTR3H PRINT1LP% GETLINE;; GET 1 COLUMN }OF SCREEN($>;; FLAG WANT HIGH DIGIT MAGNIFIED* MAG1PR;; 1 BIT VERTICAL MAGNIFICATION* PRINTLINE2;; PRINT THE MAGNIF}IED LINEGPRINT1BAD;; BR IF BAD'$>;; FLAG WANT LOW DIGIT MAGNIFIED* MAG1PR;; 1 BIT VERTICAL MAGNIFICATION* PRINT}LINE2;; PRINT THE MAGNIFIED LINEGPRINT1BAD;; BR IF BAD""CNTR;; DECREMENT LOOP COUNTERHPRINT1LP;; LOOP TILL DONE}!PRINTDONE;; GO CLEAN UP PRINT1BAD!PRINTBAD;; PRINT FAILEDX;4X; 2 BIT HORIZONTAL, 1 BIT VERTICAL MAGNIFICATION}X; PRINT2Q>TABLE2;;USE TABLE 2  PPTR3LQ>TABLE2 PPTR3H !PRINT1LP!X;&4X; 2 BIT VERTICAL, 1 BIT HO}RIZONTAL MAGNIFICATION+X;0 PRINT35Q>TABLE1;; USE TABLE 1: PPTR3L?Q>TABLE1D PPTR3HI PRINT3LPN GETLIN}ES$>X MAG2PR] PRINTLINE2bGPRINT3BADg$>l MAG2PRq PRINTLINE2vGPRINT3BAD{ "CNTR HPRINT3LP!PRI}NTDONE PRINT3BAD !PRINTBADX;1X; 2 BIT VERTICAL AND HORIZONTAL MAGNIFICATIONX; PRINT4Q>TABLE2;; USE TA}BLE 2 PPTR3LQ>TABLE2 PPTR3H !PRINT3LPX;$X; EXTRACT ONE COLUMN FROM SCREENX; GETLINEQPTR1L;; C}OPY POINTER 1 PPTR2L QPTR1H PPTR2HQ>LINE1;; PRINT LINE PPTR4LQ>LINE1 PPTR4H%>;; OFFSET 0} GETLINELP'TEMP;; SAVE OFFSET %>;; SET TO 0 Q@PTR2L7;; FETCH SCREEN BYTE%TEMP;; GET OFFSET BACKP@PTR4L7;;} SAVE IN LINE 1 ';;; BACK 40 BYTES ON SCREEN (1 LINE)% QPTR2L*S>(/ PPTR2L4 QPTR2H9S>> PPTR2HC3;; BUMP OFFSE}TH)>;; 192 ROWSMHGETLINELP;; LOOP TILL DONER*#PTR1L;; BUMP TO NEXT COLUMN OF SCREENWH \ #PTR1Ha:;; GO BACKf}X;k8X; SET EPSON/GEMINI/COMPATIBLES TO 8/72'TH OF AN INCHpX;u SETSPACEz$> ;; IOCB 2Q>  PICCMD9Q> PIC}BLL9Q> PICBLH9Q>SPACECMD PICBAL9Q>SPACECMD PICBAH9Q>W PICAX29 CIOV;; CALL CIO:}SPACECMD;SET SPACING =A==X;X; PRINT LINE 1X;PRINTLINE1$> ;; IOCB 2Q>  PICCMD9 Q> }PICBLL9 Q> PICBLH9Q>LINE1GR  PICBAL9Q>LINE1GR PICBAH9Q>W;; LONG PRINT LINE PICAX29$ }CIOV;; CALL CIO):;; GO BACK.X;3X; PRINT THE MAGNIFIED LINE8X;=PRINTLINE2B$> ;; IOCB 2GQ> L PICCMD9Q Q>}V PICBLL9[ Q>` PICBLH9eQ>LINE2GRj PICBAL9oQ>LINE2GRt PICBAH9yQ>W;; LONG PRINT LINE~ PIC}AX29 CIOV;; CALL CIO:;; GO BACK#APRINT MAGNIFICATION ROUTINESAX;"X; 1 BIT VERTICAL MAGNIFICATIONX; MAG1}PR%> MAGPRINIT;; INITIALIZE MAG1PRLPQ@PTR2L7;; FETCH BYTE(>;; CHECK FLAGHMAG1PRLOW;; BR IF 0M>;}; KEEP HIGH DIGITV?;; SHIFT TO BOTTOM DIGITV?V?V?!MAG1PRANY;; JUMP PAST MAG1PRLOWM>;; KEEP LOW DIGIT} MAG1PRANY'TEMP;; SAVE OFFSET?;; COPY DIGITQ@PTR3L7;; INDEX TO TABLE%TEMP;; GET OFFSET BACK#P@PTR4L7;; SA}VE MAGNIFIED VALUE  #PTR4L;; BUMP OUTPUT POINTERH  #PTR4H P@PTR4L73#)>;; TEST COUNTER(HMAG1PRLP;; LOO}P TILL DONE-:;; GO BACK2X;7"X; 2 BIT VERTICAL MAGNIFICATION<X;A MAG2PRF%>K'FLAG;; SET FLAGP MAGPRINIT;; IN}ITIALIZEU MAG2PRLPZQ@PTR2L7;; FETCH BYTE_(>;; CHECK DIGIT FLAGdHMAG2PRLOWiM>;; KEEP HIGH DIGITnV?;; SHIFT T}O BOTTOMsV?xV?}V?!MAG2PRANY MAG2PRLOWM>;; KEEP LOW DIGIT MAG2PRANY'TEMP;; SAVE OFFSET?;; COPY DIG}ITQ@PTR3L7;; INDEX TABLE%TEMP;; GET OFFSET BACK#P@PTR4L7;; SAVE MAGNIFIED DIGIT#PTR4L;; BUMP POINTERH } #PTR4H3;; AND INDEXP@PTR4L7;; SAVE AGAINQFLAG;; LOAD FLAGFMAG2PRDECR;; BR IF 0#PTR4L;; BUMP POINTERH}MAG2PRTEST #PTR4HHMAG2PRTESTMAG2PRDECR;;; DECREMENT POINTER QPTR4LS> PPTR4L QPTR4HS>  PPTR}4HMAG2PRTESTQFLAG;; FLIP FLAGN> PFLAG")>;; TEST COUNTER'HMAG2PRLP;; LOOP TILL DONE,:;; GO BACK1X;6}(X; INITIALIZE FOR PRINT MAGNIFICATION;X;@ MAGPRINITE#Q>LINE1;; SET LINE 1 POINTERJ PPTR2LOQ>LINE1T PPTR}2HYQ>LINE2;; AND LINE 2^ PPTR4LcQ>LINE2h PPTR4Hm:;; GO BACKrX;wX; OPEN THE PRINTER|X; OPENPRT$}> ;; IOCB 2Q> PICCMD9Q>PRINTER PICBAL9Q>PRINTER PICBAH9Q> PICAX19Q> PICAX29 }CIOV;; CALL CIO:PRINTER AP:AX;X; CLOSE THE PRINTERX; CLOSEPRT$> ;; IOCB 2Q>  PICCMD9 CIOV};; CALL CIO:ADATA AREASAX; X; PRINT LINE 1 X; LINE1GR =K== LINE1    ! X;& X; PRINT LI}NE 2+ X;0 LINE2GR =K==5 LINE2:  ?  D X;I X; FILE NAME BUFFERN X;S NBUFFX ,] X;b X; DISPLAY LI}ST 1g X;l DLIST1q p=p=pv DLIST1X{  O SCREEN1  =====  =====  ===== } =====  =====  =====  =====  =====  =====}  =====  =====  =====  =====  =====  =====}  =====  ====  O SCREEN1M  =====  =====  =====  }=====  =====  =====! =====! ===== ! =====!} =====! =====! ===== ! =====%! =====*! =====A/!} DLIST14!X;9!X; DISPLAY LIST 2>!X;C! DLIST2H! p=p=pM! DLIST2XR!  @W! A\! DLIST2a!X;f! X; SCREEN 1 (MODE 8} OR 7 1/2)k!X;p!SCREEN10u!SCREEN1TSCREEN1z!SCREEN1M@!SCREEN1BSCREEN1!MYCOL4SCREEN1!MYC}OL0SCREEN1!MYCOL1SCREEN1!MYCOL2SCREEN1!X;!X; SCREEN 2 (MAGNIFIED)!X;!SCREEN2CN!SCREEN2S}SCREEN2!X;! X; SET INITIALIZATION ADDRESS!X;!! GENESIS!EN 2 (MAGNIFIED)!X;!SCREEN2CN!SCREEN2SM