Home » Personal collection » Acorn ADFS disks » Electron_User_Group » EUG_16.ADF » MENU

MENU

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Personal collection » Acorn ADFS disks » Electron_User_Group » EUG_16.ADF
Filename: MENU
Read OK:
File size: 06EC bytes
Load address: FFFF1D00
Exec address: FFFF8023
File contents
   10REM EUG MENU ADAPTED FROM PROGS BY R. DIAMOND
   20HIMEM=&2500
   30PROCassem
   40VDU22,4:VDU19,0,4;0;23;8202;0;0;0;
   50MOVE12,12:DRAW1267,12:DRAW1267,1011:DRAW12,1011:DRAW12,12
   60PRINTTAB(10,3)" EUG16 MAIN MENU"
   70PRINTTAB(10,5)"~~~~~~~~~~~~~~~~~" 
   80VDU28,10,29,35,7 
   90COLOUR1:PRINT"PLEASE SELECT -":COLOUR3
  100PRINT'"<A>  E.U.G. EDITORIAL"
  110PRINT'"<B>  FEATURES"
  120PRINT'"<C>  HELP WANTED"
  130PRINT'"<D>  LETTERS"
  140PRINT'"<E>  DIAGRAM"
  150PRINT'"<F>  PROGRAMS"
  160VDU26
  170*FX21,0
  180REPEAT:a%=INSTR("ABCDEFGHIJ",GET$):UNTILa%
  190IFa%=1THENf$="EDIT":g$="":h$="":PROCtext:GOTO40
  200IFa%=2THENf$="":g$="":OSCLI"DIR FEATURES":h$="MENU":PROCtext:GOTO40
  210IFa%=3THENf$="":g$="":OSCLI"DIR HELP":h$="MENU":PROCtext:GOTO40
  220IFa%=4THENf$="":g$="":OSCLI"DIR LETTERS":h$="MENU":PROCtext:GOTO40
  230IFa%=5THENf$="":g$="":OSCLI"DIR DIAGRAM":h$="MENU":PROCtext:GOTO40
  240IFa%=6THENf$="":g$="":OSCLI"DIR PROGS":h$="MENU":PROCtext:GOTO40
  250IFINKEY-102GOTO40ELSEEND
  260END
  270DEFPROCtext
  275IF LEN(f$)=0 THEN GOTO 425
  280CALLclear:VDU22,6:OSCLI"LOAD "+f$+" 2500"  
  290VDU22,3,14:PRINT''"SHIFT TO SCROLL"''
  300CALLprint
  310IF LEN(g$)=0 THEN GOTO 360
  320PRINT"PRESS SPACE TO CONTINUE":key=GET 
  330CALLclear:VDU22,6:OSCLI"LOAD "+g$+" 2500"
  340VDU22,3,14:PRINT''"SHIFT TO SCROLL"'' 
  350CALLprint    
  360IF LEN(h$)=0 THEN PRINT;"<P> TO PRINT TEXT, <M> FOR MAIN MENU":ELSE PRINT;"<P> TO PRINT TEXT, <M> FOR MAIN MENU <R> TO RUN PROG"
  370REPEAT
  380a$=GET$
  390IFa$="M"THENGOTO40
  400IFa$="P"THENVDU15,0,2:CALLprint:VDU3:GOTO40
  410IFa$="R"THENCHAIN h$
  420UNTILFALSE
  425CHAIN h$
  430ENDPROC
  440DEFPROCassem
  450FORi=0TO2STEP2
  460P%=&900
  470[OPTi
  480.print
  490LDA#0:STA&70
  500LDA#&25:STA&71
  510.L1 LDY#0
  520.L2 LDA(&70),Y
  530CMP#0:BEQrts
  540CMP#&0D:BEQprt
  550CMP#&20:BCCspc
  560CMP#&7F:BCSspc
  570.prt JSR&FFE3
  580.inc INY:BNE L2
  590INC&71:JMP L1
  600.spc LDA#&20
  610JSR&FFE3:JMPinc
  620.rts RTS
  630.clear
  640LDA#0:STA&72
  650LDA#&25:STA&73
  660.L3 LDY#0
  670.L4 LDA#0
  680STA(&72),Y
  690INY:BNE L4
  700INC&73
  710LDA&73
  720CMP#&40
  730BNE L3
  740RTS
  750]
  760NEXT
  770ENDPROC
  780REM 230IFINKEY-102GOTO40ELSEEND             240END      

