-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathpage1.txt
133 lines (120 loc) · 2.72 KB
/
page1.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
NOTFULL TAMIYC Store keycode's MSB in display buffer
TCMIY 1
TCY 14
TMA A=(0,14)
TCY 11
TMY Y=(0,11) cursor pos
LDX 1
TAMIYC Put LSB of keycode in the display buffer
TCMIY 12 - ?
LDX 0
TCY NXT$DSP Page 11
IMAC Increment cursor pos
TAM
BL NO$TRANS Page 4
GO BL RANDOM Go routine decides which mode you're in and branches to that mode, else goes to disp/kb
RANRTN LDX 8DAM
TCY 6
RBIT 1 (8,6).1=0
TCY 8 Set GO mode flag
SBIT 1 (8,8).1=1
TCY 7
TMA A=(8,7)
LDX 5
TCY 13
TCMIY 0 (5,13)=0
CALLL CORRSSPL Page 11, DAM 0~3 = 0
LDP 2
ALEC 1 Spell ?
BRANCH USPELL Page 2
LDP 8
ALEC 3 Learn ?
BRANCH ULRN+1 Page 8
LDP 11
ALEC 5 Game #1/Hangman ?
BRANCH CORR+1
Should never reach here, random word list code is only called in those previous modes (not for secrect code/random letter)
CLEAR TCY 0 Clears display buffer
HERE LDX 0 (0,0)=1 (1,0)=11 (0,1)=1 (1,1)=11 … (0,7)=1 (1,7)=11
TCMIY 1 (X,Y) = 1
DYN Keep Y same
LDX 1
TCMIY 11 (X,Y) = 11, Y++
YNEC 8
BRANCH HERE Branch if Y!=8
TCY 0 Y=0
TCMIY 12 (1,0) = 12
LDX 0
TCY 11
TCMIY 0 (0,11) = 0
RETN
REPLAY BRANCH RANRTN
ENTER LDX 8 Process enter key press
TCY 7 FLAG
MNEZ Spell mode ?
BRANCH TST4A3 No
BRANCH SPACE-3 Yes
TST4A3 TMY
YNEC 3 Spell it mode ?
BRANCH TST4A6 No
BRANCH SPACE-3 Yes
TST4A6 YNEC 6 Game 2 mode ?
BRANCH SPACE-3 No
BL CRYPTO Yes
Test for cursor position. First position ? Return. Else replace cursor with space
SPACE-3 TCY 7 Last char
LDX 1
SPACE-2 CLA A=11
ACACC 11
MNEA Last char MSB = 11 ?
BRANCH CHAROR+ No
LDX 0 Yes
MNEZ Last char LSB <> 0 (can only be 1 normally)
BRANCH SPACE-1 Last char = 1/11
BRANCH CHAR Last char = 0/11
CHAROR+ LDX 1
ACACC 1
MNEA Last char MSB = 12 ?
BRANCH CHAR No
LDX 0 Yes
MNEZ Last char LSB <> 0 (can only be 1 normally)
BRANCH CUR-1 Last char = 1/11
BRANCH CHAR Last char = 0/11
CUR-1 LDX 1
TCMIY 11
CHAR RETN
BL SPLENTER Go to spell routine
SPACE-1 DYN Search for cursor
LDX 1
BRANCH SPACE-2
Loads rom addr with second wrong response then continues to next word
NOPHRASE
LDX 3 FLAG
TCY 13
TCMIY 3
CALLL CURLEVL
TCMIY 2 ROM DCBA = 0062
TCMIY 6
SPK4 CALLL MEMADDR
CALLL LOADRESS
CALLL MEMADDR
BL LNKSET Always branch
F-SCORE LDX 2 RETNS8CH FLAG
TCY 14
TCMIY 1
TCMIY 0
CALLL CURLEVL Zero ROM ADDR
LDP 6
ALEC 9
BRANCH F2 No, next word ?
LDX 0 Tried 10 words ?:
TCY 2
TCMIY 2 (0,2) = 2
LDX 1
TCY 1
TCMIY 1 (1,1)=1
TCMIY 0 (1,2)=0
LDX 2
TCY 14
IMAC
BL TONE22