Line | Address | Object Code
| Label | F1 | N1 | B | F2 | N2 | Comments | Check
|
---|
1 | 0 | | ; tape2/checks.t2 |
|
2 | 0 | | ;-------------------------------------------------------------------- |
|
3 | 0 | | ; checkb(b) - print Boolean value if checking |
|
4 | 0 | | ; |
|
5 | 0 | | =6953 | |
|
6 | 6953 | | Checks:: | ; | |
|
7 | 6953 | | Checkb: | ; | |
|
8 | 6953 | 1600000 | | kbd | 0 | | | | ;get keyboard setting | @6953
|
9 | 6953+ | 0075164 | | and | BBit | | | | ;=<000/000> test for B-bit |
|
10 | 6954 | 1055474 | | jz | .ret | | | | ;not set, ignore | @6954
|
11 | 6954+ | 0600115 | | lod | ChkVal | | | | ;load value to be checked |
|
12 | 6955 | 1155454 | | jz | .1 | | | | ;zero is false | @6955
|
13 | 6955+ | 0616557 | | lod | Msg2 | | | | ;'TRUE' message |
|
14 | 6956 | 1015455 | | jmp | .2 | | | | ;output string | @6956
|
15 | 6956+ | | ; |
|
16 | 6956+ | | .1: | ; | |
|
17 | 6956+ | 0616556 | | lod | Msg1 | | | | ;'FALSE' message |
|
18 | 6957 | | .2: | ; | |
|
19 | 6957 | 0415130 | | sto | CKwk1 | | | | ;save message address | @6957
|
20 | 6957+ | 0615457 | | lod | .ptr | | | | ;load pointer to prefix (cr,lf,*.sp) |
|
21 | 6958 | | | calln | , | | | | ;output string | @6958
|
21+1 | 6958 | 7300005100012 | | lnk | T2Link | : | jmp | OutStr | |
|
22 | 6959 | 0615130 | .ptr: | lod | CKwk1 | | | | ;load message | @6959
|
23 | 6959+ | 0015166 | | o00 | CKpfx | | | | ;in-line const |
|
24 | 6960 | | | calln | , | | | | ;output string | @6960
|
24+1 | 6960 | 7300005100012 | | lnk | T2Link | : | jmp | OutStr | |
|
25 | 6961 | 1015474 | | jmp | .ret | | | | ;and return | @6961
|
26 | 6961+ | | ;-------------------------------------------------------------------- |
|
27 | 6961+ | | ; checks(str) |
|
28 | 6961+ | | ; |
|
29 | 6961+ | | Checks: | ; | |
|
30 | 6961+ | 1600000 | | kbd | 0 | | | | ; |
|
31 | 6962 | 0075164 | | and | BBit | | | | ;=<000/000> | @6962
|
32 | 6962+ | 1055474 | | jz | .ret | | | | ;ignore, just return |
|
33 | 6963 | 0600115 | | lod | ChkVal | | | | ;load string address | @6963
|
34 | 6963+ | 1015455 | | jmp | .2 | | | | ;output it |
|
35 | 6964 | | ;-------------------------------------------------------------------- |
|
36 | 6964 | | ; checkr(r) |
|
37 | 6964 | | ; need to set up special formatting for check output |
|
38 | 6964 | | ; |
|
39 | 6964 | | Checkr: | ; | |
|
40 | 6964 | 1600000 | | kbd | 0 | | | | ; | @6964
|
41 | 6964+ | 0075164 | | and | BBit | | | | ;=<000/000> |
|
42 | 6965 | 1055474 | | jz | .ret | | | | ; | @6965
|
43 | 6965+ | | ; |
|
44 | 6965+ | 0615167 | | lod | CKrfmt | | | | ;=04000004000011 |
|
45 | 6966 | 0200074 | | exa | Rfmt | | | | ; | @6966
|
46 | 6966+ | 0415130 | | sto | CKwk1 | | | | ;save current setting |
|
47 | 6967 | 0615165 | | lod | CKfmt | | | | ;=<00 CKpfx : 00 0> | @6967
|
48 | 6967+ | 0200076 | | exa | prtfmt | | | | ; |
|
49 | 6968 | 0415131 | | sto | CKwk2 | | | | ;save current setting | @6968
|
50 | 6968+ | | ; now output the number |
|
51 | 6968+ | 0600115 | | lod | ChkVal | | | | ;value to be checked |
|
52 | 6969 | | | calln | , | | | | ;call outreal | @6969
|
52+1 | 6969 | 7300005000021 | | lnk | T2Link | : | jmp | OutReal | |
|
53 | 6970 | 0615130 | | lod | CKwk1 | | | | ;restore current settings | @6970
|
54 | 6970+ | 0400074 | | sto | Rfmt | | | | ;for prefix |
|
55 | 6971 | | .3: | ; | |
|
56 | 6971 | | ;L6971: |
|
57 | 6971 | 0615131 | | lod | CKwk2 | | | | ;restore current setting | @6971
|
58 | 6971+ | 0400076 | | sto | prtfmt | | | | ; |
|
59 | 6972 | | .ret: | ; | |
|
60 | 6972 | 0600115 | | lod | ChkVal | | | | ;reload value being checked | @6972
|
61 | 6972+ | | | clo | | | | | ;ensure overflow clear |
|
61+1 | 6972+ | 1075475 | | jo | .1 | | | | |
|
61+2 | 6973 | | .1: | ; | |
|
62 | 6973 | 0000463000001 | | o00 | ChkLink | / | jmp | 1 | ;return | @6973
|
63 | 6974 | | ;-------------------------------------------------------------------- |
|
64 | 6974 | | ; checki(i) |
|
65 | 6974 | | ; |
|
66 | 6974 | | Checki: | ; | |
|
67 | 6974 | 1600000 | | kbd | 0 | | | | ;get buttons | @6974
|
68 | 6974+ | 0075164 | | and | BBit | | | | ;=<000/000> test for B-bit |
|
69 | 6975 | 1055474 | | jz | .ret | | | | ;return if not set | @6975
|
70 | 6975+ | 0055147 | | o02 | W6759 | | | | ;=11+1=>12 |
|
71 | 6976 | 0200075 | | exa | Ndigits | | | | ;digits(12) | @6976
|
72 | 6976+ | 0415130 | | sto | CKwk1 | | | | ;save Ndigits |
|
73 | 6977 | 0615165 | | lod | CKfmt | | | | ;=<00 CKpfx:00 0> | @6977
|
74 | 6977+ | 0200076 | | exa | prtfmt | | | | ;set prefix string |
|
75 | 6978 | 0415131 | | sto | CKwk2 | | | | ;save current setting | @6978
|
76 | 6978+ | 0600115 | | lod | ChkVal | | | | ;load value for printing |
|
77 | 6979 | | | calln | , | | | | ;print it | @6979
|
77+1 | 6979 | 7300005000022 | | lnk | T2Link | : | jmp | OutIntchk | |
|
78 | 6980 | 0615130 | | lod | CKwk1 | | | | ; | @6980
|
79 | 6980+ | 0400075 | | sto | Ndigits | | | | ;restore digits(n) |
|
80 | 6981 | 1015473 | | jmp | .3 | | | | ;restore prefix and return | @6981
|
81 | 6981+ | | ; |
|
82 | 6981+ | 0000000 | | o00 | 0 | | | | ; |
|
83 | 6982 | | ;-------------------------------------------------------------------- |
|