/� EUG MENU ADAPTED FROM PROGS BY R. DIAMOND
�=&2500

�assem
("�22,4:�19,0,4;0;23;8202;0;0;0;
2.�12,12:�1267,12:�1267,1011:�12,1011:�12,12
<�10,3)" EUG16 MAIN MENU"
F�10,5)"~~~~~~~~~~~~~~~~~" 
P�28,10,29,35,7 
Z�1:�"PLEASE SELECT -":�3
d�'"<A>  E.U.G. EDITORIAL"
n�'"<B>  FEATURES"
x�'"<C>  HELP WANTED"
��'"<D>  LETTERS"
��'"<E>  DIAGRAM"
��'"<F>  PROGRAMS"
��26
�*FX21,0
��:a%=�"ABCDEFGHIJ",�):�a%
�+�a%=1�f$="EDIT":g$="":h$="":�text:�Th@
�;�a%=2�f$="":g$="":�"DIR FEATURES":h$="MENU":�text:�Th@
�7�a%=3�f$="":g$="":�"DIR HELP":h$="MENU":�text:�Th@
�:�a%=4�f$="":g$="":�"DIR LETTERS":h$="MENU":�text:�Th@
�:�a%=5�f$="":g$="":�"DIR DIAGRAM":h$="MENU":�text:�Th@
�8�a%=6�f$="":g$="":�"DIR PROGS":h$="MENU":�text:�Th@
��-102�Th@��
�

