Home » Archimedes archive » Acorn User » AU 1997-03 A.adf » !TwinWorld/SetKeys
!TwinWorld/SetKeys
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 » Archimedes archive » Acorn User » AU 1997-03 A.adf |
Filename: | !TwinWorld/SetKeys |
Read OK: | ✔ |
File size: | 0BFC bytes |
Load address: | FFFFFB47 |
Exec address: | 241F46D8 |
File contents
1REM >SetKeys 2REM Program by James Byrne (jbyrne@gol.com) 3REM V1.50 (28 October 1996) 4: 5CLS:OFF 6: 7ON ERROR PROCError:END 8DIM OldKeys% 11,NewKeys% 11 9OSCLI"Load <TwinWorld$Dir>.Keys "+STR$~OldKeys% 10: 11DIM KeyName$(11),KeyMap%(11),Key$(124),Bl% 8 12FOR K%=0 TO 10:READ NewKeys%?K%:NEXT 13FOR K%=1 TO 11:READ KeyName$(K%),KeyMap%(K%):NEXT 14FOR K%=3 TO 124:READ Key$(K%):NEXT 15SYS "OS_InstallKeyHandler",1 TO KbdID% 16IF KbdID%=2 THEN FOR I%=1 TO 4:READ K%,Key$(K%):NEXT 17!Bl%=256:Bl%!4=-1:SYS "OS_ReadVduVariables",Bl%,Bl%:W%=!Bl% 18: 19REPEAT 20 CLS:PROCCentre("Twin World Key Definitions") 21 PROCDisplayKeys 22 PROCCentreY(15,"Change keys ............ 1") 23 PROCCentreY(17,"Restore default keys ... 2") 24 PROCCentreY(19,"Exit ................... 3") 25 PROCCentreY(22,"Enter choice (1-3)") 26 REPEAT:Ch%=GET-48:UNTIL Ch%>0ANDCh%<4 27 CASE Ch% OF 28 WHEN 1:PROCDefineKeys 29 WHEN 2:PROCDefaultKeys 30 ENDCASE 31UNTIL Ch%=3 32: 33CLS:ON 34END 35: 36DEF PROCCentre(P$):PRINT TAB((W%-LEN(P$))/2)P$:ENDPROC 37DEF PROCCentreY(Y%,P$):PRINT TAB((W%-LEN(P$))/2,Y%)P$;:ENDPROC 38: 39DEF PROCDisplayKeys 40FOR K%=1 TO 11 41 PRINT TAB(W%/2-LEN(KeyName$(K%)),K%+1)KeyName$(K%);" - ";Key$(OldKeys%?KeyMap%(K%)-128) 42NEXT 43ENDPROC 44: 45DEF PROCDefineKeys 46SYS "OS_Byte",200,1 TO ,OldFX200% 47CLS:PROCCentre("Choose keys") 48K%=1 49REPEAT 50 PROCCentreY(15,"Press key for "+KeyName$(K%)) 51 REPEAT:SYS"OS_Byte",121,3 TO ,Key%:UNTIL Key%=&FF 52 REPEAT:SYS"OS_Byte",121,3 TO ,Key%:UNTIL Key%<>&FF 53 J%=1 54 WHILE J%<K% AND NewKeys%?(KeyMap%(J%))<>Key%+128:J%+=1:ENDWHILE 55 IF J%=K% THEN 56 PRINT TAB(0,17)SPC(W%); 57 PRINT TAB(W%/2-LEN(KeyName$(K%)),K%+1)KeyName$(K%);" - ";Key$(Key%) 58 NewKeys%?(KeyMap%(K%))=Key%+128 59 K%+=1 60 ELSE 61 VDU7:PROCCentreY(17,"That key has already been used.") 62 ENDIF 63 PRINT TAB(0,15)SPC(W%); 64UNTIL K%=12 65SYS"OS_Byte",200,OldFX200% 66PROCSaveKeys 67ENDPROC 68: 69DEF PROCDefaultKeys 70CLS:PROCCentre("Default keys") 71RESTORE 72FOR K%=0 TO 10:READ NewKeys%?K%:NEXT 73PRINT 74FOR K%=1 TO 11 75 PRINT TAB(W%/2-LEN(KeyName$(K%)))KeyName$(K%);" - ";Key$(NewKeys%?KeyMap%(K%)-128) 76NEXT 77PROCSaveKeys 78ENDPROC 79: 80DEF PROCSaveKeys 81*FX21 82PROCCentreY(15,"Save these keys (Y/N)? ") 83REPEAT:YN$=GET$:UNTIL INSTR("YyNn",YN$):PRINT YN$ 84IF YN$="N" OR YN$="n" ENDPROC 85FOR K%=0 TO 10:OldKeys%?K%=NewKeys%?K%:NEXT 86OSCLI"Save <TwinWorld$Dir>.Keys "+STR$~OldKeys%+"+B" 87*Stamp <TwinWorld$Dir>.Keys 88ENDPROC 89: 90DEF PROCError 91CLS:IF ERR<>17 PRINT REPORT$ 92ENDPROC 93: 94DATA 84+128,55+128,89+128,112+128,98+128 95DATA 73+128,81+128,97+128,66+128,79+128,104+128 96: 97DATA Left,7,Right,8,Up,9,Down,10,Fire,5 98DATA Choose Bubble,4,Call Merchant,0,Pause,1 99DATA Lose a Life,3,End Game,2,Save Game,6 100: 101DATA Left Shift,Left Ctrl,Left Alt,Right Shift,Right Ctrl,Right Alt 102DATA Left mouse button,Centre mouse button,Right mouse button,,,, 103DATA Q,3,4,5,F4,8,F7,-,6,"�",Keypad 6,Keypad 7,F11,F12,F10,Scroll lock 104DATA Print,W,E,T,7,I,9,0,_,"�",Keypad 8,Keypad 9,Break,~,FALSE,Back space 105DATA 1,2,D,R,6,U,O,P,[,"�",Keypad +,Keypad -,Keypad Enter,Insert,Home 106DATA Page Up,Caps Lock,A,X,F,Y,J,K,@,;,Return,Keypad /,,Keypad . 107DATA Num Lock,Page Down,',,S,C,G,H,N,L,;,],Delete,Keypad #,Keypad *, 108DATA =,(extra),,Tab,Z,Space Bar,V,B,M,",",.,/,Copy,Keypad 0,Keypad 1 109DATA Keypad 3,,,,Escape,F1,F2,F3,F5,F6,F8,F9,\,"�",Keypad 4,Keypad 5 110DATA Keypad 2 111: 112DATA 45,`,94,\,105,End,120,#
� >SetKeys -� Program by James Byrne (jbyrne@gol.com) � V1.50 (28 October 1996) : �:� : � � �Error:� � OldKeys% 11,NewKeys% 11 ,�"Load <TwinWorld$Dir>.Keys "+�~OldKeys% : .� KeyName$(11),KeyMap%(11),Key$(124),Bl% 8 � K%=0 � 10:� NewKeys%?K%:� ,� K%=1 � 11:� KeyName$(K%),KeyMap%(K%):� � K%=3 � 124:� Key$(K%):� (ș "OS_InstallKeyHandler",1 � KbdID% +� KbdID%=2 � � I%=1 � 4:� K%,Key$(K%):� >!Bl%=256:Bl%!4=-1:ș "OS_ReadVduVariables",Bl%,Bl%:W%=!Bl% : � , �:�Centre("Twin World Key Definitions") �DisplayKeys . �CentreY(15,"Change keys ............ 1") . �CentreY(17,"Restore default keys ... 2") . �CentreY(19,"Exit ................... 3") & �CentreY(22,"Enter choice (1-3)") �:Ch%=�-48:� Ch%>0�Ch%<4 Ȏ Ch% � � 1:�DefineKeys � 2:�DefaultKeys � � Ch%=3 : !�:� "� #: $&� �Centre(P$):� �(W%-�(P$))/2)P$:� %.� �CentreY(Y%,P$):� �(W%-�(P$))/2,Y%)P$;:� &: '� �DisplayKeys (� K%=1 � 11 )S � �W%/2-�(KeyName$(K%)),K%+1)KeyName$(K%);" - ";Key$(OldKeys%?KeyMap%(K%)-128) *� +� ,: -� �DefineKeys .#ș "OS_Byte",200,1 � ,OldFX200% /�:�Centre("Choose keys") 0K%=1 1� 2/ �CentreY(15,"Press key for "+KeyName$(K%)) 3+ �:ș"OS_Byte",121,3 � ,Key%:� Key%=&FF 4, �:ș"OS_Byte",121,3 � ,Key%:� Key%<>&FF 5 J%=1 68 ȕ J%<K% � NewKeys%?(KeyMap%(J%))<>Key%+128:J%+=1:� 7 � J%=K% � 8 � �0,17)�(W%); 9@ � �W%/2-�(KeyName$(K%)),K%+1)KeyName$(K%);" - ";Key$(Key%) :% NewKeys%?(KeyMap%(K%))=Key%+128 ; K%+=1 < � =7 �7:�CentreY(17,"That key has already been used.") > � ? � �0,15)�(W%); @� K%=12 Aș"OS_Byte",200,OldFX200% B �SaveKeys C� D: E� �DefaultKeys F�:�Centre("Default keys") G� H� K%=0 � 10:� NewKeys%?K%:� I� J� K%=1 � 11 KN � �W%/2-�(KeyName$(K%)))KeyName$(K%);" - ";Key$(NewKeys%?KeyMap%(K%)-128) L� M �SaveKeys N� O: P� �SaveKeys Q *FX21 R*�CentreY(15,"Save these keys (Y/N)? ") S �:YN$=�:� �"YyNn",YN$):� YN$ T� YN$="N" � YN$="n" � U)� K%=0 � 10:OldKeys%?K%=NewKeys%?K%:� V1�"Save <TwinWorld$Dir>.Keys "+�~OldKeys%+"+B" W*Stamp <TwinWorld$Dir>.Keys X� Y: Z� �Error [�:� �<>17 � �$ \� ]: ^)� 84+128,55+128,89+128,112+128,98+128 _0� 73+128,81+128,97+128,66+128,79+128,104+128 `: a(� Left,7,Right,8,Up,9,Down,10,Fire,5 b-� Choose Bubble,4,Call Merchant,0,Pause,1 c*� Lose a Life,3,End Game,2,Save Game,6 d: eD� Left Shift,Left Ctrl,Left Alt,Right Shift,Right Ctrl,Right Alt fB� Left mouse button,Centre mouse button,Right mouse button,,,, gG� Q,3,4,5,F4,8,F7,-,6,"�",Keypad 6,Keypad 7,F11,F12,F10,Scroll lock hF� Print,W,E,T,7,I,9,0,_,"�",Keypad 8,Keypad 9,Break,~,�,Back space iF� 1,2,D,R,6,U,O,P,[,"�",Keypad +,Keypad -,Keypad Enter,Insert,Home jA� Page Up,Caps Lock,A,X,F,Y,J,K,@,;,Return,Keypad /,,Keypad . kE� Num Lock,Page Down,',,S,C,G,H,N,L,;,],Delete,Keypad #,Keypad *, lE� =,(extra),,Tab,Z,Space Bar,V,B,M,",",.,/,Copy,Keypad 0,Keypad 1 mE� Keypad 3,,,,Escape,F1,F2,F3,F5,F6,F8,F9,\,"�",Keypad 4,Keypad 5 n� Keypad 2 o: p� 45,`,94,\,105,End,120,# �
00000000 0d 00 01 0e f4 20 3e 53 65 74 4b 65 79 73 0d 00 |..... >SetKeys..| 00000010 02 2d f4 20 50 72 6f 67 72 61 6d 20 62 79 20 4a |.-. Program by J| 00000020 61 6d 65 73 20 42 79 72 6e 65 20 28 6a 62 79 72 |ames Byrne (jbyr| 00000030 6e 65 40 67 6f 6c 2e 63 6f 6d 29 0d 00 03 1d f4 |ne@gol.com).....| 00000040 20 56 31 2e 35 30 20 28 32 38 20 4f 63 74 6f 62 | V1.50 (28 Octob| 00000050 65 72 20 31 39 39 36 29 0d 00 04 05 3a 0d 00 05 |er 1996)....:...| 00000060 07 db 3a 87 0d 00 06 05 3a 0d 00 07 10 ee 20 85 |..:.....:..... .| 00000070 20 f2 45 72 72 6f 72 3a e0 0d 00 08 1d de 20 4f | .Error:...... O| 00000080 6c 64 4b 65 79 73 25 20 31 31 2c 4e 65 77 4b 65 |ldKeys% 11,NewKe| 00000090 79 73 25 20 31 31 0d 00 09 2c ff 22 4c 6f 61 64 |ys% 11...,."Load| 000000a0 20 3c 54 77 69 6e 57 6f 72 6c 64 24 44 69 72 3e | <TwinWorld$Dir>| 000000b0 2e 4b 65 79 73 20 22 2b c3 7e 4f 6c 64 4b 65 79 |.Keys "+.~OldKey| 000000c0 73 25 0d 00 0a 05 3a 0d 00 0b 2e de 20 4b 65 79 |s%....:..... Key| 000000d0 4e 61 6d 65 24 28 31 31 29 2c 4b 65 79 4d 61 70 |Name$(11),KeyMap| 000000e0 25 28 31 31 29 2c 4b 65 79 24 28 31 32 34 29 2c |%(11),Key$(124),| 000000f0 42 6c 25 20 38 0d 00 0c 1f e3 20 4b 25 3d 30 20 |Bl% 8..... K%=0 | 00000100 b8 20 31 30 3a f3 20 4e 65 77 4b 65 79 73 25 3f |. 10:. NewKeys%?| 00000110 4b 25 3a ed 0d 00 0d 2c e3 20 4b 25 3d 31 20 b8 |K%:....,. K%=1 .| 00000120 20 31 31 3a f3 20 4b 65 79 4e 61 6d 65 24 28 4b | 11:. KeyName$(K| 00000130 25 29 2c 4b 65 79 4d 61 70 25 28 4b 25 29 3a ed |%),KeyMap%(K%):.| 00000140 0d 00 0e 1d e3 20 4b 25 3d 33 20 b8 20 31 32 34 |..... K%=3 . 124| 00000150 3a f3 20 4b 65 79 24 28 4b 25 29 3a ed 0d 00 0f |:. Key$(K%):....| 00000160 28 c8 99 20 22 4f 53 5f 49 6e 73 74 61 6c 6c 4b |(.. "OS_InstallK| 00000170 65 79 48 61 6e 64 6c 65 72 22 2c 31 20 b8 20 4b |eyHandler",1 . K| 00000180 62 64 49 44 25 0d 00 10 2b e7 20 4b 62 64 49 44 |bdID%...+. KbdID| 00000190 25 3d 32 20 8c 20 e3 20 49 25 3d 31 20 b8 20 34 |%=2 . . I%=1 . 4| 000001a0 3a f3 20 4b 25 2c 4b 65 79 24 28 4b 25 29 3a ed |:. K%,Key$(K%):.| 000001b0 0d 00 11 3e 21 42 6c 25 3d 32 35 36 3a 42 6c 25 |...>!Bl%=256:Bl%| 000001c0 21 34 3d 2d 31 3a c8 99 20 22 4f 53 5f 52 65 61 |!4=-1:.. "OS_Rea| 000001d0 64 56 64 75 56 61 72 69 61 62 6c 65 73 22 2c 42 |dVduVariables",B| 000001e0 6c 25 2c 42 6c 25 3a 57 25 3d 21 42 6c 25 0d 00 |l%,Bl%:W%=!Bl%..| 000001f0 12 05 3a 0d 00 13 05 f5 0d 00 14 2c 20 db 3a f2 |..:........, .:.| 00000200 43 65 6e 74 72 65 28 22 54 77 69 6e 20 57 6f 72 |Centre("Twin Wor| 00000210 6c 64 20 4b 65 79 20 44 65 66 69 6e 69 74 69 6f |ld Key Definitio| 00000220 6e 73 22 29 0d 00 15 11 20 f2 44 69 73 70 6c 61 |ns").... .Displa| 00000230 79 4b 65 79 73 0d 00 16 2e 20 f2 43 65 6e 74 72 |yKeys.... .Centr| 00000240 65 59 28 31 35 2c 22 43 68 61 6e 67 65 20 6b 65 |eY(15,"Change ke| 00000250 79 73 20 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 20 |ys ............ | 00000260 31 22 29 0d 00 17 2e 20 f2 43 65 6e 74 72 65 59 |1").... .CentreY| 00000270 28 31 37 2c 22 52 65 73 74 6f 72 65 20 64 65 66 |(17,"Restore def| 00000280 61 75 6c 74 20 6b 65 79 73 20 2e 2e 2e 20 32 22 |ault keys ... 2"| 00000290 29 0d 00 18 2e 20 f2 43 65 6e 74 72 65 59 28 31 |).... .CentreY(1| 000002a0 39 2c 22 45 78 69 74 20 2e 2e 2e 2e 2e 2e 2e 2e |9,"Exit ........| 000002b0 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 20 33 22 29 0d |........... 3").| 000002c0 00 19 26 20 f2 43 65 6e 74 72 65 59 28 32 32 2c |..& .CentreY(22,| 000002d0 22 45 6e 74 65 72 20 63 68 6f 69 63 65 20 28 31 |"Enter choice (1| 000002e0 2d 33 29 22 29 0d 00 1a 1d 20 f5 3a 43 68 25 3d |-3)").... .:Ch%=| 000002f0 a5 2d 34 38 3a fd 20 43 68 25 3e 30 80 43 68 25 |.-48:. Ch%>0.Ch%| 00000300 3c 34 0d 00 1b 0d 20 c8 8e 20 43 68 25 20 ca 0d |<4.... .. Ch% ..| 00000310 00 1c 15 20 20 c9 20 31 3a f2 44 65 66 69 6e 65 |... . 1:.Define| 00000320 4b 65 79 73 0d 00 1d 16 20 20 c9 20 32 3a f2 44 |Keys.... . 2:.D| 00000330 65 66 61 75 6c 74 4b 65 79 73 0d 00 1e 06 20 cb |efaultKeys.... .| 00000340 0d 00 1f 0b fd 20 43 68 25 3d 33 0d 00 20 05 3a |..... Ch%=3.. .:| 00000350 0d 00 21 07 db 3a ee 0d 00 22 05 e0 0d 00 23 05 |..!..:..."....#.| 00000360 3a 0d 00 24 26 dd 20 f2 43 65 6e 74 72 65 28 50 |:..$&. .Centre(P| 00000370 24 29 3a f1 20 8a 28 57 25 2d a9 28 50 24 29 29 |$):. .(W%-.(P$))| 00000380 2f 32 29 50 24 3a e1 0d 00 25 2e dd 20 f2 43 65 |/2)P$:...%.. .Ce| 00000390 6e 74 72 65 59 28 59 25 2c 50 24 29 3a f1 20 8a |ntreY(Y%,P$):. .| 000003a0 28 57 25 2d a9 28 50 24 29 29 2f 32 2c 59 25 29 |(W%-.(P$))/2,Y%)| 000003b0 50 24 3b 3a e1 0d 00 26 05 3a 0d 00 27 12 dd 20 |P$;:...&.:..'.. | 000003c0 f2 44 69 73 70 6c 61 79 4b 65 79 73 0d 00 28 0f |.DisplayKeys..(.| 000003d0 e3 20 4b 25 3d 31 20 b8 20 31 31 0d 00 29 53 20 |. K%=1 . 11..)S | 000003e0 f1 20 8a 57 25 2f 32 2d a9 28 4b 65 79 4e 61 6d |. .W%/2-.(KeyNam| 000003f0 65 24 28 4b 25 29 29 2c 4b 25 2b 31 29 4b 65 79 |e$(K%)),K%+1)Key| 00000400 4e 61 6d 65 24 28 4b 25 29 3b 22 20 2d 20 22 3b |Name$(K%);" - ";| 00000410 4b 65 79 24 28 4f 6c 64 4b 65 79 73 25 3f 4b 65 |Key$(OldKeys%?Ke| 00000420 79 4d 61 70 25 28 4b 25 29 2d 31 32 38 29 0d 00 |yMap%(K%)-128)..| 00000430 2a 05 ed 0d 00 2b 05 e1 0d 00 2c 05 3a 0d 00 2d |*....+....,.:..-| 00000440 11 dd 20 f2 44 65 66 69 6e 65 4b 65 79 73 0d 00 |.. .DefineKeys..| 00000450 2e 23 c8 99 20 22 4f 53 5f 42 79 74 65 22 2c 32 |.#.. "OS_Byte",2| 00000460 30 30 2c 31 20 b8 20 2c 4f 6c 64 46 58 32 30 30 |00,1 . ,OldFX200| 00000470 25 0d 00 2f 1c db 3a f2 43 65 6e 74 72 65 28 22 |%../..:.Centre("| 00000480 43 68 6f 6f 73 65 20 6b 65 79 73 22 29 0d 00 30 |Choose keys")..0| 00000490 08 4b 25 3d 31 0d 00 31 05 f5 0d 00 32 2f 20 f2 |.K%=1..1....2/ .| 000004a0 43 65 6e 74 72 65 59 28 31 35 2c 22 50 72 65 73 |CentreY(15,"Pres| 000004b0 73 20 6b 65 79 20 66 6f 72 20 22 2b 4b 65 79 4e |s key for "+KeyN| 000004c0 61 6d 65 24 28 4b 25 29 29 0d 00 33 2b 20 f5 3a |ame$(K%))..3+ .:| 000004d0 c8 99 22 4f 53 5f 42 79 74 65 22 2c 31 32 31 2c |.."OS_Byte",121,| 000004e0 33 20 b8 20 2c 4b 65 79 25 3a fd 20 4b 65 79 25 |3 . ,Key%:. Key%| 000004f0 3d 26 46 46 0d 00 34 2c 20 f5 3a c8 99 22 4f 53 |=&FF..4, .:.."OS| 00000500 5f 42 79 74 65 22 2c 31 32 31 2c 33 20 b8 20 2c |_Byte",121,3 . ,| 00000510 4b 65 79 25 3a fd 20 4b 65 79 25 3c 3e 26 46 46 |Key%:. Key%<>&FF| 00000520 0d 00 35 09 20 4a 25 3d 31 0d 00 36 38 20 c8 95 |..5. J%=1..68 ..| 00000530 20 4a 25 3c 4b 25 20 80 20 4e 65 77 4b 65 79 73 | J%<K% . NewKeys| 00000540 25 3f 28 4b 65 79 4d 61 70 25 28 4a 25 29 29 3c |%?(KeyMap%(J%))<| 00000550 3e 4b 65 79 25 2b 31 32 38 3a 4a 25 2b 3d 31 3a |>Key%+128:J%+=1:| 00000560 ce 0d 00 37 0e 20 e7 20 4a 25 3d 4b 25 20 8c 0d |...7. . J%=K% ..| 00000570 00 38 14 20 20 f1 20 8a 30 2c 31 37 29 89 28 57 |.8. . .0,17).(W| 00000580 25 29 3b 0d 00 39 40 20 20 f1 20 8a 57 25 2f 32 |%);..9@ . .W%/2| 00000590 2d a9 28 4b 65 79 4e 61 6d 65 24 28 4b 25 29 29 |-.(KeyName$(K%))| 000005a0 2c 4b 25 2b 31 29 4b 65 79 4e 61 6d 65 24 28 4b |,K%+1)KeyName$(K| 000005b0 25 29 3b 22 20 2d 20 22 3b 4b 65 79 24 28 4b 65 |%);" - ";Key$(Ke| 000005c0 79 25 29 0d 00 3a 25 20 20 4e 65 77 4b 65 79 73 |y%)..:% NewKeys| 000005d0 25 3f 28 4b 65 79 4d 61 70 25 28 4b 25 29 29 3d |%?(KeyMap%(K%))=| 000005e0 4b 65 79 25 2b 31 32 38 0d 00 3b 0b 20 20 4b 25 |Key%+128..;. K%| 000005f0 2b 3d 31 0d 00 3c 06 20 cc 0d 00 3d 37 20 20 ef |+=1..<. ...=7 .| 00000600 37 3a f2 43 65 6e 74 72 65 59 28 31 37 2c 22 54 |7:.CentreY(17,"T| 00000610 68 61 74 20 6b 65 79 20 68 61 73 20 61 6c 72 65 |hat key has alre| 00000620 61 64 79 20 62 65 65 6e 20 75 73 65 64 2e 22 29 |ady been used.")| 00000630 0d 00 3e 06 20 cd 0d 00 3f 13 20 f1 20 8a 30 2c |..>. ...?. . .0,| 00000640 31 35 29 89 28 57 25 29 3b 0d 00 40 0b fd 20 4b |15).(W%);..@.. K| 00000650 25 3d 31 32 0d 00 41 1d c8 99 22 4f 53 5f 42 79 |%=12..A..."OS_By| 00000660 74 65 22 2c 32 30 30 2c 4f 6c 64 46 58 32 30 30 |te",200,OldFX200| 00000670 25 0d 00 42 0d f2 53 61 76 65 4b 65 79 73 0d 00 |%..B..SaveKeys..| 00000680 43 05 e1 0d 00 44 05 3a 0d 00 45 12 dd 20 f2 44 |C....D.:..E.. .D| 00000690 65 66 61 75 6c 74 4b 65 79 73 0d 00 46 1d db 3a |efaultKeys..F..:| 000006a0 f2 43 65 6e 74 72 65 28 22 44 65 66 61 75 6c 74 |.Centre("Default| 000006b0 20 6b 65 79 73 22 29 0d 00 47 05 f7 0d 00 48 1f | keys")..G....H.| 000006c0 e3 20 4b 25 3d 30 20 b8 20 31 30 3a f3 20 4e 65 |. K%=0 . 10:. Ne| 000006d0 77 4b 65 79 73 25 3f 4b 25 3a ed 0d 00 49 05 f1 |wKeys%?K%:...I..| 000006e0 0d 00 4a 0f e3 20 4b 25 3d 31 20 b8 20 31 31 0d |..J.. K%=1 . 11.| 000006f0 00 4b 4e 20 f1 20 8a 57 25 2f 32 2d a9 28 4b 65 |.KN . .W%/2-.(Ke| 00000700 79 4e 61 6d 65 24 28 4b 25 29 29 29 4b 65 79 4e |yName$(K%)))KeyN| 00000710 61 6d 65 24 28 4b 25 29 3b 22 20 2d 20 22 3b 4b |ame$(K%);" - ";K| 00000720 65 79 24 28 4e 65 77 4b 65 79 73 25 3f 4b 65 79 |ey$(NewKeys%?Key| 00000730 4d 61 70 25 28 4b 25 29 2d 31 32 38 29 0d 00 4c |Map%(K%)-128)..L| 00000740 05 ed 0d 00 4d 0d f2 53 61 76 65 4b 65 79 73 0d |....M..SaveKeys.| 00000750 00 4e 05 e1 0d 00 4f 05 3a 0d 00 50 0f dd 20 f2 |.N....O.:..P.. .| 00000760 53 61 76 65 4b 65 79 73 0d 00 51 09 2a 46 58 32 |SaveKeys..Q.*FX2| 00000770 31 0d 00 52 2a f2 43 65 6e 74 72 65 59 28 31 35 |1..R*.CentreY(15| 00000780 2c 22 53 61 76 65 20 74 68 65 73 65 20 6b 65 79 |,"Save these key| 00000790 73 20 28 59 2f 4e 29 3f 20 22 29 0d 00 53 20 f5 |s (Y/N)? ")..S .| 000007a0 3a 59 4e 24 3d be 3a fd 20 a7 22 59 79 4e 6e 22 |:YN$=.:. ."YyNn"| 000007b0 2c 59 4e 24 29 3a f1 20 59 4e 24 0d 00 54 19 e7 |,YN$):. YN$..T..| 000007c0 20 59 4e 24 3d 22 4e 22 20 84 20 59 4e 24 3d 22 | YN$="N" . YN$="| 000007d0 6e 22 20 e1 0d 00 55 29 e3 20 4b 25 3d 30 20 b8 |n" ...U). K%=0 .| 000007e0 20 31 30 3a 4f 6c 64 4b 65 79 73 25 3f 4b 25 3d | 10:OldKeys%?K%=| 000007f0 4e 65 77 4b 65 79 73 25 3f 4b 25 3a ed 0d 00 56 |NewKeys%?K%:...V| 00000800 31 ff 22 53 61 76 65 20 3c 54 77 69 6e 57 6f 72 |1."Save <TwinWor| 00000810 6c 64 24 44 69 72 3e 2e 4b 65 79 73 20 22 2b c3 |ld$Dir>.Keys "+.| 00000820 7e 4f 6c 64 4b 65 79 73 25 2b 22 2b 42 22 0d 00 |~OldKeys%+"+B"..| 00000830 57 1f 2a 53 74 61 6d 70 20 3c 54 77 69 6e 57 6f |W.*Stamp <TwinWo| 00000840 72 6c 64 24 44 69 72 3e 2e 4b 65 79 73 0d 00 58 |rld$Dir>.Keys..X| 00000850 05 e1 0d 00 59 05 3a 0d 00 5a 0c dd 20 f2 45 72 |....Y.:..Z.. .Er| 00000860 72 6f 72 0d 00 5b 12 db 3a e7 20 9f 3c 3e 31 37 |ror..[..:. .<>17| 00000870 20 f1 20 f6 24 0d 00 5c 05 e1 0d 00 5d 05 3a 0d | . .$..\....].:.| 00000880 00 5e 29 dc 20 38 34 2b 31 32 38 2c 35 35 2b 31 |.^). 84+128,55+1| 00000890 32 38 2c 38 39 2b 31 32 38 2c 31 31 32 2b 31 32 |28,89+128,112+12| 000008a0 38 2c 39 38 2b 31 32 38 0d 00 5f 30 dc 20 37 33 |8,98+128.._0. 73| 000008b0 2b 31 32 38 2c 38 31 2b 31 32 38 2c 39 37 2b 31 |+128,81+128,97+1| 000008c0 32 38 2c 36 36 2b 31 32 38 2c 37 39 2b 31 32 38 |28,66+128,79+128| 000008d0 2c 31 30 34 2b 31 32 38 0d 00 60 05 3a 0d 00 61 |,104+128..`.:..a| 000008e0 28 dc 20 4c 65 66 74 2c 37 2c 52 69 67 68 74 2c |(. Left,7,Right,| 000008f0 38 2c 55 70 2c 39 2c 44 6f 77 6e 2c 31 30 2c 46 |8,Up,9,Down,10,F| 00000900 69 72 65 2c 35 0d 00 62 2d dc 20 43 68 6f 6f 73 |ire,5..b-. Choos| 00000910 65 20 42 75 62 62 6c 65 2c 34 2c 43 61 6c 6c 20 |e Bubble,4,Call | 00000920 4d 65 72 63 68 61 6e 74 2c 30 2c 50 61 75 73 65 |Merchant,0,Pause| 00000930 2c 31 0d 00 63 2a dc 20 4c 6f 73 65 20 61 20 4c |,1..c*. Lose a L| 00000940 69 66 65 2c 33 2c 45 6e 64 20 47 61 6d 65 2c 32 |ife,3,End Game,2| 00000950 2c 53 61 76 65 20 47 61 6d 65 2c 36 0d 00 64 05 |,Save Game,6..d.| 00000960 3a 0d 00 65 44 dc 20 4c 65 66 74 20 53 68 69 66 |:..eD. Left Shif| 00000970 74 2c 4c 65 66 74 20 43 74 72 6c 2c 4c 65 66 74 |t,Left Ctrl,Left| 00000980 20 41 6c 74 2c 52 69 67 68 74 20 53 68 69 66 74 | Alt,Right Shift| 00000990 2c 52 69 67 68 74 20 43 74 72 6c 2c 52 69 67 68 |,Right Ctrl,Righ| 000009a0 74 20 41 6c 74 0d 00 66 42 dc 20 4c 65 66 74 20 |t Alt..fB. Left | 000009b0 6d 6f 75 73 65 20 62 75 74 74 6f 6e 2c 43 65 6e |mouse button,Cen| 000009c0 74 72 65 20 6d 6f 75 73 65 20 62 75 74 74 6f 6e |tre mouse button| 000009d0 2c 52 69 67 68 74 20 6d 6f 75 73 65 20 62 75 74 |,Right mouse but| 000009e0 74 6f 6e 2c 2c 2c 2c 0d 00 67 47 dc 20 51 2c 33 |ton,,,,..gG. Q,3| 000009f0 2c 34 2c 35 2c 46 34 2c 38 2c 46 37 2c 2d 2c 36 |,4,5,F4,8,F7,-,6| 00000a00 2c 22 88 22 2c 4b 65 79 70 61 64 20 36 2c 4b 65 |,".",Keypad 6,Ke| 00000a10 79 70 61 64 20 37 2c 46 31 31 2c 46 31 32 2c 46 |ypad 7,F11,F12,F| 00000a20 31 30 2c 53 63 72 6f 6c 6c 20 6c 6f 63 6b 0d 00 |10,Scroll lock..| 00000a30 68 46 dc 20 50 72 69 6e 74 2c 57 2c 45 2c 54 2c |hF. Print,W,E,T,| 00000a40 37 2c 49 2c 39 2c 30 2c 5f 2c 22 8a 22 2c 4b 65 |7,I,9,0,_,".",Ke| 00000a50 79 70 61 64 20 38 2c 4b 65 79 70 61 64 20 39 2c |ypad 8,Keypad 9,| 00000a60 42 72 65 61 6b 2c 7e 2c a3 2c 42 61 63 6b 20 73 |Break,~,.,Back s| 00000a70 70 61 63 65 0d 00 69 46 dc 20 31 2c 32 2c 44 2c |pace..iF. 1,2,D,| 00000a80 52 2c 36 2c 55 2c 4f 2c 50 2c 5b 2c 22 8b 22 2c |R,6,U,O,P,[,".",| 00000a90 4b 65 79 70 61 64 20 2b 2c 4b 65 79 70 61 64 20 |Keypad +,Keypad | 00000aa0 2d 2c 4b 65 79 70 61 64 20 45 6e 74 65 72 2c 49 |-,Keypad Enter,I| 00000ab0 6e 73 65 72 74 2c 48 6f 6d 65 0d 00 6a 41 dc 20 |nsert,Home..jA. | 00000ac0 50 61 67 65 20 55 70 2c 43 61 70 73 20 4c 6f 63 |Page Up,Caps Loc| 00000ad0 6b 2c 41 2c 58 2c 46 2c 59 2c 4a 2c 4b 2c 40 2c |k,A,X,F,Y,J,K,@,| 00000ae0 3b 2c 52 65 74 75 72 6e 2c 4b 65 79 70 61 64 20 |;,Return,Keypad | 00000af0 2f 2c 2c 4b 65 79 70 61 64 20 2e 0d 00 6b 45 dc |/,,Keypad ...kE.| 00000b00 20 4e 75 6d 20 4c 6f 63 6b 2c 50 61 67 65 20 44 | Num Lock,Page D| 00000b10 6f 77 6e 2c 27 2c 2c 53 2c 43 2c 47 2c 48 2c 4e |own,',,S,C,G,H,N| 00000b20 2c 4c 2c 3b 2c 5d 2c 44 65 6c 65 74 65 2c 4b 65 |,L,;,],Delete,Ke| 00000b30 79 70 61 64 20 23 2c 4b 65 79 70 61 64 20 2a 2c |ypad #,Keypad *,| 00000b40 0d 00 6c 45 dc 20 3d 2c 28 65 78 74 72 61 29 2c |..lE. =,(extra),| 00000b50 2c 54 61 62 2c 5a 2c 53 70 61 63 65 20 42 61 72 |,Tab,Z,Space Bar| 00000b60 2c 56 2c 42 2c 4d 2c 22 2c 22 2c 2e 2c 2f 2c 43 |,V,B,M,",",.,/,C| 00000b70 6f 70 79 2c 4b 65 79 70 61 64 20 30 2c 4b 65 79 |opy,Keypad 0,Key| 00000b80 70 61 64 20 31 0d 00 6d 45 dc 20 4b 65 79 70 61 |pad 1..mE. Keypa| 00000b90 64 20 33 2c 2c 2c 2c 45 73 63 61 70 65 2c 46 31 |d 3,,,,Escape,F1| 00000ba0 2c 46 32 2c 46 33 2c 46 35 2c 46 36 2c 46 38 2c |,F2,F3,F5,F6,F8,| 00000bb0 46 39 2c 5c 2c 22 89 22 2c 4b 65 79 70 61 64 20 |F9,\,".",Keypad | 00000bc0 34 2c 4b 65 79 70 61 64 20 35 0d 00 6e 0e dc 20 |4,Keypad 5..n.. | 00000bd0 4b 65 79 70 61 64 20 32 0d 00 6f 05 3a 0d 00 70 |Keypad 2..o.:..p| 00000be0 1d dc 20 34 35 2c 60 2c 39 34 2c 5c 2c 31 30 35 |.. 45,`,94,\,105| 00000bf0 2c 45 6e 64 2c 31 32 30 2c 23 0d ff |,End,120,#..| 00000bfc