@L}5 _$% l0$)$$Hȱ$ UhL" `e$$%`$%`  R@P!( L(1   Y I`  d  Ld M * @  $ % CC$$) BFDEIH T U VTLTWAUG : ISSUE No 7 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`  `8  ɐ     `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.D8:MEM.SAV J y08 B|DEHI$} V0 0`B;DEL`?<0LV`@ʆ v s? F0Ξ05: [ BDEHI%} VY8 B V  @  /DE `E:D8: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 }$ЎX J`8532 25.$-%.5"!3hAXa J `*} J`8532 25.$-%.5"!3hAXa J `=AB=!"`<0<M !"`lXXXXXXXXXXXXXXXX"ORTNI:D"NUR:"TTEKSOF NHOJ";6#?:21,4.SOP:" ,}YB DETNESERP";6#?:01,4.SOP:67,807EKOP:46,47735EKOP:46,61EKOP:71.RGXXXXXXXXX"ORTNI:D"NUR:"TTEKSOF NHOJ";6#?:21,4.SOP:" J@RA $$$$|COLOUR EXTENSION SUBROUTINE |$$| |($$| VERSION II |2$$<$$| Written by |F$/}$$|John Foskett November 1992|P$$|Updated V.II October 1993|Z$$d$0}n|CONTROLLING REGISTERS|x|Colours: Line 0: 1628|| : Line 23:1651$1}|| : Char 0: 1652|| : Char 23:1675||Keyboard Lock: 203||C$2}ursor Flash Rate:204|Ӡ堛# +#A#6-:"!6@$3}"A6%06-%@: A0BB'AH9AI@K$4}A@W]A@oBBAA`A@Aa@'A@'A@$5}ɠ᠛kk72,169,0,133,77,141,255,2,133,209,230,208,165,203,240,10,169,0,141,182,2,169,64,141,190,2,165,204,240"$6}aa17,165,208,37,204,197,204,240,9,208,12,141,243,2,104,76,138,194,169,2,76,40,6,169,0,76,40,6,ɠ᠛6jj72,138,7$7}2,230,209,166,209,224,25,240,18,234,234,189,91,6,141,24,208,189,115,6,141,23,208,104,170,104@64,162,0,134,209,240,232J$8}᠛Tee148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148^$9}᠛hee202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,2$:}02r|ii112,48,128,194,64,156,0,130,0,130,0,130,0,130,0,130,0,130,0,130,0,130,0,130,0,130,0,130,$;}0,130,0,130JJ0,130,0,130,0,130,0,130,0,130,0,130,0,130,0,130,0,130,0,130,65,140,6򠛚-1$<} D:CES2.BASJJ0,130,0,130,0,130,0,130,0,130,0,130,0,130,0,130,0,130,0,130,65,140,6򠛚-1$ ;ɠӠɠ;;򠱹 PHA TXA PHA INC 209 LDX 209 CPX #25 B(>}EQ RESETRETURN NOP NOP LDA 1627,X STA 53272 LDA 1651,X STA 53271 PLA TAX PLA RTI;------------;ԠRESET LDX(?} #0 STX 209 BEQ RETURN1627,X STA 53272 LDA 1651,X STA 53271 PLA TAX PLA RTI;------------;ԠRESET LDX(;ɠӠɠ;;򠱹 PHA LDA #0 STA 77 STA 767 STA 209 INC ,A}208;Ӡ LDA 203 BEQ CHARAC LDA #0 STA 694 LDA #64 STA 702CHARAC;Ҡ LDA 204 BEQ ON LDA 208 AND 204,B} CMP 204 BEQ ON BNE OFFCURSOR STA 755 PLA JMP 49802;-----------------;ҠΠON LDA #2 JMP CURSOR;Ҡ,C}ƠOFF LDA #0 JMP CURSOR STA 755 PLA JMP 49802;-----------------;ҠΠON LDA #2 JMP CURSOR;Ҡ,!COLOUR EXTENSION SUBROUTINE or CES==================================VERSION II - October 1993By John FoskettThe Colo0E}ur Extension Subroutine or CES was written as an extension to mode zero, to provide a colourful screen for displaying text su0F}ch as in an adventure game, etc. Each mode zero line and the characters printed upon each line can be coloured independently.0G} However, the rules for mode zero must still apply, where the character colour is merely a different brilliance of the line c0H}olour that they are printed on.For keyboard entry, a flashing cursor is provided, where the flash rate and the flash patter0I}n can be altered as required. All inverse characters flash along with the cursor to enable the use of flashing prompts, title0J}s, warnings, etc.A keyboard lock is provided to ensure that only uppercase characters can be entered from the keyboard. The0K} keyboard lock may be enabled or disabled as required.CES contains its own modified mode zero display list which enables a 0L}lined screen to be used. Also it disables the attract mode and disables the Control-1 Stop-Start toggle.CES DESCRIPTION0M}CES is a machine code program that is VBI and DLI driven, therefore its operation is completely independent of basic. CES use0N}s four of the unused page zero registers, two for its own use and two to interface with basic to enable it to be controlled.0O}Loaded into page six, CES consists of five sets of data and alters three vectors to point to the correct parts of CES. The f0P}ive sets of data are the VBI data, the DLI data, the line colour data, the character colour data and the modified display lis0Q}t data.THE COLOURSAs stated above there are two sets of data which control the colours, they are the "Line Colour Data"0R} and the "Character Colour Data". Both sets of data consist of 24 statements each. The first statement found in each set of d0S}ata controls the colour of line 0 (top line) and the colour of the characters on line 0 respectively. The second data stateme0T}nt found in each set, controls line 1, the third, line 2, etc.Since the DLI is constantly reading the data from where it is0U} stored in page 6, it is just a matter of POKEing the correct registers to alter the colours.The actual location in page 6 0V}for the colour of line 0 is 1628, for line 2 is 1629, upto 1651 for line 23. The actual location for the colour (brilliance) 0W}of the characters on line 0 is 1652, the characters on line 2 is 1653, upto location 1675 for the characters on line 23.T0X}HE KEYBOARD LOCKCES makes use of location 203 to control the keyboard lock. When this location contains a zero, the keyboar0Y}d lock is disabled, allowing the use of all the usual characters. But when this location contains a non-zero value, the keybo0Z}ard lock is enabled allowing only uppercase characters to be used.The keyboard lock ensures that the keyboard is locked int0[}o the uppercase mode even if the CAPS key or the inverse key is accidentally pressed.When the keyboard lock is enabled, all0\} lowercase and inverse characterscan still be printed to the screen, the keyboard lock merely prevents them from being enter0]}ed at the keyboard.THE FLASHING CURSORCES uses location 204 to control the cursor flash. When this location (204) conta0^}ins a zero, the cursor and all inverse characters assume their normal staedy state (ie. not flashing). When this location con0_}tains a non-zero value the flashing of the cursor and inverse characters is enabled, the flash rate and the flash pattern bei0`}ng dependent upon the value location 204 contains.For an even flash rate with an equal mark-space ratio (on-off times), the0a} value should be a multiple of two. 16 is the most suitable value which gives a good flash rate. A "1" gives a very fast flic0b}ker whilst a value of "128" gives a very slow flash rate. Any value may be used to generate some different flashing effects, 0c}it is recommended to experiment with this.Any time, whether or not flashing is enabled, the cursor may be "turned off" by u0d}sing POKE 752,1 in the normal way.A SECOND CLOCKAlthough location 208 is used by CES itself to regulate the cursor flas0e}h rate, it may be used as a second clock in the same way as location 20, since it is incremented at each VBI. If the cursor i0f}s being used, then location 208 may be PEEKed but should not be POKEd which would cause a small disruption in the cursor flas0g}h rate. If the cursor is "turned off" by POKE 752,1 in the usual way, then location 208 may be POKEd at will as nothing will 0h}show on screen.REGISTER 209This location is used by CES as a counter to synchronise the colours to the correct screen l0i}ines. This location is incremented each time the DLI is called by the display list, which is 24 times. Thus location 209 incr0j}ements to 24 before it is reset to zero by the VBI. This register tells the DLI where to read the data from in page six to lo0k}ad into the appropriate two hardware colour registers. This register should never be POKEd since this would cause a nasty fli0l}cker on screen as the colours suddenly become "out of sync".TECHNICAL DETAILSWHY NOT "WSYNC"The usual way of synchr0m}onising the loading of the hardware registers is to use the "WSYNC" register at location 54282. When used, the colours of the0n} lines were found to be rock steady, but they wobbled when text was printed to the screen creating a nasty amatuerish appeara0o}nce. This results from the WSYNC register syncronising to the next scan line down the screen due to the timing requirements f0p}or screen printing and then returning to the previous line. To overcome this, two "NOP" instructions were used instead of the0q} WSYNC register to sufficiently delay the loading of the hardware registers to ensure that the loading is done "off screen" w0r}hich provides colours that are rock steady at all times.THE DISPLAY LISTThe display list data is a normal mode zero dis0s}play list modified to call up a DLI interrupt 24 times. Zeros have been included in the display list to produce the lined scr0t}een.A partially lined screen may be created by removing some of the zeros, or some may be changed to a multiple of 16 to gi0u}ve thicker lines in the normal way. If the display list is altered then the first two DATA statements (112 and 48) may requir0v}e altering to centralise the display. The total number of statements used in the display list is unimportant since CES contin0w}ually loads data until it reads a -1, the end of data flag.USE WITH TURBO BASICCES may be modified for use with Turbo b0x}asic simply by amending a single value in the data for the display list, the number "156" must be altered to "188". This is b0y}ecause the screen RAM begins at location 48192 in Turbo basic where as in standard Atari basic the starting location is 400000z}.ause the screen RAM begins at location 48192 in Turbo basic where as in standard Atari basic the starting location is 400000CES VERSION II UPDATE=====================THE KEYBOARD GLITCH PROBLEM CUREDBy John Foskett - October 1993The first4|} version of CES suffered from a problem known as the keyboard glitch, which has been overcome in version II.The keyboard gl4}}itch problem is caused by the momentary suspension of all VBIs which results when the Atari performs some of its own internal4~} operations. The most noticable being during a disk I/O operation.Since CES is VBI/DLI driven, if the VBI is suspended for 4}any reason then its synchronising register, location 209 is not zeroed and allowed to increment out of range. Therefore this 4}results in the DLI routine reading data from outside its normal range. Therefore, the line colour is read, not from its own s4}et of data, but from the next set instead (ie the character colour data). Since a VBI is normally only suspended for a single4} screen, CES re-synchronises its colours after the DLI has read the character colour data. The result is the greenish screen 4}flash which is what would be expected with the character colour data containing 24 (23 originally) values of 202.A small su4}broutine has been included in the DLI routine to enable CES to remain "in sync" whenever VBIs are suspended. Unlike the VBI m4}ethod of zeroing CES's synchronising register, the DLI has no reference point with which synchronise the colours to the corre4}ct lines. This can be seen during a long period of VBI suspension, such as during a disk I/O function, where the colours grad4}ually slip down the screen line by line. This unfortunately cannot be avoided because the DLI has no reference.Even though 4}the improved DLI routine cured the keyboard glitch on the lines that it controlled, that is lines 1 to 23, the problem still 4}existed on the top line (line 0) which is controlled by the usual software registers. CES is now modified to control all 24 l4}ines so that CES now controls all the screen. The third data statement in the display list '128' (0+128) calls up the DLI rou4}tine before the screen begins to enable it to control the top line.The colour control registers have now been altered accor4}dingly, they are....Line 0 -- Location 1628Line 1 -- Location 1629 :: :: ::Line 23 - Location 1651Char 0 4}-- Location 1652Char 1 -- Location 1653 :: :: ::Char 23 - Location 1675 ::Line 23 - Location 1651Char 0 4Xh#/#NN1EXINUKENENNNIMNN15N2MASECN12LINP69P70N1N1N1NNN1DPREPREPPWVERIFN191BU8}HN25LDHN1N2NMHMEMTMTHYEACVBIDLS@@ BdC @8} @ @ @@AU@'@@A(8}@@@@@ @!"#$%&A'(@e8})AV*Ai+,@-@ .@/0 1!!23456NN7""8@8} !!!!|THE DISK DIRECTORY HEADER|!!| Version II |(!!| Written by Joh8}n Foskett |2!!| September 1993 |<!!F_6-+6-@+@d=B8}7t@dIAYUA_ A`P$$------------------------------Zd 6-68}- An- A@6-&@H- )!Ax36-?:C:,<<@,") A03 AP Ap8}"A A##-----------------------------󠛪DK:6. $67,. -67,.8}46.:6-D A`=AdAU)"")0.:B2H=$"A$ "B2H8}$ AWW!@&* @2)!A$* A()!* A`)"AT)"AUAP''"*+ @H)!@W8},AP0  6-%-%&"(>:,067<,.>:,( "-%&(>:,(67<,.>:,@"A&*! 678}<,. *67,.26-&:-%@( %%B2H@@%$%$%+,$ AРЯЩ" "8} ',' A6##-----------------------------@ JO -( CUSTOM HEADER#6. .68}7,. 767,.=6-C6-O6-@dT36-?:C:,,6-%-3( ENTER LINE :^D(>-----------D(%E8}IGHT LINES MAXIMUM Š EXIThg 6-6-A'A3A= ApL6-F:A,[6-F:A8},gAr' 6-$&67,.b'67%,.| -%(: "$@6-?:C:,,-@(&à EXIT Π 8}NEXT LINE Р PREPARE A@"' A"@xA@"@$ A 련8}ä9  6-+$%, 67,.+67,.967%,.7,##-----------------------------8},6-?:C:,,-&( PREPARE DISK,6-M"(SELECT DENSITY TO FORMAT:M(&à EXIT Š ENHANCED Ӡ8} SINGLE A@"A,"@6-"6.SINGLE, AP."@i6-$6.ENHANCED. AP8} A렛&I6-?:C:,,-1(Π PREPARE DISKI( DENSITY SELECTED0//(&PRESS ٠ T8}O PREPARE DISK IN DRIVE 1:! A@!@AD:6-?:C:,,-:( PREPARING DISK IN DRIVE NUMBER 1N[)(8}FORMATTING DISK IN  DENSITYB(WRITING WITH VERIFYF(O6-F:,[@X "ASD:b%"@8}%ATD:lv! 6-C:,6-P:',!6-&$cAi!Ap@-Ar8}9AsKAxAWAyc6-?:C:,,I6-?:C:,<<,-?(!DISK FORMATTED AND HEADER WRITTENI A8}ӮӠ٩K --(PRESS ٠ TO WRITE DOS.SYS FILE7 A@K@A ӮӠ8}[ 6-#6-?:C:,<<<<@7,36-?:C:,<<,9-[(WRITING DOS.SYS WITH VERIFYH( D:DOS.SYS!>8}@5 D:DOS.SYSH A䠛9 6-?:C:,,-9(DISK PREPARED IN DRIVE 1'( 8} DENSITY WITH"'(OUT8( DOS.SYS8(#PRESS ٠ TO PREPARE ANOTHER DISK# A@@# A'8}6-?:C:,<<<<@7,' A##----------------------------- 9@-((DI8}SK DIRECTORY9D:*.* / (7<,0* ,@/$* A4##-----------------------------8}>H2AdAU#K:*)/2$R##-----------------------------\8}f:A6--*(HEADER: :#$&%APpM"0@"67$%,.b/67$%,.7-%;(C68}-%M Az AP堛 - (" A@"6-@"$"A ` A 8} d6-?:C:,,-4(PLEASE ENTER THE FOLLOWINGd(+ENTER NUMERALS ONLY Š EXIT8}!* A`蠛9 6-6-@$6-9(ENTER MONTH: 1 to 12 >--C Ap6-A:,& )8}!@2-@$9( C A5 #AP-" #"/6-@q5- "6-@- 6.8} A06-?:C:,<<,$8 6-6-6-@!-8(ENTER YEAR: >----.E Ap6-A:,8}, A)!A @2-;( E Ap8! "6-@Y!-@B "6-@-L%")"@8}6-A%-V "6-@v-` "6-@-j 6.=:, A0t堛~6-?:8}C:,,-( A@*A` "6- 련ä86-B:,% 67,.8}*67,.867%,.7,$""---------------------------- ä᠛(67<&%B:,,.$8} ᠨ򩠛88JAN,FEB,MAR,APR,MAY,JUNE,JULY,AUG,SEPT,OCT,NOV,DEC""----------------------------8}@6-?:C:,<<@,-@(THE MENU OF STANDARD HEADERS T(0. CUSTOM DESIGN3(1. GENERAL PRESENTA8}IONT(2. GENERAL FREE PRESENTATIONg+(#3. SINGLE PROGRAM FREE PRESENTATIOND(4. GENERAL COPYRIGHTg(5. PROTECTED PRO8}GRAM COPYRIGHTn)(!6. PROTECTED PROGRAM PRESENTATIONL(7. PROTECTED SHAREWARE PROGRAMn(8. DATED GENERAL PRESENTATION8}(M*("9. DATED GENERAL FREE PRESENTATIONM(PLEASE SELECT OPTION: 0 to 92S -2($ CYCLE COLOURS RESE8}TDAY@XPAS$<""----------------------------FP? A`'6-F:A,8}?6.UNSPECIFIED ERRORZ;"A8)"A9;6.NO RESPONSE FROM DISK DRIVEd("As(6.CANNOT FORMAT DISKn8}B6-?:C:,,@!->(ERROR  ENCOUNTEREDB(x00((Π PREPARE DISK Š EXIT A@8}"A"A A""----------------------------堛_6-@6-%6-8}%'6-%/6-%76-%?6-%G6-%O6-%W6-%_6-%G 6-%6-%6-%#6-%+6-$36-%;6-#8}G6-Ah A`A@X1A@t76-?6-%E6-h;@,;@,;A8,II;8},;,;,;,;@3,;,;,;,;@x,;@4, 6. 67,. 67,.h+6.!Π CONTINUE 8}Š EXITA6.PLEASE WAIT....h6. pp0F@Ann6.dhshhhhϥmhhhhѩ̅ͅΩҢ8}(% eͥͅe΅ːޥXeͥͅYe΅΢БE967A,.&i(ͥi`˩ϩЩ(БE6.h 8}S`pX6.NHMO@. NhLNNii۩p6.hhh˩`C 6-C:8},6-P:',!6-&$267B:,%,.>:,C67B:,%,.>:,A`Aa"W 6-C:,6-P:',!6-&$-BB8}9AHEAIWBBAU,Ǡ6E6-P:F:AB,',&'BBy$3B2wEA8}AP@E!6-?:C:,<$A H%A$,)-A$A H%A%E JT_AR4( } the8} diskdirectory header\(# VERSION II _$^""----------------------------h򠱠r778},|PRESENTED|,|BY JOHN F|,,@|򠲠CC,|PRESENTED|,| FREE BY |,|J.FOSKETT|,8},@򠳠[[,| A |,| PROGRAM |,|PRESENTED|,| FREE BY |,|J.FOSKETT|,,@8}CC,|COPYRIGHT|,|J.FOSKETT|,| (C) |,,@򠵠[[,|PROTECTED|,| PROGRAM8} |,|COPYRIGHT|,|J.FOSKETT|,| (C) |,,@򠶠gg,| A |,|PROTECTED|,| PROGRAM |,|PR8}ESENTED|,|BY JOHN F|,| (C) |,,@򠷠gg,|PROTECTED|,|SHAREWARE|,| PROGRAM |,8},|J.FOSKETT|,| (C) |,,@򠸠OO,|PRESENTED|,|BY JOHN F|,,| |,8},@򠹠[[,|PRESENTED|,| FREE BY |,|J.FOSKETT|,,| |,,@8}D:DIRHEAD2.BAS򠹠[[,|PRESENTED|,| FREE BY |,|J.FOSKETT|,,| |,,@8THE DISK DIRECTORY HEADER Version II=====================================September 1993By John FoskettBy reading th<}e directory of commercial disks it can be seen that in many cases the directory contains a header of some form giving some de<}tails like a title, version, date, etc. Such a header could be written to a newly formatted disk by using a disk sector edito<}r but this can be confusing and time consuming, since it must always be remembered how a disk stores its data. In order to ov<}ercome these problems in a user friendly way, "The Disk Directory Header" was born.The Disk Directory Header can create a h<}eader consisting of upto eight lines, completely filling the first directory sector if required where each line can consist o<}f upto eleven characters, the normal file name length.The Disk Directory Header provides nine standard headers which can be<} selected from the main menu as well as a way of creating a custom designed header.THE SCREENThe top section of the scr<}een comprises of the title. The central and the lower sections comprise the main working part of the screen.USING THE DIR<}ECTORY HEADERWhen The Disk Directory Header is first run, the centre section contains a menu and a prompt. To select one of<} the nine standard headers, press the appropriate number key, the menu will be erased and the chosen header printed in its pl<}ace on the left side of the screen. If the chosen header requires a date then this will be requested before prompting for the<} formatting details.As a part of the main menu, the bottom line of the screen contains a small two option menu, as a remind<}er, that at any time START can be used to cycle through the background colours whilst SELECT is used to reset the colour back<} to blue.If a custom designed header is selected from the menu, the menu is again erased and the necessary details printed <}to enable its construction. As each line is entered, it is printed to the screen and a menu is displayed on the bottom line. <}Select "N" to continue and enter the next line, "P" to exit early and to prepare the disk or ESCAPE to exit back to the menu.<} If and when an eighth line is entered, the 'N/P/ESCAPE' menu is bypassed and control is passed directly to the 'Prepare disk<}' section.PREPARE DISKThis section is entered after a header is completed and RETURN pressed, ESCAPE will exit back to <}the menu.Prepare disk allows a disk to be first formatted in either single or enhanced density, ESCAPE again is used to exi<}t. "S" is pressed to select single density or "E" is pressed for enhanced density. After selecting, 'CAUTION' is displayed on<} screen requiring "Y" to be pressed to continue. Any other key will return back to the previous stage to select the format de<}nsity.Upon pressing "Y", the disk which is currently in drive #1 is formatted and the header written into the directory. Af<}ter this, the disks directory is read and printed to the right hand side of the screen to confirm its presence.Once the hea<}der has been written and the directory displayed, the option to write the DOS.SYS file is given. Upon pressing "Y", the direc<}tory display on screen is erased and the DOS.SYS file written to the disk and locked. The disks directory is then once again <}read and displayed.Regardless whether or not the DOS.SYS file has been written to the disk, the option to prepare another d<}isk with the same header is presented. Pressing "Y" will allow the format density for this disk to be selected. Any other key<} will exit back to the menu.MODIFYING THE STANDARD HEADERSNaturally the standard built-in headers will need to be amend<}ed to incorporate the users name rather than my own name. The standard headers are stored at the end of the listing in the fo<}rm of basic DATA. When modifying the headers, the single line format must be maintained due to the way that the program selec<}ts the various headers. Each set of header DATA terminates with the '@' character which is most probably the least likely cha<}racter required for a header. It can be used within a line of characters but must not be used alone. The limitation of a maxi<}mum of eight lines where each line comprises of a maximum of eleven characters must also be maintained. The main menu should <}also be modified to reflect the changes made.If a modified header needs a date, then its position must be considered so tha<}t the details can be printed within the header on screen and for inclusion into the string for writing into the first directo<}ry sector of the disk. For this reason it may prove more convenient to leave the date position where it is and to simply modi<}fy the header around it.TECHNICAL DETAILSA VBI routine is used to control the background colour cycling, to disable the<} attract mode and to disable the CONTROL-1 stop-start toggle. It also provides an optional keyboard lock to ensure that only <}the normal uppercase character set ascii codes can be used when selecting from the menus. This part of the VBI cancels any ac<}cidental operation of the respective two keys. The keyboard lock is disabled when the custom designed header is selected to e<}nable the use of all characters.All text erasing is achieved by using a machine code routine which defaults to erasing the <}lower section of the screen only, unless otherwise set up.The cursor used within the data entry section is 'player zero', i=}ts colour is also controlled by the VBI according to the background colour. A small machine code routine is used to ensure th=}at the player zero stripe is clear before the cursor is defined.A small machine code routine is used to access the internal=} routines enabling data to be written to the disk.A custom display list enables the use of a mixed mode text screen.The a=}bove stated machine code routines are stored in the form of relocatable machine code strings. The display list is also stored=} as a relocatable string. The strings being directly defined to eliminate initialising time caused by the loading of data.ed<{34i}MODFINISADDADDADDRESMATOHCNLNUFIN@?pqA}A  A& |DISPLAYA} LIST READER|| By John Foskett |(| August 1993 |2< AFA}Pa+@@d+B7t@d=AYI6-U6-a6-Z@6-F:A`,!6A }-F:Aa,16-%AV$@6-F:@,d,68,-F:%, 8,"@e,6-@nG6-%@"@+6-%@A }7"@=6-G A@x A̠ +@@d1B7t@dCA }AYUAAFg@yA`Aa@-AR@!6--6A }-99( }PEEK(560)= ADDRESS=%AV$MODE=B0( PEEK(561)= PEEK(87)=A }TOTAL=BAY@4=-&@%"@!16-@=6-'"@B6-@'6-A}'"@c6-@'6-'"@6-@'6-'"A6-@ '6-A}'"A&6-@$'6-'"AG6-@('6-'"Ah6-@2'6-'"A}A6-@6'6-+-@%(8,'6-%@+ "᠛,Q@@'-@A}@#Q($ SAVE TO DISK EXIT6F:B2y,"@%@ F:B2y,"@APJ ATA}렛^i6-6-@-67@,.=:,66.=:,G-@B:,e67<,.>:@:7<,,%A(,i hCA}-@@#C( WRITING MODE  DISPLAY LIST TO DISK rZ @@P(@ .٠A}ҠŠZ A0|c-&@"6-8,+6.=:,66-%B:,B!@gO(@Y A0c AA}/(@ &@/(@,Y (@@/-@@#Y($FILE IN LIST FORMAT A} EXIT# F:B2y,@A#%堛"&@$>6-6-%@(A}(@;(@D.>$ Y%2@@@46-G:@,V2A}Y$a A@*-@@#a(ERROR F:A, ENCOUNTERED EXIT A}# F:B2y,@A#%堛 +@@d1B7t@dCAYUAA}AFgAAFyAR@A1@ Az@<9A,;@,;@,A};@,M6. D:DISPLAY.P#d-@Sh"v%A6z M%6-F:A`,%AV$F:Aa,9%@@A}M%@@&L#(} display list reader7(WRITTEN BYL(JOHN FOSKETT0M,(A}$PLEASE ENTER THE MODE NUMBER;(  >--MAY@4:D/#@@A}K:/6-@NGAdAU")@3"AU*0= A`G APX("A&*0 A`( AA}b/6-&@H/ )!@ Al'67,.=:,#-@%@'(v3 A`6-%@'!@A }36-@ A/ 6-A:,6-K:@,/!@GA@$96-@A!}6.(-@@/( 9 A ᠛mm112,32,66,64,156,0,2,32,2,0,2,0,2,0,2,0,2,0,2A"},0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,02,32,2,65,0,6 D:DLREAD.BAS,2,32,2,0,2,0,2,0,2,0,2,0,2@bDISPLAY LIST READER===================By John Foskett The display list reader will read any of the internal displaE$}y lists upto mode 47 (15+32) and print it onto the screen. All display lists are printed in 10 columns of 21 statements in eaE%}ch, enough for the largest to be printed to a single screen. Once a display list is printed on the screen, pressing START wilE&}l write it to disk in the form of basic data in the LIST format. The file name used is "DISPLAY.X", were X is the mode numberE'} selected. Pressing OPTION exits back to the title screen. Important data is given at the top of the screen as followE(}s....PEEK(560) Starting address - low bytePEEK(561) Starting address - high bytePEEK(87) "DINDEX" current modeADDRESE)}S Starting addressMODE Selected modeTOTAL Total number of statementsHOW THE PROGRAM WORKS The progrE*}am works by selecting the chosen mode and loading the display list data into an array, reselecting mode zero and printing theE+} data on the screen. The display lists are located by PEEK(560)+256*PEEK(561) in the normal way and ends two address byE,}tes after detecting the number "65". The number "65" is always found in a display list three bytes from the end. A lineE-}d screen is used for clarity which is generated by a custom display list loaded into page 6.bytes from the end. A lineD]HINTS FOR THE CAVE ADVENTURE============================By John FoskettOctober 1993Torch batteries don't last foreveI/}r.Drop your compass at your peril.You are going to be in the caves for along time so you are going to miss yourdinner. I0}You will be hungry and may findsome strange things to eat. No wine todrink either. Cave floors can be very slippery so yoI1}umay need some special footware.To enable you to climb the rock facesyou will need some climbing equipment,perhaps a ropI2}e. A rock climbers hammermay prove useful.You may have to risk bumping your headon the rocks in order to proceed.You caI3}n't hold your breath long enoughto swim underwater, you must find somemeans of achieving this.Cave dwelling creatures mayI4} cross yourpath, you might need a weapon to enableyou to tackle them.Some creatures could be poisonous andmay kill you.I5} You may find some obstacles impossibleto pass, such as dangerous rocky ledgesor deep crevices. If so, you will needto fiI6}nd another route.Keep a look out for pockets of methanegas, they may be impossible to pass andcould kill you.Old world I7}war II explosives become veryunstable after being left for such along time.ossible to pass andcould kill you.Old world HNsDATENAMENAME1OPTIONNPROGRAMNSIDNEX1EX1FNFN1FN2FN3PR1PR2PR3N71NN2N55N3N5327NNN17LBRFM9}EX2N2PR4PR5PR6PR7PR8PR9N25DHLNN1NFEX2FNFN4FN5FN6FN7FN8FN9IN5428SN6M:} M;} !"M<}#$%&'()*+,-./012M=}345678 @96. NOVEMBER 1993-6.DAVID E (TWAUG)96.David M>} 6- 6- 6-06.HINTS FOR 'THE CAVE'06. D:HINTS.DOC<6. D:CES2.BAS)6.D:DIRHEAD2.BAS<6. D:DLREM?}AD.DOC^6.CES2 (Version II)D6."DISK DIRECTORY HEADER (Version II)^6.DISPLAY LIST READER@h @M@} c(} Mr. John Foskett5( 26 Auckland RoadS( Kingston-upon-Thamesc( Surrey X(KT1 3BG (EnglaMA}nd);( Telephone 081-549-8620T-@P&B:,'@X( Y-@&B:,'@0( PRESENTED TO Y($ PLEASE LEMB}AVE THE DISK IN THE DRIVEC -3($ MENU REBOOT9C @ 6-F:,"@!MC}"@ @J  @##A - @J(} ԠȠŠ͠ŠΠՠ;(A.7,1(B. MD}RETURN TO INTRODUCTION;(C. & 0(D. &A$@6& 0(E. &A%@6,-@ ME}0 (1. ,A' 0(2.  A( 0(3.  A) 0(4.  A0MF} 0(5.  A1 0(6.  A2 0(7.  A3 0(8.  A4MG}! 0(9.  A5"T-@D(PLEASE SELECT OPTION: A->:%@d, or 1-JT @#OAMH}dK:$))/6.O @e)!@d%@C$'6-Ay"@e'6-Ax% %MI}-6-K:, &A"@e67,.-6.D:LETTER7#AA @U'3"@f#A) @3MJ} @(_"@g6-K:,'67,.96. D:BRIEF.DOCKAx@U#A_ @U)="@h*0MK}#67,.)6.3#A= @U*="@i*0#67,.)6.3#A= @U+#6-&@H# )ML}!@5,&AI%-"6-K:,& - " @u%. " @u%/ " @u%0 "MM} @u%1 " @u%2 " @u%3"@ @u%4"@ @u%5MN}"@  @u%6 @57? AAF% @/ @5? @i8/ @(MO}6-$/9! 6-%!(: PAGE :--@! 4 #'- @`; ( <8"@eMP}* @+-@0@ 8(More....=9 -3($ CONTINUE RE-RUN MENU9> 6-F:,"@hMQ}?"@V@"@WA @bBH -3($PRESS TO RETURN TO MENU 8>H @CFMR}:,@gDFA&@2Ax< @F @!E&6-F:A,&"A6@tFWMS}A&A0'A'A03-@O(ERROR  ENCOUNTEREDW( G9"A8)"A99(NO RESPONSE MT}FROM DISK DRIVEH#"AD#(DISK DRIVE OPENI&"Ap&(DOCUMENT NOT FOUNDJ @fKf 6-G:,MU}*AHA8<AIANAA`AAfL6A`@2'AaAV3AMV}H6$M=-@(A71A9@H=AAN`-(%ĠΠ͠ΠŠV($ UNCOMMW}PILED TURBO LISTING ON SIDE 1` @OT-@(A7+AAJ( ӠϠàT @PMX}I -3($PRESS TO REBOOT, ANY KEY TO EXIT= @IAdQ 6-F:Ad, "@R"@(6-?:MY}B,S @T(-AAA"!% ($U& -AC%@# &$VG-@6*2MZ}@ @@2@@@D G$WK @ @)-@-(?A7@RKAAX//M[}( DISK ERROR F:A, ENCOUNTEREDY9-@)(PRESS TO EXIT/9 @ZF:,@[' M\}AI%@' @!\l AH!AI3A@W?AKA]A`A)M]}iAal$]l+6-@d@+B7t76-@CARl($INITIALISING - PLEASE WAITM^}^{ 6-%6-%6-%#6-%+6-%76-@?6-%K6-@dW6-@#c6-@4o6-Av{6-AU_M_}=6-AY6-A'6-B2y36-BB= @`O #A-A"-A6%1 =AOAM`}@arr;@!,;,;@7,;@$,;,;@@,;@,;@7,;@4,;@4,;@Ma},b22;,;,;,;,;,;,;,;,;,c22;,;,;,;,;,;,;,;,;,d;,;,eh6.Mb}THE PROGRAMS IN BRIEF36. } LETTER TO ;6. L67@7,. U67,.[e @h$fkk72,169,0,133,77,141,255,Mc}2,133,209,230,208,165,203,240,10,169,0,141,182,2,169,64,141,190,2,165,204,240gaa17,165,208,37,204,197,204,240,9,208,12,141Md},243,2,104,76,138,194,169,2,76,40,6,169,0,76,40,6hcc72,138,72,230,209,166,209,234,234,234,189,82,6,141,24,208,189,105,6,14Me}1,23,208,104,170,104,64iZZ68,68,68,68,52,148,164,20,130,148,178,178,178,178,178,178,178,178,178,178,178,148,36jJJ10,10,Mf}10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10kkk112,48,194,64,156,0,130,0,130,0,130,0,130,0,130,0,130,0,1Mg}30,0,130,0,130,0,130,0,130,0,130,0,130,0,130lDD0,130,0,130,0,130,0,130,0,130,0,130,0,130,0,130,0,130,65,129,6m]]148,52,Mq}~`***********` TWAUG ` ISSUE ` No 7 `***********` Side B `***********b%DOS SYSb+AUTORUN SYSb-CES2 BASb=CES2DLI SRCb@CES2VBI SRCb7DCES2 DOCb{CES2UPDTDOCbGDIRHEAD2BASb0DIRHEAD2DOCbDLREAD BASb #DLREAD DOCb .HINTS DOCb38INTRO b wBRIEF DOCbBOBVILA OBJbtLDR1 BAS148,36,36,148,148,148,148,148,148,148,148,148,148,148,148,148,68,148,148,148,148n``148,148,148,148,148,148,148,148,148,148Mr},148,148,148,148,148,148,148,148,148,148,148,148,64o``130,132,132,132,148,148,148,148,148,148,148,148,148,148,148,148,148,Ms}148,148,148,148,148,64 D1:INTRO.,148,148,64o``130,132,132,132,148,148,148,148,148,148,148,148,148,148,148,148,148,L( `s V@9@@ D:BOBVILA.OBJV6-?:C:hji jL,, D1:LDR1.Yu}BAS `s V@9@@ D:BOBVILA.OBJV6-?:C:hji jL,, D1:LDR1.X:"!6@"A6%06-%@: @2"'ATF'ATP@$'@'@ZS}CES (Version II)Program file name CES2.BASDocument file name CES2.DOCLanguage Atari basicAn updated versionQx} of the program thatwas published in issue 63 of the NewAtari User magazine.See the CES update file 'CES2UPDT.DOC'on thiQy}s disk for details of how thekeyboard glitch problem that the firstversion suffered from has been cured. DISK DIRECTORY HQz}EADER (or DDH)(Ver.II)Program file name DIRHEAD.BASDocument file name DIRHEAD.DOCLanguage Atari basicMany cQ{}ommercial disks have some form ofa header in their directories to giveinformation such as a title, revision,date, etc. A hQ|}eader could be created byusing a disk sector editor, this can beawkward, clumsy and confusing. The diskdirectory header prQ}}ovides a more userfriendly way of writing a header intothe first directory sector (sector 361)accommodating upto eight linQ~}es. The DDHwill first format a disk in drive #1 ineither single or enhanced density (with1050 drives) before writing the hQ}eader.The DOS.SYS file can also be written tothe disk if required. The DDH containsnine standard headers built-in togetherQ}with a "custom design" facility for allthose special headers.DISPLAY LIST READERProgram file name DLREAD.BASDocument fQ}ile name DLREAD.DOCLanguage Atari basicA utility program that can read any ofthe internal display lists and diQ}splaythem on screen. If required, they maybe saved to disk. Modes upto 47 can beaccommodated (ie mode 15+32).lists and diPqﻩ01`pppB0AU}U}Y"/"6),!YYU}4he(ome)mprovementYY%xpertYU}UUUUUUUUUUUUUUUUUUUUUUUUY!$igitU}ized3ound0icture&ile"y-ark&ontanaU}U}U}0pppNPU}NA6PO_AT }U} ڕUTUjGo[@FXqDKEAUUTUV[_@AUP[DUDV_k%QDU}PPTA~TD[!UZUiD@Q @;_@RYdUVEUUQTmP[@eFVDPUQDU}Uto@iUVDPP)/`o@VUY@DA@PDo@ UEqDXA@@U} /EDQU@P@?A AiT)/EEQQh@[U/U} EQFT@Y/K AUUQTM?JAU@AT@V?U}TAUUEUAUVP?UUDF@T?FRYUUPU@U}EEPTUQ?WETiUUFU iUZUU}EEJiP@$VUUUUKYTVUUUAR_QjYEUUU}AYQofYUUEERURQ jYUUUDIVIREQVUiTUUDUBU[U}UUUUUQE@UY[DYU@jUEUTUkd@ZY[UUEAPAoYU}ՀTkUU@QkUfUPkojPYEZU}[oPVEUooE@mꯔkjU@VmT_U}ڙoEmRk_UZU[A@j껔kmEikiTSU}DUTUYVھP_ꯦUiզ_٪@U}kPEQAjWQ@QA[jFUYDG磌Q[VEVU}UT ꩔[[PVZP@kPQUbfZez`@kjUVfiV[PU}PUVPZVlZ@AUUUV@DU!ETEToşU[V@DU}TPooTTVjBPTPPooTZUWUBQAUDQگAUTYCfU}JUFj@UPUUPkZT/FPE@UhEUGPTjUU@/VADUKZeeU}@?jTUe VfYD?UUVU@ ee@@@/eU}D?U@D@D@Do/QUU@U}vD@/EY@?Eo@!@/i@/gvU!/V@/fAkU}/@?fEk@/ᄊ@ofY{`A@?VkU}/@VjU_@UezYDo@UZiU}Do@@YffUQDU/@ji[U@E/@PEoU}@n֔E_@E֮滋ڕo@AoU}@dEeUU?뺥h@UUU[ꦫjo@dPUUjoUU}o@PQUjjn/`HEUUV_oBnd/uXFUUUoo@kTU}亩yUUUUU[oP]TUUYooYP@oUUUkPYP@QEU}eejPiP@UQ@iiPji@AUUTPZߐ@fjZ@BUUTP@DkU}@UYY@UXUU&Pۀ@VeiY@jiUUa@릪ۀeZYijUUYjU}ڀP*VzVjUUJfjꪫ瀥TT'fiUUZVYETUکUY_ԩVYjU}FA`WeY_VYj몪`eYUYV睊e`QYUUVk[U}UPIjUUVVZ[VUU@JQ뚐UUieY[VVT@V@UUieYZUXU}T@UUjjZZYA@TUjjjeUVY*VUVYU}*jYjjUUZ+ЪVjUZ.ﻯЪfYjUZ//U}䪥jZeeZԪUiVjUꪪ? 꺚PUiYjڪ~ TU}UiZzj[PUYejVZ[@ZVUUjZjjQ@VZeVijU}ffjjZ}U@UZYUiVUjiVUU@UZUUeVVfZj .U꺪@VZUUjfVYU}ig@VZUejjZijW/^eY@VeUejjjk/eZ@VfꫪU}ꪮ@.U*A@VjV)d)iA囻PZUk%iDE_髻PUU}UoDD_PYUnEUzTAPjYUjTPUzTPjU^U}UkijVVZ@UB ziYjjZZ_ZDDUQ EYYijefZjDU U}@EieijfjeZT@TꪩYYjfjfjyPRDTꮪUijfjZiP[RTQU}꺐UejffjjjI@UUꪪE@+Uefꪪnꩪ D&kUU}Ufj Pe{nUU@Vj_ЕVj<TI{_VUVU}Z@%hDfUꪪ@QTUUViꙪoFP?UYViZU}@DVYUYjPW!DfYU _DDeifU}꾿 _DoTUZ﫻TDQjVUYZeUZeT[fZUeUjU}mt_kZUfj[lbjYfoJjUf_neU}ʿ_kVZYfjoZ_YeeYjfUYZ꫻թ{Q_DٯКUUj?K+U}YU٫UUVfej类몺ڹ/I+uDceeeVeU/oESAjijeUU?UVVU}?eYQijYe_mZjfeYTm OU}*%YTWP*UEDOPΪ)UUUADKWU})Yٕ%U@DKЎ*fQ@GfЎ뫪DoSe*U}jkEBe꺺&ZeUAEЎ꺺&j_%Q_Ae*U}o__@DP*֮Q?Y_EUYVUZ*殛U?]?UE@!A!;U}HY?@J)$I)*;թHJ)$I)*;閪VDUU)TU)*?ꖪOeU}Uk@k))D)*?fVK{))$D*;ꫪjN))$E*?fɿcKU}+))$I)*?ꪦO/U))$I)*?櫽T;?**(**>ڿUEGDU}:/AC@/>j/PF{Ѐ*ꮿodA JпU}oo/fP@@\XYyiNNzFFމ~m|{n|dn^[m[wIn^NIhWwU}[n~ĆnKIv^kkdyeyfiyxhzzYɉx׍^whyɦuhwxYw|xxhxxxwzxkyymi^ظxxwyU}iyժYywi^\mgXyUYYg^^xhjNyHEJ^nweyWDXN^n~LH\^^N~~gI^U}FN[i{NGZNN״FnL^dtN^u~NN~NN]ΔF^^uNFZnXN^H^e~NFN侨FNtFGU}ntFǞJy~VT~妛N^NfXyǤ^LNԵN^NNN^ľ臕NNUy且NN~yxz~^tWyzNN~tXNNnhU}GNLv~^^΄WNNm^Lx]fk~j径{HNKՔkNN莕[zlwZUyXWgxv~jXU}wWvzʘZWwYǧk}gvvwghYwٸh|yvfyy˘xihwhixwxwwYwgwwxgxxywxwwwU}xhxgwxhgyxxvjxywwhzyyxwzyyvxwxyfyvׇY燾D}{UUEE^U}dUTE~\didDMVnVDLJ~gTWfLdxDVU^DUf~dUugU~IegW}HexGEGEU}VDXlD^dNTg\FFmeGnTxnDG^kfKt^FFƦdDZe]{eK^TdTGeLITZ^DEYG~DU}T~KFTeJHtTV[GDnFhD^IHtTnN~TgHMtDgYFD^eeD[JGexKĽD^U}ΦUnJdd^U\EꄜUxXm̥gGggxxxwwxxxxxwxwwwxwxwwxxxvyxxxU}vwxxxhwxxxwwwwxwgxwygwwwwxwhwywwxwxxxxwxxU}gwwzeXTWmNnXWhMwWnvttNuNF^wHfgvgΔiśywUؘmX[vhv{ve{whxx{|uyU}xvfxxVwwxgxxfyzywWN˛yz\eigwz~Ny^Fnk٪~nKnkd螎^nJ~~uՍ{ޛgU}[MNn^XXh^^N~euM͎ĦY{vj]U^NM~XJXvNHj}XJI^MĬx^敆[XmF\|U}x]F쬾u~ENLJXꛤJy苇jdȾ~xNNy~nYZNxhw^~xuxdΫvuN]N~lWvvWgNGu~ʶNFXY^NU}~VWIfdyԻKnZE~يvĞLJ̊f|̩wfg|F~I[Yg튷ffhzG^XWe멆VfwKnE媎xJʹgugU}hZINF鵴zfŚvJWdwnFilfINFJK~U^hTfxYx^W^dN~U|^NtnUuNJZeyU}U~GޛlgyWxXXwJVWwwkiyywxjzwxWvZevzfxWޖgiwwyxywiU}hwvjgwxxxiywxwwwwhwxxwxhwwxwxwyyhywxU}hwyxwwxxxxxxxyyywyxwxwvzxwxxxxxwwxywwxxwxwxxxU}wxvxhgyxw{wwxxxwwvxwxwwwYwygvxxwyxxxwxU}xvxwfgxxxwwxxxyxxywxwwxwxwxxxxxwxwxwwwyU}gwwihhzxxxhwz}xxhxwzyizwkhyxyyxxwzwyhxzywyU}xxxvhwiyxwyxwxiLJxwyxx{yixwyjyiyxhyxyxyxwwwjwU}{xxxyyyxxywxxxxwxwxyxxzxxyyxxwƈwxxZxzxwwzU}ywxxwxvghwyixxxwywywhyiwzwxyyxwyywjzyxwwwwwyyzzyxyvwyxU}xihwwxxyyxxwxgyiwhwxyxyywhxyXzgxywwwU}x|wxxwxxwyzxxwwxyyxxyxxzxxywxxhxxwxxvL}D~hU}fmDJd~FYUFhGD~TNN~TTDNTMN~DI~޶H^w]n~TWɸ}LLF옅^X~ԔNMtJU}nDVWJXNNTEǦ^d^ȅMEfHΖZꤋˉWtwW~eey΅xVXFf^wxۄmJx~tMmt}XuzFU}viwyvh[nVYhwfwvx{xvwf^؈wwxnfUhzfk[whf눋fUZhiGw{f}WgzgvfhYxU}hV܎gj{Vgwyugvhiwvwwwyʷhwfhvywwxfvgyxxy{fxzxwxvxwyxU}wwwgxxzxxfvxwfwgwghxgwywxhxwyxxxwwwwwwiyvhvwU}wwwwxwxxxxwxwxvwwhxywwxxwxwywwwxwyghxwxwywywwxxzU}wywxvvwgwhƬwzwhNWwhtlhezKjW~F\xYWGLKWumnLVVMUU}[[U~WLEnH윖viNWiֈIZ̗N~gmZG۫xDN|fxhviwwvyxxvwgwxywwU}wwxwfwxwwwxyhzxjhkĹ[Ɋwwg^Ne~{YwNNY|gvntZg鼪Xf^Ne|U}neԋytYX箌luHf讇wZeGxΨufjuuGxdžUhUeG쾗fUyfvUgFxVe˾WU{Wgnvdj^zFުUUU}HiiΎwFhĸegۻuWyΕEHżVyɬwwhwiifivvwwxxxxxwwxhygxywxxxxU}xxgxxwyxwyvxxiyxwwwxZXwYͩY|wgN͎kngtKTe~M~tU}eJztEeLN~YGNXIu޴[TttNΜJEnVWNMF~VXnLFe䅇udz\N~^HV䪊{NmNxU}J^ގNNNw^NwNzVNNN~ynjXiy{yygx{kzhvhzggwxvvh{wwwU}xgfwjxxxwwxwwyxxwxwxwhxxzxxxgxwxwwyxxy^]lJx{j{yiU}i^{lXhnxfz{xzgx^yjwxi{Njxzziyyvyxxxwwv|[l]m]ǦlNNmKNNnlNN^~eyU}{Zwԩ]}N}lxnLyiINN^Nn|ƵM^^]\Whiw[N~ոxvWZ׆gffȨY{~wuukgw׆fgXJnnfviNU}˝ZXXX~hgxnZWNn~ٖuMJ^vd~f\Km|Gg^u[K|VXFN˕gFNxjEit{Nnj}^EMU}\DFꅧHxEwwG۶FvřHxfxިfeXuvhwyǪxxhwygwghxwzhxyxxwwyhgwxxwvU}wywyxwxwxwxwgywhiwhk嗾H[鞍Ev먮TnYJTdnKkFgEGNU\gN~E~IU}NEudENnVLnNLNWETndNI^FDLmGLNnd~NVg~YDDގHhu~U״HeNElUivtU}TΦFΩUnUjN~dWmvKVN[HVh^Z~HVfJE}yjmtMYgmv䊷iHIyhhwxxiU}wywhwxgzwhhwxwwxyxvxxxwxxxhxxyywxxyvhwxxxyxxwxU}vyywwwxyhwuwywwwwwygxhlfwhvwvWuehWfyYjgh燊FneImɗXxiV}HՊwuwJKJIh|{y~KkwzivxhkkXɎvfxxxf諄ݖXNwuLNv唆vL~NV}vvNޝNWf^ufNLK~eu^LF^[G쎴jxnNezLJ^I{NMVԮN\~e~NztdNʮ^ZUV}N^Gg~lNeNwX|̈́l藧ez^wwhwyxwwwhfgwxgfwiwwxwxxgwxzxxxvV}wxxyxxxxwxxwwixxwyxwhwxxyxxxwwxxzxhh{xxĶxǚjiV}h{wwzNjxxyyywxh{xghylihzzwxiyxzXxhgxhuywvxtigzzu{ܗTgkxV}guژjEfwzۅgXgfmVɆWˊgwv{i效zˆXXvwh\~Ƅ蛻gXX釆xiWvǧvfX؇vwyxvkefhηxhwzݹFxV}V}wfu[uXǻvfXgvwjywΧgfgٻXiZkWvgyU^ZXwYzM{F[eəȬgٚy^hxV}WV}^mN؞fjWV^~G~WTEvnnnvUVtX{NVnWU~uFFNUVUN~hnGtޕUN~NhNzFV}N~^KIXhD޴NԎGiN^vJkDڎNN~NZVl]~v^zwNGnmIL~DNGŝ\tN攎m贋NJE莹IΉKV }NNNYꮆN^{{׻GgήLF^]N}GKNKxyV^xk[hiwyxywwhwyxxxxwyV }xxxxyxxyyzyyyxyywzwwxxwxgywxixzywxii{x[xjyyjwjxV }|jlZnJzzkiihzyzxxf{wzwy~YiggzxwlmZkWyvxv{iwfwvvxzyjgǎxvwgkgiV }WwixyyvwgʈxwwxwhxxxwwwizwwvwxhjhxgfxxwyxvzxV }wiuzxxhvxvxivzwxwxxy{xyvgeXviv{gZg^G}xlEyYwilNK~|gHkV}wgJi뜊vwxiǺNfNIԎMwKIhvwZnyhzLMZNumNkUk|yYukNMNm֎lkJ|Yuj~^kNL^L쎶gkgV}jwNnʚhzwjzZKLLkNN^^wNNLNlYN^^^^mYhwdz}H^^xg~UY^L~^gMjyGV}}JmzZ]nNNn^LvIԵmuĻv{hl{x\^Tvzi~L^w{xge[i{n{w]Kljǧ׷Xi|wxV}֥׆XjnVXmWgwNH~}Nkhx|n^NNz^vvޭXxzxyx{]jwvhfwV}|x絈gm|yzKzn趷ZVwwm^zKfyǷٚgXy}NNnNNV^NNvNgykNj\~V~^iNNgiz~^M^LV}MiyiiNNHWl\yk\xNLnFMM|}wihgzL^N^^xYZ^ngvghizjxxkgy|vyGvV}{zʘggxwyvxYvxyxhxgfwyxhyzyxixmzg{wkwvxvˊvxxwV}XwxxihwxyxwzxXxwi{Zxyhwhwxjxxzkzkyzy|xzxzhkxhvV}fwkʙzfey}lʚhZvx^熗l\^tn^wwixgkėLNJLg~yw鮎^W鮎ZWnkNT鎋HWNv|JV}^xNnvĈm꾘NNGyWnnNfˋd}NNtjd^NNtLtNNtNuJd^NeLvKTNdLvxE^IYV}kDnIg~xE랷JInJF羮zfJfgV~ڴ{WXŅwVթwjxgidivwzxvhxfjv|ʇwYgZXwgxwgzgV}zɗv|v[hyywxjwhyywzwwzyuzjvkəviWwʉhxwwzxxgxywgxwgwyxwxwwgvwV}xxxxWwxzwxiWwzwxgfxwxjiwxhuxŌyf{xhuW{izfjxiux{yj]uxڨxfw{LxLfV}xigYxnhvwɜMƎkڨvgwlfX|xfuXȎhLֹ{YigXnjnxxkyxyZxyyjxxkwwxxkxzjwwjV}ywxyxgzyxwx{xyvxxwwxwxgiwgzxwwizxwzxxwzywyvyxwxvxwxywgzwwV}wxywxwxxywikuFYzzWy}WgjEykV䉖|tx|fVgklZmxzʚf|iZXkXzh[umktyV}~lvwxYvmw]wVhxNitzzwfvNGTVHNdNug^NWNGx^hNNd愖iv~N~t{Vd]ԧNV}^dzD^h^Le^xTu~{LUV~j^VNXG~hydNNHFڮeete՗^˞DMDGV~TnidʛXuV }nչ^ggvxjxxhwxiwwiwixxywxjxhwxyyywyjyiwwxyV!}xyxywzyywxxzzyxzvywjyiwyiv{vhxxywxwxjwxxwxxwxwV"}yxivxwzyxiwwyhzhwxzwxxxyxxwyxxwwxwxyiyyhvxyz{xwyzxiV#}yhzyxwyvvxwzywhxxhywwxxyvwwzwwyxxyhyxxwxwhxywV$}xwwwwvhyvxwxvgwhxwwxwyhwxxxxwxwwxxwxwyV%}wwvwxiwxxhxyiw{yxxyxxxwvxywxvwxywxwhwxxwxywgV&}ghhvyhwzkwwwzxy|xhxxxxywfzwhwwyxxxIzxyjyywwzV'}whwxwxxxhxxwywyiywzyyvvxgxʇvxxwxzxxfwgxV(}ywxyixwixhywihiwxwxhwxxwwwxzwxxxwwwgwywwx淇nwxwxwwV)}wvwwwzgyfygxxvgwyixvwxwgzxwviywxzxxizvygwvV*}vhxwxfxfxwhwwyxYxywiwvxwwywxgwwwxwvVfyxfV+}wxiȘixhhwxw{wgwghxvzjvhwwwhvvhgzxwxwyxyyxxxhywx{V,}whxzwkgw{vywxjfygwvwxyyhwxxzxwywgixwwzwwixyhV-}zgxgwwyyywyfwzhwivxwwvvvzxiiwx{lyyxwuvwgwjvxxwvxV.}wWiizwgwhxhhwyiwwzxw{xxyvywhwxwhvwgwwyV/}yxgxvxyywgwhwz|wixwxwjiyVƇixwwyviwiFvVhz^ev~g~Vi{weyiw^^V0}ZN~NČNUNdHfEZN^FNGndNt~EwDw^}untTNT̮^NEKNxdXUnN䙎IV1}UnNIާtiYNIT}v^EhDTNn^tKi^NDUUN^DFK~DuFNKDUGtLNED{T~NEHdV2}TJ^NVLDDtnJ^NYUDTNKNNHNDEId^NGHNN{DENNTtnt^dN]V3}Ĵ~UInDV^TutHT~DܔYTgKNvNeMD~E~ĊEގHXmfnVXnJXeŇw}MMUNneNndV4}INLTMNVNnTNdU~XDuNXU^VdUUVh[tnNFU~dvDNeeJDXUHDĮDnEUʥHN譔JV5}t{JTnT~WׇͤDEkw~fH뚵V{ɤDTJj\YIވUznWL{GnlvZT竅nGVVM[KTnm^V6}D\XiFN뎖NGGWnDUGNNJYyץiDdufye^~NKZmǨGuNDuf~D~dFHh]UV7}^iN~fuWE~XgJnլFuhTFEiG޵FZ^K{U^N[nFYxY}ggi|XgywwʸwzƊkWgVV8}Wwghvxڸ˕^lWxWXxhvgڨۅhfn\WjVgy؛GihzzzzEjh痦KޅZFkIlxZv~u{HyTveV9}WTu΄~ef~Tu΅~tIdɊu[jDnI{~YWJHjF^WǫhT]GXvGxEygFJ~vxy{iNV:}[XkghixZ\wvvښwhXggxywuvxgxxvwghjxhxWX֘whe}XVggW{Xxywhť΅zn|V;}gUך膈ji]tZ޽DnjgHFViʍgfzUʈhwUީD숄hk݈fwwu̶VlwX}툇wxwXjgufZgviivWuwHeV<}WkWuvjwfhWfuhyvWwehfgffhgyufefgffzhͷVzegWzvgyfXXuvWve~tj}V=}ZTE}uYH}K{枊jH׭ZFuuvFlulK]XtT͎U^UuGmTJULބM阅dվD^~D]D}k~KHV>}VUEE~J^fN\Eueznd^TNEfNNd^^JUIWUkTNHNFNF~~hiN[i}VV?}uxhiklhxyywywxwwwxwyyxhwxxwwyywxwxxvwwV@}wwxyxwwxxxxwxwwyzzyylw嘦zxjhxijxxxxzxyxVA}xgwwyyxxkxzxwyhxwwxygNevnWvƭidNvWvk\˕NwhWxZƘTN旙znU΋눆VB}Lg^XhyƅNN~gԇx~d]~VNTmvN뼪|NT|vN\jiXnjkfyyyyxgxxwxxwxwVC}wxyiwwxiyxwwzyxyzxyxxxxwxyxxxxyxxƷYhX|YHXhVD}yx\xg浗ivjyxyhXvyw{xg{gxXxxyXvigwkzwhzlxggZjegiXyxVE}凗hgyzxxzwxxLhjxWxvֆjfxwkgƘhiyf{gVwnnni\m\nN^x^N[NNwNNgNNVF}MNyh{JnNY[{KJGgLfnhƧHNN~i䧊NKnn^ȥ\Z^NN~Ȕ^Nnnf䵎N~^kfwĻVG}ĵw\^^NNZ~uxl]\LNN^n^n~^n^NNN^~֧hyzxxwwwxxvwxxwwwwxwwxwxxxxxxxVH}xxxxvxxxxxwwwwxx^YwxyxywyixyyywxgxzxwwVI}xxyxxxxxyxxxxywxwxyxxxwyyxywwwxxxxxxxxwxywxhVJ}wxxxxxxxgwxyx|wnzivzwwxXxxwx{wzxxyxxuxxxwwxzxiwg~VK}d[HfɅWVHvmYwwwM^FNDމGɄJIDDt\Gī~TNtNUNjNM~D~EGLvNHfUGZVL}FyHhNgNvWd^厷KIWh~tnDENwJtNZ[f|LufjjhwK^jMejnx[nfygH}MWyVM}v{ɨw痪g|wviyhwyxww^jvŕ/.oWPXY001`VN}) ЦLԍԍ ԍ Ԧ ҢҢ ԎҎ Ү)jjjj) L,jjjj) ) ͭ)VO}УΦЛL` ͩ@L$@ԩ"L<ԍԦ ˪jjjj) Ҋ)  ̦LVP}<``nf>ff~fff~~f<flxxlf`````~fn~~vfJ\}ff>f<`<<~Zfffff~ffff<ff<f>``|ff|<```<>ff>>ff>|``|fff8<<``lxlf8<fJ`}kc|ffffff>|f```>`<|~ffff>fff<ck>6f< x~ 0~<~~<Ja}~x|nf8x8f|``>ff>|f```>`<|~ffff>fff<ck>6f< x~ 0~<~~<H ALICE DOES ATLANSCOTTY SCOTT Nc} m "}2 SCOTT LBThe Glasnost Gameby Scott Johnson GLASNOST is sweeping through Russia and Eastern Europe! Therefore it is only fittRe}ing that somebody write a game to commemorate Glasnost. In the interests of WORLD PEACE and HARMONY, here is my submission.Rf} Unfortunately, several Communist hard-liners are trying to undermine President Gorbachev's reforms, and are attempting Rg}to rebuild the Berlin Wall. They are dropping chunks from the old wall (genuine chunks, mind you--not the fake variety foundRh} in most tourist traps) on the border, in an attempt to close once again the iron curtain. You must prevent this from happenRi}ing. Manuever the blocks in such a way that they form complete rows, for when a complete row is formed, the blocks in it wilRj}l disappear! Unfortunately, ealry success will make the hard-liners unhappy, and they will just build the wall faster and faRk}ster... When the Glasnost Game loads up, you will hear a stirring rendition of the Soviet National Anthem, and be preseRl}nted with an option menu. Using your joystick or the OPTION and SELECT keys, you can change any of the following options: Rm} Game Mode: You have a choice between TOURNAMENT mode and CONTINUOUS mode. In tournament mode, the blocRn}ks come in waves. After each wave, you get a bonus for a low wall, and the wall is clearedRo}. In continuous mode, they just keep coming. Speed: Speed 0 is the slowest speed. Recommended fRp}or beginners. Speed 9 is the fastest speed. Recommended for masochists. Height: Rq}Random blocks are placed at the bottom of the wall. Use this option to select the number or rows Rr} of random blocks. Width: Changes the width of the wall. Default is 10. Control: J stands for JoysRs}tick, K stands for Keyboard. In joystick mode, right and left move the blocks horizontally,Rt} the button rotates the blocks, and down allows you to drop them faster. Ru}In keyboard mode, the right and left arrow keys move horizontally, SHIFT rotates, and the Rv}SPACE bar drops the blockas. Preview: ON means the computer tells you what the next block is. OFF Rw}means it doesn't. Music: Turns the music on and off. When your game is over, and if your score is highestRx}, you can add your name to the Glastnost Game Hall of Fame. Just be sure your disk is still in the drive (this program savesRy} the high scores to disk.) Good luck and happy GLASNOSTing! Scott Johnson in a student in Computer EngineeriRz}ng/Computer Science at Oregon State University. He has had an Atari 8-bit of some kind for eight years.n Computer EngineeriPiThe Glasnost Gameby Scott Johnson GLASNOST is sweeping through Russia and Eastern Europe! Therefore it is only fittV|}ing that somebody write a game to commemorate Glasnost. In the interests of WORLD PEACE and HARMONY, here is my submission.V}} Unfortunately, several Communist hard-liners are trying to undermine President Gorbachev's reforms, and are attempting V~}to rebuild the Berlin Wall. They are dropping chunks from the old wall (genuine chunks, mind you--not the fake variety foundV} in most tourist traps) on the border, in an attempt to close once again the iron curtain. You must prevent this from happenV}ing. Manuever the blocks in such a way that they form complete rows, for when a complete row is formed, the blocks in it wilV}l disappear! Unfortunately, ealry success will make the hard-liners unhappy, and they will just build the wall faster and faV}ster... When the Glasnost Game loads up, you will hear a stirring rendition of the Soviet National Anthem, and be preseV}nted with an option menu. Using your joystick or the OPTION and SELECT keys, you can change any of the following options: V} Game Mode: You have a choice between TOURNAMENT mode and CONTINUOUS mode. In tournament mode, the blocV}ks come in waves. After each wave, you get a bonus for a low wall, and the wall is clearedV}. In continuous mode, they just keep coming. Speed: Speed 0 is the slowest speed. Recommended fV}or beginners. Speed 9 is the fastest speed. Recommended for masochists. Height: V}Random blocks are placed at the bottom of the wall. Use this option to select the number or rows V} of random blocks. Width: Changes the width of the wall. Default is 10. Control: J stands for JoysV}tick, K stands for Keyboard. In joystick mode, right and left move the blocks horizontally,V} the button rotates the blocks, and down allows you to drop them faster. V}In keyboard mode, the right and left arrow keys move horizontally, SHIFT rotates, and the V}SPACE bar drops the blockas. Preview: ON means the computer tells you what the next block is. OFF V}means it doesn't. Music: Turns the music on and off. When your game is over, and if your score is highestV}, you can add your name to the Glastnost Game Hall of Fame. Just be sure your disk is still in the drive (this program savesV} the high scores to disk.) Good luck and happy GLASNOSTing! Scott Johnson is a student in Computer EngineeriV}ng/Computer Science at Oregon State University. He has had an Atari 8-bit of some kind for eight years.n Computer EngineeriTi `u V@9@@ D:AUTORUN.COMV6-?:C:hji jL,, D1:LOADEZ}R.BAS `u V@9@@ D:AUTORUN.COMV6-?:C:hji jL,, D1:LOADEX 7-@@ D:SCREEN.DAT7 @ x@w6( ΠĮ@ A'R}T-@AX f(>:A%,xAW@& `( Ġ٠(>(#ŠŠ͠ӠĮH A'R}\-@A` 0 D +((":(ENTER >:@4,C:D A1@: (((ENTER >:@4, D:R}SCREEN.DATD ]( (%-@@)(- 9"U-AAP@Y(] N Q( ((CONT&R}-@A* <-@NAB@Q&X =AB@6-'6-A 36-@ = A3 b  R}+((6-@Pl pm(100 GR.@% :POKE 708, :POKE 709, :POKE 710, :POKE 712,:POKE 82,1:R}POKE 752,1p(v SS(G40 DIM C$(32):TIME=10:GOSUB 1000:C$(15,15)=CHR$(22):Z=USR(ADR(C$),TIME) (40 POKE 77,254 R}__(40 FORI=1TO10:POKE708,:FORJ=1TO100:NEXTJ:POKE708,:FORJ=1TO200:NEXTJ:NEXTI "+-@ARR}@8{( POKE 656,'@&@:?>:@4,7<%@7,>:@4,;6-%@  0 0#(90R} RUN >:@4,&(0 A2P (90 CLR:GOTO 40( 1(110 POKE 559,0.(140 POKE 559,341( L (CONT!-@R}A% 7-@IAB@L& CAB@!6-A -6-A2`96-AC A3 R} 7 +(,-A2pA3@@/(3(7  &"((CSAVE& A3 M0(XIO 33,#2,0,0,>:@4,R} D:SCREEN.DAT3(6(M(SAVE >:@4, F( ((POKE 842,12:GR.01-@CAB@F J -R}+((9-%&@'@=(@(FJ  K (CONT -@A$ 6-@HABR}@K& AB@ $6 (}@@6( o (USE THE FOLLOWING CODESR}:o(I1. CTRL Q = Save SCREEN to DISK or CASSETTE. Asks if you want to save r8(0 with 'RAINBOW, FLASHING, or RAINBOR}W COLORS?r(52. CTRL E = Erase, put cursor at top left of letter.b,($CTRL P = Asks which pen to use(0-3).b(1CTRL S R}= Scaling Factor-(.25-SMALL- to3.5-LARGE.)--(%CTRL D = Enter COLUMN/ROW for CURSOR!d(CTRL Z = Quit program!@(CTRR}L C = Change to which PEN?d(CTRL V = Tells where CURSOR is!QQ(ICTRL B = Makes a BOX OUTLINE. Put CURSOR on left loR}wer corner of BOX!j#(CTRL CLEAR = CLEARS SCREEN!j(A each for your š If you learn more commands letR}NN(F me or the OL' HACKERS-3376 OCEAN HARBOR DR. OCEANSIDE, NY 11572 know!&"(HIT Y TO CONTINUE PROGRAM!& 4R}Y$D:TITLCARD.BASRS-3376 OCEAN HARBOR DR. OCEANSIDE, NY 11572 know!&"(HIT Y TO CONTINUE PROGRAM!& 4P ************************************* ĮӢ ؠϛ ĮV}Ӣ or ήӢ asit may be known, is a programfor making fancy ΠӠ for yourown little creations.V} Look for it onthis disk. It allows you to do many thins like,put in large letter titles, and tocolor them to yV}our own choice. It alsoallows you to RAINBOW or FLASH yourfinished title, and save it to disk, orappend it to an eV}xisting program. Ibelieve it is a P.D. program. Here aresome of the commands that I have foundneeded to run the programV}:1. CTRL Q =Save screen to DISK orCASSETTE. Asks if you want to save withRAINBOW, FLASHING or RANDOM colors. ItthV}en proceeds to write your screen, andwill even show what ROW its working on,(about up to 95) and then it jumps upand dowV}n on screen while it erases thecreator program, and finnaly writes toyour disk. WHEW, what a great fantasticprocess, shoV}wing the real power of an 8BIT ATARI!2. CTRL E =Erase by putting cursorat top left of letter.3. CTRL P =Asks wV}hich pen to use.(0-3)?4. CTRL S =Scaling Factor (.25 to3.5) to control the size of letters onscreen, with 3.5 as V}the largest.5. CTRL D =Enter column and row #'sfor where you want the cursor.6. CTRL Z =To quit program!7. CTRV}L C =Change to which pen?8. CTRL V =To show you where thecursor is at the moment.9. CTRL B =Makes a BOX oV}utline, Putcursor on the left lower corner of box.10.CTRL CLEAR =Clears screen of course. To print the letters:SeV}lect the LETTER that you will want onscreen, after putting the cursor whereyou want the letter, then you use yourjoysticV}k! I'm sure there's lots more to thisprogram, but this is all I could comeup with. If you know of more that itcV}an do, PLEASE be good enough to writeme a short note c/o OL' HACKERS,3376 Ocean Harbor Dr., Oceanside, NY11572.I and theV} OL' HACKERS would be very grateful.TTTHHHAAATTTSSS AAAAALLLL FFFFFOOOKKKSSS V}*************** END ******************TTTHHHAAATTTSSS AAAAALLLL FFFFFOOOKKKSSS T&