��text
� �(f$)=0 � � �tiA
&�clear:�22,6:�"LOAD "+f$+" 2500"  
"#�22,3,14:�''"SHIFT TO SCROLL"''
,
�print
6� �(g$)=0 � � �DhA
@%�"PRESS SPACE TO CONTINUE":key=� 
J$�clear:�22,6:�"LOAD "+g$+" 2500"
T$�22,3,14:�''"SHIFT TO SCROLL"'' 
^�print    
hs� �(h$)=0 � �;"<P> TO PRINT TEXT, <M> FOR MAIN MENU":� �;"<P> TO PRINT TEXT, <M> FOR MAIN MENU <R> TO RUN PROG"
r�
|a$=�
��a$="M"��Th@
�#�a$="P"��15,0,2:�print:�3:�Th@
��a$="R"�� h$
���
�� h$
��
���assem
��i=0�2�2
�P%=&900
�	[OPTi
�
.print
�LDA#0:STA&70
�LDA#&25:STA&71
�
.L1 LDY#0
.L2 LDA(&70),Y
CMP#0:BEQrts
CMP#&0D:BEQprt
&CMP#&20:BCCspc
0CMP#&7F:BCSspc
:.prt JSR&FFE3
D.inc INY:BNE L2
NINC&71:JMP L1
X.spc LDA#&20
bJSR&FFE3:JMPinc
l.rts RTS
v
.clear
�LDA#0:STA&72
�LDA#&25:STA&73
�
.L3 LDY#0
�
.L4 LDA#0
�STA(&72),Y
�INY:BNE L4
�
INC&73
�
LDA&73
�CMP#&40
�
BNE L3
�RTS
�]
��
�
:� 230IFINKEY-102GOTO40ELSEEND             240END      
�
00000000  0d 00 0a 2f f4 20 45 55  47 20 4d 45 4e 55 20 41  |.../. EUG MENU A|
00000010  44 41 50 54 45 44 20 46  52 4f 4d 20 50 52 4f 47  |DAPTED FROM PROG|
00000020  53 20 42 59 20 52 2e 20  44 49 41 4d 4f 4e 44 0d  |S BY R. DIAMOND.|
00000030  00 14 0b d3 3d 26 32 35  30 30 0d 00 1e 0a f2 61  |....=&2500.....a|
00000040  73 73 65 6d 0d 00 28 22  ef 32 32 2c 34 3a ef 31  |ssem..(".22,4:.1|
00000050  39 2c 30 2c 34 3b 30 3b  32 33 3b 38 32 30 32 3b  |9,0,4;0;23;8202;|
00000060  30 3b 30 3b 30 3b 0d 00  32 2e ec 31 32 2c 31 32  |0;0;0;..2..12,12|
00000070  3a df 31 32 36 37 2c 31  32 3a df 31 32 36 37 2c  |:.1267,12:.1267,|
00000080  31 30 31 31 3a df 31 32  2c 31 30 31 31 3a df 31  |1011:.12,1011:.1|
00000090  32 2c 31 32 0d 00 3c 1d  f1 8a 31 30 2c 33 29 22  |2,12..<...10,3)"|
000000a0  20 45 55 47 31 36 20 4d  41 49 4e 20 4d 45 4e 55  | EUG16 MAIN MENU|
000000b0  22 0d 00 46 1f f1 8a 31  30 2c 35 29 22 7e 7e 7e  |"..F...10,5)"~~~|
000000c0  7e 7e 7e 7e 7e 7e 7e 7e  7e 7e 7e 7e 7e 7e 22 20  |~~~~~~~~~~~~~~" |
000000d0  0d 00 50 13 ef 32 38 2c  31 30 2c 32 39 2c 33 35  |..P..28,10,29,35|
000000e0  2c 37 20 0d 00 5a 1c fb  31 3a f1 22 50 4c 45 41  |,7 ..Z..1:."PLEA|
000000f0  53 45 20 53 45 4c 45 43  54 20 2d 22 3a fb 33 0d  |SE SELECT -":.3.|
00000100  00 64 1d f1 27 22 3c 41  3e 20 20 45 2e 55 2e 47  |.d..'"<A>  E.U.G|
00000110  2e 20 45 44 49 54 4f 52  49 41 4c 22 0d 00 6e 15  |. EDITORIAL"..n.|
00000120  f1 27 22 3c 42 3e 20 20  46 45 41 54 55 52 45 53  |.'"<B>  FEATURES|
00000130  22 0d 00 78 18 f1 27 22  3c 43 3e 20 20 48 45 4c  |"..x..'"<C>  HEL|
00000140  50 20 57 41 4e 54 45 44  22 0d 00 82 14 f1 27 22  |P WANTED".....'"|
00000150  3c 44 3e 20 20 4c 45 54  54 45 52 53 22 0d 00 8c  |<D>  LETTERS"...|
00000160  14 f1 27 22 3c 45 3e 20  20 44 49 41 47 52 41 4d  |..'"<E>  DIAGRAM|
00000170  22 0d 00 96 15 f1 27 22  3c 46 3e 20 20 50 52 4f  |".....'"<F>  PRO|
00000180  47 52 41 4d 53 22 0d 00  a0 07 ef 32 36 0d 00 aa  |GRAMS".....26...|
00000190  0b 2a 46 58 32 31 2c 30  0d 00 b4 1d f5 3a 61 25  |.*FX21,0.....:a%|
000001a0  3d a7 22 41 42 43 44 45  46 47 48 49 4a 22 2c be  |=."ABCDEFGHIJ",.|
000001b0  29 3a fd 61 25 0d 00 be  2b e7 61 25 3d 31 8c 66  |):.a%...+.a%=1.f|
000001c0  24 3d 22 45 44 49 54 22  3a 67 24 3d 22 22 3a 68  |$="EDIT":g$="":h|
000001d0  24 3d 22 22 3a f2 74 65  78 74 3a e5 8d 54 68 40  |$="":.text:..Th@|
000001e0  0d 00 c8 3b e7 61 25 3d  32 8c 66 24 3d 22 22 3a  |...;.a%=2.f$="":|
000001f0  67 24 3d 22 22 3a ff 22  44 49 52 20 46 45 41 54  |g$="":."DIR FEAT|
00000200  55 52 45 53 22 3a 68 24  3d 22 4d 45 4e 55 22 3a  |URES":h$="MENU":|
00000210  f2 74 65 78 74 3a e5 8d  54 68 40 0d 00 d2 37 e7  |.text:..Th@...7.|
00000220  61 25 3d 33 8c 66 24 3d  22 22 3a 67 24 3d 22 22  |a%=3.f$="":g$=""|
00000230  3a ff 22 44 49 52 20 48  45 4c 50 22 3a 68 24 3d  |:."DIR HELP":h$=|
00000240  22 4d 45 4e 55 22 3a f2  74 65 78 74 3a e5 8d 54  |"MENU":.text:..T|
00000250  68 40 0d 00 dc 3a e7 61  25 3d 34 8c 66 24 3d 22  |h@...:.a%=4.f$="|
00000260  22 3a 67 24 3d 22 22 3a  ff 22 44 49 52 20 4c 45  |":g$="":."DIR LE|
00000270  54 54 45 52 53 22 3a 68  24 3d 22 4d 45 4e 55 22  |TTERS":h$="MENU"|
00000280  3a f2 74 65 78 74 3a e5  8d 54 68 40 0d 00 e6 3a  |:.text:..Th@...:|
00000290  e7 61 25 3d 35 8c 66 24  3d 22 22 3a 67 24 3d 22  |.a%=5.f$="":g$="|
000002a0  22 3a ff 22 44 49 52 20  44 49 41 47 52 41 4d 22  |":."DIR DIAGRAM"|
000002b0  3a 68 24 3d 22 4d 45 4e  55 22 3a f2 74 65 78 74  |:h$="MENU":.text|
000002c0  3a e5 8d 54 68 40 0d 00  f0 38 e7 61 25 3d 36 8c  |:..Th@...8.a%=6.|
000002d0  66 24 3d 22 22 3a 67 24  3d 22 22 3a ff 22 44 49  |f$="":g$="":."DI|
000002e0  52 20 50 52 4f 47 53 22  3a 68 24 3d 22 4d 45 4e  |R PROGS":h$="MEN|
000002f0  55 22 3a f2 74 65 78 74  3a e5 8d 54 68 40 0d 00  |U":.text:..Th@..|
00000300  fa 11 e7 a6 2d 31 30 32  e5 8d 54 68 40 8b e0 0d  |....-102..Th@...|
00000310  01 04 05 e0 0d 01 0e 0a  dd f2 74 65 78 74 0d 01  |..........text..|
00000320  13 16 e7 20 a9 28 66 24  29 3d 30 20 8c 20 e5 20  |... .(f$)=0 . . |
00000330  8d 74 69 41 0d 01 18 26  d6 63 6c 65 61 72 3a ef  |.tiA...&.clear:.|
00000340  32 32 2c 36 3a ff 22 4c  4f 41 44 20 22 2b 66 24  |22,6:."LOAD "+f$|
00000350  2b 22 20 32 35 30 30 22  20 20 0d 01 22 23 ef 32  |+" 2500"  .."#.2|
00000360  32 2c 33 2c 31 34 3a f1  27 27 22 53 48 49 46 54  |2,3,14:.''"SHIFT|
00000370  20 54 4f 20 53 43 52 4f  4c 4c 22 27 27 0d 01 2c  | TO SCROLL"''..,|
00000380  0a d6 70 72 69 6e 74 0d  01 36 16 e7 20 a9 28 67  |..print..6.. .(g|
00000390  24 29 3d 30 20 8c 20 e5  20 8d 44 68 41 0d 01 40  |$)=0 . . .DhA..@|
000003a0  25 f1 22 50 52 45 53 53  20 53 50 41 43 45 20 54  |%."PRESS SPACE T|
000003b0  4f 20 43 4f 4e 54 49 4e  55 45 22 3a 6b 65 79 3d  |O CONTINUE":key=|
000003c0  a5 20 0d 01 4a 24 d6 63  6c 65 61 72 3a ef 32 32  |. ..J$.clear:.22|
000003d0  2c 36 3a ff 22 4c 4f 41  44 20 22 2b 67 24 2b 22  |,6:."LOAD "+g$+"|
000003e0  20 32 35 30 30 22 0d 01  54 24 ef 32 32 2c 33 2c  | 2500"..T$.22,3,|
000003f0  31 34 3a f1 27 27 22 53  48 49 46 54 20 54 4f 20  |14:.''"SHIFT TO |
00000400  53 43 52 4f 4c 4c 22 27  27 20 0d 01 5e 0e d6 70  |SCROLL"'' ..^..p|
00000410  72 69 6e 74 20 20 20 20  0d 01 68 73 e7 20 a9 28  |rint    ..hs. .(|
00000420  68 24 29 3d 30 20 8c 20  f1 3b 22 3c 50 3e 20 54  |h$)=0 . .;"<P> T|
00000430  4f 20 50 52 49 4e 54 20  54 45 58 54 2c 20 3c 4d  |O PRINT TEXT, <M|
00000440  3e 20 46 4f 52 20 4d 41  49 4e 20 4d 45 4e 55 22  |> FOR MAIN MENU"|
00000450  3a 8b 20 f1 3b 22 3c 50  3e 20 54 4f 20 50 52 49  |:. .;"<P> TO PRI|
00000460  4e 54 20 54 45 58 54 2c  20 3c 4d 3e 20 46 4f 52  |NT TEXT, <M> FOR|
00000470  20 4d 41 49 4e 20 4d 45  4e 55 20 3c 52 3e 20 54  | MAIN MENU <R> T|
00000480  4f 20 52 55 4e 20 50 52  4f 47 22 0d 01 72 05 f5  |O RUN PROG"..r..|
00000490  0d 01 7c 08 61 24 3d be  0d 01 86 11 e7 61 24 3d  |..|.a$=......a$=|
000004a0  22 4d 22 8c e5 8d 54 68  40 0d 01 90 23 e7 61 24  |"M"...Th@...#.a$|
000004b0  3d 22 50 22 8c ef 31 35  2c 30 2c 32 3a d6 70 72  |="P"..15,0,2:.pr|
000004c0  69 6e 74 3a ef 33 3a e5  8d 54 68 40 0d 01 9a 10  |int:.3:..Th@....|
000004d0  e7 61 24 3d 22 52 22 8c  d7 20 68 24 0d 01 a4 06  |.a$="R".. h$....|
000004e0  fd a3 0d 01 a9 08 d7 20  68 24 0d 01 ae 05 e1 0d  |....... h$......|
000004f0  01 b8 0b dd f2 61 73 73  65 6d 0d 01 c2 0c e3 69  |.....assem.....i|
00000500  3d 30 b8 32 88 32 0d 01  cc 0b 50 25 3d 26 39 30  |=0.2.2....P%=&90|
00000510  30 0d 01 d6 09 5b 4f 50  54 69 0d 01 e0 0a 2e 70  |0....[OPTi.....p|
00000520  72 69 6e 74 0d 01 ea 10  4c 44 41 23 30 3a 53 54  |rint....LDA#0:ST|
00000530  41 26 37 30 0d 01 f4 12  4c 44 41 23 26 32 35 3a  |A&70....LDA#&25:|
00000540  53 54 41 26 37 31 0d 01  fe 0d 2e 4c 31 20 4c 44  |STA&71.....L1 LD|
00000550  59 23 30 0d 02 08 12 2e  4c 32 20 4c 44 41 28 26  |Y#0.....L2 LDA(&|
00000560  37 30 29 2c 59 0d 02 12  10 43 4d 50 23 30 3a 42  |70),Y....CMP#0:B|
00000570  45 51 72 74 73 0d 02 1c  12 43 4d 50 23 26 30 44  |EQrts....CMP#&0D|
00000580  3a 42 45 51 70 72 74 0d  02 26 12 43 4d 50 23 26  |:BEQprt..&.CMP#&|
00000590  32 30 3a 42 43 43 73 70  63 0d 02 30 12 43 4d 50  |20:BCCspc..0.CMP|
000005a0  23 26 37 46 3a 42 43 53  73 70 63 0d 02 3a 11 2e  |#&7F:BCSspc..:..|
000005b0  70 72 74 20 4a 53 52 26  46 46 45 33 0d 02 44 13  |prt JSR&FFE3..D.|
000005c0  2e 69 6e 63 20 49 4e 59  3a 42 4e 45 20 4c 32 0d  |.inc INY:BNE L2.|
000005d0  02 4e 11 49 4e 43 26 37  31 3a 4a 4d 50 20 4c 31  |.N.INC&71:JMP L1|
000005e0  0d 02 58 10 2e 73 70 63  20 4c 44 41 23 26 32 30  |..X..spc LDA#&20|
000005f0  0d 02 62 13 4a 53 52 26  46 46 45 33 3a 4a 4d 50  |..b.JSR&FFE3:JMP|
00000600  69 6e 63 0d 02 6c 0c 2e  72 74 73 20 52 54 53 0d  |inc..l..rts RTS.|
00000610  02 76 0a 2e 63 6c 65 61  72 0d 02 80 10 4c 44 41  |.v..clear....LDA|
00000620  23 30 3a 53 54 41 26 37  32 0d 02 8a 12 4c 44 41  |#0:STA&72....LDA|
00000630  23 26 32 35 3a 53 54 41  26 37 33 0d 02 94 0d 2e  |#&25:STA&73.....|
00000640  4c 33 20 4c 44 59 23 30  0d 02 9e 0d 2e 4c 34 20  |L3 LDY#0.....L4 |
00000650  4c 44 41 23 30 0d 02 a8  0e 53 54 41 28 26 37 32  |LDA#0....STA(&72|
00000660  29 2c 59 0d 02 b2 0e 49  4e 59 3a 42 4e 45 20 4c  |),Y....INY:BNE L|
00000670  34 0d 02 bc 0a 49 4e 43  26 37 33 0d 02 c6 0a 4c  |4....INC&73....L|
00000680  44 41 26 37 33 0d 02 d0  0b 43 4d 50 23 26 34 30  |DA&73....CMP#&40|
00000690  0d 02 da 0a 42 4e 45 20  4c 33 0d 02 e4 07 52 54  |....BNE L3....RT|
000006a0  53 0d 02 ee 05 5d 0d 02  f8 05 ed 0d 03 02 05 e1  |S....]..........|
000006b0  0d 03 0c 3a f4 20 32 33  30 49 46 49 4e 4b 45 59  |...:. 230IFINKEY|
000006c0  2d 31 30 32 47 4f 54 4f  34 30 45 4c 53 45 45 4e  |-102GOTO40ELSEEN|
000006d0  44 20 20 20 20 20 20 20  20 20 20 20 20 20 32 34  |D             24|
000006e0  30 45 4e 44 20 20 20 20  20 20 0d ff              |0END      ..|
000006ec
MENU.m0
MENU.m1
MENU.m2
MENU.m4
MENU.m5