6-@5!@56- @6-@"!@"6-@ # "-(>:, 6-#$F:,"@('   A7 More screen setup2@-#( A:ARRANGE2( B:FLIP L/R(C:CLEAR( D:CHR DEMO%( E:ERASE LINES%( F:COPY FROM3( G:DISK MENU%( H:OVERLAY CHR3( I:INVERSE'( J:TOGGLE A4/0'( K:STORE LINES4( L:LOAD FONT#( M:MASK BLUE4( N:MASK GREEN;22Subroutines to move players on or off screen<' F:,$A'$A- F:,"$A@*-$i" F:,"-@"(ROM j" F:,"-@"(USERk& -(RAM:-&(LINE:l$nAAoF:%@#,"8,pF:%@#,"s$;;Enter character into memory and into a DATA statement32$@P%@P#- A9E36-B   .(SELECT TARGET CHARACTER82B A7 ( Computing.../ -68,-8,#68,-8,/68,-8,  AG6-G 6-$-'68%,-F:$%%,8$%%8%,C68%,-G  # -68,-8,  # hR@!@@5--@O(7<A0,7A3<A6,R$Option R, restory memory& ( RESTORE? )"&  6-6-?:C:,<$,.6. D1:CHRFILE  .Clear the grid./Print character bit maps0 AG+2? -'68,-F:$%$@%&,08,"?68,-A#4 5 "6-A#:$ -$(%A DATA >:,?2 -(>:8,, $('(2(G.4425D -AB&IABN 6-%S Ai@$ -6 68,-8&,$ # -68,-8,  # 11String entry routine in Option V, animation8 6-6-6."6-@.6-A8 AH!%@%!%1(1(&Enter characters for animation frames:g@!@@5'-I(7<A0,7A3<A6,U@g@@9 6-@4 / -/(Enter character for frame #   -( )"AUAF` "6-' "A&6-&  6-("A&6.7<,(AFE"A&*"AF  67<,.>:,% 6-%!@5$* AF 4 *$9; -+(Load character screen? (Y/N)2)8;$>T 6-6-(/(Which screen? (1, 2, 3)6)T!@Q) @IAF`C 6-H$[00Convert ASCII to internal. Byte is in CH.\@$a$*@!6-&@2$$f *6-%$k$1  + 16-F:A`,%F:Aa,$- %%%A0!-A?AA!'-?BBA$# AH$! ( ERASE LINES? !))  8'  + -'6-A9$(-@( 6-%$ :((POKE 842,N12:G.4930= -AB&B (} ((D %A AI!G 6- 33Check for escape with disk menu delete option 6-F:,"AQ "@()(' $OSetup for CIO callP6-AdR# %%%#%U$33Toggle character window from Gr. 0 to Antic 4F:%@#,AS N-@#@(%# ,8,;A8,JA 8,N W -@#@(%%) ;A@@MA ASW ) -"$%A%&8,& )${Move players off screen|4 -B2H%-B2R%1 4$))Check keypress and branch to option""@eA("Option A""@fA"Option B6+"@g)"@`)"A%A6Option C""@iAI"Option E5"@p6-F:,$ 6-* A35Option F."@q6- # Au.Option G5"@r6-F:,$ 6-* A35Otion H""@sA "Option I""@tAS"Option J""@uA`"Option K""@vAW"Option L""@wA2"Option M""@xA0"Option N&"@y)"A&Option O""@A$"Option P""@AxP"Option Q""@AC"Option R""@Ap"Option S""@A"Option T""@AE"Option U*"@6- Ai*Option V""@A!"Option W8"@)")"@#6-- A@8Option X""@hAr"Option D""@EA"Option ""@aA"Option  "6-6-$"@C A$Option ""@BA"Option ""@'At"Option ""@cAA"Option ? ACOption L, load fontD Ab6-I (LOAD FILENAME: X  " ]B:, AW5bE-B:,&B:,&%7<%,4/B('.6-;6.7<&,E AW5d g A9h"AW9iB A9 ,(NOT SAVED, LOAD FONT?3)9>B j A9(>:,k" 6-"-)" l 6.= Ab AR%=6-?:C:hhhLV,<$@,h,h,h,INV *,L,V,INV d  AT A9 ''Clear top line and position there* -!6-?:C: h(X`,,'-*$E6-F:A`,%F:Aa,$-%A0?BBAB(E($KKh,INV ),CTL @,INV SPACE,(,INV CTL H,INV CTL Q,X,INV P,INV CTL ;,CTL .  **Warn user he is almost out of memoryoSave lines routinep?6-A6- AH%6-+6-9%@?t( SELECT STORAGE SYNTAXvH@(-(H(| 1. DATA (BASIC) |w9(| 2. .BYTE (ASM/ED) |9(| 3. .DA (SYNASM) |x(| 4. ACTION! SYNTAX |z0(!($(0@4<@@9!@$(*<( Selection?8 )6-&@H8+ )!,*%@HA`%@H" % " (( DATA MODE.% A`0& " (( .BYTE MODE.& A``$ " (( .DA MODE.$ Aa3 " ()(ACTION! BYTE ARRAY MODE.3 Aa0 A` AaP AgD (WRITE INDEX FLAG? (Y/N)')1#A8(>:,DA"( DATA ) "6-@:7<,,#"A#)6- "(,+ -6-@:7<,,%"A#+6-3(, !6-@:7<,,-"A#36- ( 6-% A`5.BYTE syntax AaP #A A`? 6-%(OUTPUT AS TEXT STRING?,)3(>:,9"?6-;"( .BYTE $ A`*";(>:@4,+ -6-@:7<,,%"A#+6-9 "(, '6-@:7<,,3"A#96-< "(>:, *6-@:7<,,6"A#<6- "(" ""(>:,>:@4, 6-% A`e Ag AaP #A Aa S 6. ( TABULATE? #)*(>:,6AB"@S6. ""(.DA " A`+ -6-@:7<,,%"A#+6-7(#, %6-@:7<,,1"A#76-(# 6-% Aa Ag 6- AaP AaI=($(WRITE INDEX FLAG? (Y/N) +)5#A=(>:,+('(ENTER BYTE ARRAY IDENTIFIER:+ 6-$A "6-$$$( BYTE ARRAY ()=["(  AaH) "6-@:7<,,#"A#)6- "( + -6-@:7<,,%"A#+6-3(  !6-@:7<,,-"A#36- ( Aa8 (] Ag;(( FILENAME:  $ AaS*;B:,AaS%A%Z(=(1FILE ALREADY EXISTS. OK TO OVERWRITE? D)L(>:,ZA` /A Ab)/  " $ 0 AaU(,(STARTING LINE NUMBER: 0' Aa`#(LINE INCREMENT: '$7##Trap errors and print message8 Ab" =! 6-F:,!B5F:,"Ap+(FILE  NOT FOUND5 AbpG3F:,"A`)(DRIVE NUMBER ERROR3 AbpL*F:,"Ab ( DISK FULL* AbpQ2F:,"Ag((FILE  LOCKED2 AbpV4F:,"Ah*(DISK DIRECTORY FULL4 Abp[;F:,"Ae1(ILLEGAL FILENAME CHARACTER; Abp`6F:,"A8,(DEVICE NOT RESPONDING6 Abpe5F:,"Ad+(FILE NUMBER MISMATCH5 Abpo(ERROR F:,~<Au -@0! <Wait if not at disk menu A9 $;;Put updated image on the grid, and in demo charactersS -!6-?:C:,<8,<8,,8$%A%&8,S%Ah%@%8,   $c""Setup players and charactersd #Ae6- iAAx(-B:,$A5%@:7<,,( y   3AF:A,&)6-F:A,/3+? AF:A,&@36-+F:A,%,7+?6-$?-%A%A!% 3BBy'?A#'B2WB2X'B2w -68,- ;+-%A@%@B%A@%@w7AU; ;+-%A%@B%A%@w7@; ,6-?:C:,<$,,Copy the character set$ -68,-F:8,, +Display file section in K,@* (} AgP%*%@JO-@ ( #(B(Press any key to continue.I)O(}TAg0Y ^/( ($(Press any key to exit.+)/  6.6-0 *(ENTER CHARACTERS, PRESS 06- )67<,.>:, 6-%"@' "AUAi5!A'6-&A(7*@1%6-@-6-%7 Ai%7*@c6-@ -6-&@(7 Ai%7*@6-@!-6-&@`7 Ai%3@*A'%6-@"36-&@  -(>:%A(, AiI 6- 7(%Please wait. (Screen will blank out).E-AI 6-@:7<,, AD  B:,&6-% Ai7! WSave fontX   6-\ ^ (SAVE? () _  "6.` 6.aB:,*ApbE-B:,&B:,&%7<%,4/B+6-86.7<&,;'E Apd   gAp"iC Ap *(ENTER SAVE ADDRESS:.8 A&C6-P:',j6-P:+'&P:',,$,nE 6- A9!7<,0C:+ Ap'0;E As3  6-' AR+ 3%x5 "***%*,*5*%6-?:C:hhhLV,<$, A9 88Initialize number variables. This saves much RAM.6-@6-%6-%'6-%/6-%;6-C6-%K6-%W6-@c6-@o6-@{6-A6-AY6-B2y6-Ad'6-AV36-A?6-@K6-AVW6-AU_6-%k6-Aw6-AX6-@6-@W6-@6-AR'6-Ax36-@?6-AUK6-@DW6-A$6-Ad6-%6-%+6-@d76-@C6-A@O6-@'[6-Adg6-@s6-A@6-@2'6-AB6-A1'6-Ab$Option D, demo characters ! AU+! A9!? 0-6-F:A`,%F:Aa,$36-?AU"3AAQ'A A3@%/ -%% %0/%%'Q-%%@ 3%@"A0EBBAKQ*9((7@8<A,'@9@@5+( ( ((,E( (-#A%8,' 3@E@@9-%@4 B"%. "/ "%0AUF:,"6-2 F:,"6-3F:,"Ar4 )5+"@I-%%!% +6+"@P-%%!% +7 " 8"Arp9@Ar`:H68,-@@!68,-A068,-AH?68,-@pH68,-; -A%8, \  Arf+ -+(ENTER COLOR REGISTER: g* )6-&@H* )!ArhG Ar-/(ENTER COLOR VALUE: 3G!@Arrj; -#(ENTER INTENSITY: ';!@Artn 068,-$% -( Ar!!Option J, move line pointer F:,"  F:," KDisk menu.LM+AA+AA/ 5A6-Au M( M NF(,(! *** DISK UTILITIES MENU ***/(F(A. DISK DIRECTORYOC( B. EXIT MENU,(D. DELETE FILE(S)C(E. RENAME FILE(S)QY(F. LOCK FILE(S)/(G. UNLOCK FILE(S)E(H. WRITE DOS.SYSY(I. FORMAT DISKR(W. WRITE VERIFY: S*F:A,@ (ON * Au T F:A,"@ (OFFUC  Ab(9(SELECT ITEM OR FOR MENU>CV. Au)6-."AUAuXE"@p6-(( FILE TO LOCK:, 2E@5Y"Au ["@hAv\"@Av`]"@eAv ^"@rAw`aG"@q6-*(FILE TO UNLOCK:. 4G@6b"Au c"@sAvPd"@f)" e$@i ( NO SUCH ITEM$ f)%(RENAME: ENTER OLD, NEW FILES) g4Au h @2 Au  F:,$ 6-F:, "6- "6- Au8 (ENTER DELETE FILENAME: $ 8( "Au   E(?(TYPE >:@4,Y>:@4, TO DELETE FILE E6- (? AQ(" 4Y "@3 Au ! Aw !6-((9-B:,& 7<%,4/P&6-+9P:  Au  ("(F:,"Av(% )"% Au  Av"'( FORMAT DISK # AQ')?6-&@H )!(5(NEED D1 THROUGH D4? Au  *((S(?(TYPE >:@4,Y>:@4, TO FORMAT DISK CS0YAu C6.D :*.*&67<,.>:%@H,9ATC AvR4F:A,"@*A@4 Au4F:A,@*A@4 Au( FILE SEARCH: '  "6.D1:*.*$6.*.*'$($P2!(WRITE DOS.SYS TO DRIVE #+ AQ2)R?6-&@H )!(5(NEED D1 THROUGH D4? Au U(>:%@H,ZWC(TYPE >:@4,Y>:@4, TO WRITE DOS TO DRIVE GW0YAu dI6. D :DOS.SYS*67<,.>:%@H,/:?I Awpx@ B7t$@Disable break key. This is optional.3 AX,(CHARACTER FOR CONVERSION:3)\ 6- AG AX\( ATASCII =  (>:,) ; INTERNAL =  (>:,) )AxU % SAVESCR.1NT>:,). )AD*.*FNTFNT  @@