Crippled Software*SOLVED*

Discussion about ZX80 / ZX81 Software
butchi
Posts: 38
Joined: Wed Jun 12, 2019 4:12 am

Crippled Software*SOLVED*

Post by butchi »

Hi,
The attached software has both lo-res & WRX hi-res versions.
The hi-res version needs 48K to load (POKE 16388, 0;POKE 16389, 192; NEW).

If I follow the 'How To Use' dialog word for word, on the docs last two pages, errors get trapped!
Please confirm and post your results . . .
I get a strange V/534 error!
butchi
* 14.7MB zip attachment *
Attachments
se.zip
* software w/docs *
(14.72 MiB) Downloaded 265 times
Last edited by butchi on Tue Jul 09, 2019 4:44 am, edited 2 times in total.
User avatar
Dim_75
Posts: 80
Joined: Fri Sep 01, 2017 11:04 pm
Location: Paris, FR

Re: Crippled Software

Post by Dim_75 »

Hi, seems that the file is missing :(
User avatar
XavSnap
Posts: 1940
Joined: Sat May 10, 2008 4:23 pm
Location: 'Zx81 France' Fb group.

Re: Crippled Software

Post by XavSnap »

Message updated !

SMC Basic:

Code: Select all

# REM C 1987 SMC
     0  REM [HEX:\
A8,80,9D,A5,A4,A3,80,B8,\
B2,A8,76,76,01,00,C0,CD,\
F7,46,C3,B5,45,3E,1E,ED,\
47,DD,21,81,02,C9,F5,7E,\
FE,1A,28,05,CD,97,40,CF,\
18,F1,C9,22,16,40,CD,55,\
0F,E5,CD,CD,15,E1,C9,CD,\
AD,40,F5,CD,A0,40,23,CD,\
AD,40,47,F1,4F,C9,23,7E,\
FE,76,28,03,FE,19,C0,22,\
16,40,C9,26,00,54,68,06,\
05,CB,25,CB,14,10,FA,09,\
01,00,20,09,C9,23,CD,B9,\
40,CD,A0,40,CD,09,41,47,\
79,CB,3F,CB,3F,CB,3F,51,\
4F,D5,CD,D5,40,F1,2F,E6,\
07,3C,47,C9,3E,1F,91,30,\
05,CD,97,40,CF,10,3E,BF,\
90,D0,CD,97,40,CF,1E,21,\
00,00,22,C1,3F,26,20,54,\
5D,13,01,FF,17,36,00,ED,\
B0,C9,F3,3E,06,47,00,10,\
FD,C6,F0,3C,20,FD,06,C0,\
FD,CB,78,46,28,02,06,B0,\
11,20,00,21,00,20,C3,52,\
41,00,00,05,CA,59,41,19,\
7C,ED,47,7D,C3,A6,FC,2A,\
0C,40,00,7F,7F,7F,11,F7,\
82,19,3E,1E,ED,47,3E,F5,\
01,07,02,FD,CB,78,46,C4,\
B5,02,CD,92,02,CD,20,02,\
DD,21,2C,41,C3,A4,02,FD,\
CB,78,86,18,04,FD,CB,78,\
C6,2A,0C,40,01,25,00,ED,\
42,2B,EB,21,00,80,19,22,\
57,41,EB,ED,B0,CD,2B,0F,\
DD,21,2C,41,C9,23,CD,B9,\
40,CD,A0,40,48,47,CD,06,\
41,C5,23,CD,AD,40,C1,CD,\
D5,40,77,C9,1E,FF,18,02,\
1E,00,D5,23,CD,B9,40,CD,\
09,41,D1,ED,43,C3,3F,CD,\
F1,40,50,7E,0F,10,FD,CB,\
1B,17,42,05,20,02,06,08,\
07,10,FD,77,C9,3E,FF,18,\
01,AF,32,C5,3F,FD,CB,78,\
8E,23,CD,B9,40,CD,09,41,\
7E,FE,1A,20,0B,23,ED,43,\
C3,3F,CD,B9,40,CD,09,41,\
60,69,ED,4B,C3,3F,C5,7D,\
91,16,01,30,04,ED,44,16,\
FF,20,02,16,00,E5,67,7A,\
32,D0,3F,F1,90,1E,01,30,\
04,ED,44,1E,FF,20,02,1E,\
00,6F,7B,32,CF,3F,7D,BC,\
38,06,6C,67,16,00,18,02,\
1E,00,ED,53,D1,3F,22,D3,\
3F,7C,A7,1F,6F,26,00,22,\
D5,3F,C1,C5,3E,BF,90,F5,\
3A,C5,3F,5F,F1,FD,CB,78,\
4E,20,05,CD,D1,41,18,03,\
CD,43,4B,3A,D3,3F,4F,06,\
00,3A,D5,3F,6F,60,09,7D,\
32,D5,3F,ED,5B,D1,3F,3A,\
D4,3F,4F,ED,42,38,08,7D,\
32,D5,3F,ED,5B,CF,3F,C1,\
79,82,4F,78,83,47,21,D6,\
3F,34,3A,D4,3F,BE,20,B3,\
ED,43,C3,3F,C9,3E,FF,18,\
01,AF,32,C5,3F,23,CD,B9,\
40,CD,A0,40,C5,23,CD,AD,\
40,67,2E,00,22,CF,3F,65,\
22,D1,3F,C1,3E,01,F5,C5,\
C5,2A,CF,3F,ED,5B,D1,3F,\
06,05,C5,CB,2A,CB,1B,10,\
FA,B7,ED,52,22,CF,3F,ED,\
5B,D1,3F,C1,CB,2C,CB,1D,\
10,FA,19,22,D1,3F,ED,5B,\
CF,3F,C1,79,CB,13,8A,4F,\
78,CB,15,8C,47,3E,BF,90,\
38,09,F5,3A,C5,3F,5F,F1,\
CD,D1,41,C1,F1,3C,FE,CA,\
38,B4,C9,3E,01,32,CF,3F,\
CD,C8,40,C8,CD,AD,40,32,\
CF,3F,CD,C9,40,C8,23,CD,\
B9,40,CD,A0,40,B8,38,03,\
78,41,4F,CD,10,41,50,41,\
CD,10,41,7A,42,ED,43,D0,\
3F,91,3C,F5,23,CD,B9,40,\
B8,30,03,78,41,4F,ED,43,\
D2,3F,90,3C,20,01,3D,D1,\
5F,ED,53,D4,3F,3A,D3,3F,\
4F,3A,D1,3F,47,A7,CD,EE,\
40,22,D6,3F,3A,D2,3F,4F,\
3A,D1,3F,47,A7,CD,EE,40,\
22,D8,3F,0C,C9,CD,15,43,\
20,17,3A,CF,3F,57,21,00,\
20,01,00,18,7E,2F,77,23,\
0B,78,B1,20,F7,15,20,EE,\
C9,3A,D5,3F,2A,D6,3F,ED,\
5B,D8,3F,22,DA,3F,ED,53,\
DC,3F,F5,E5,ED,52,E1,28,\
5A,3A,D3,3F,CD,00,41,D5,\
C5,7E,1F,3F,CB,13,10,FA,\
C1,CB,1B,17,10,FB,77,D1,\
23,E5,A7,ED,52,E1,28,05,\
7E,2F,77,18,F3,3A,D2,3F,\
CD,00,41,3E,09,90,47,C5,\
1A,17,3F,CB,1D,10,FA,C1,\
CB,15,1F,10,FB,12,01,20,\
00,2A,DC,3F,09,22,DC,3F,\
EB,2A,DA,3F,09,22,DA,3F,\
F1,3D,20,A6,21,CF,3F,35,\
20,8F,C9,3A,D4,3F,FE,08,\
20,04,1A,2F,18,D7,3A,D3,\
3F,CD,00,41,C5,1A,1F,3F,\
CB,15,10,FA,C1,CB,1D,17,\
10,FB,67,3A,D2,3F,2F,E6,\
07,28,0D,47,1A,C5,0F,CB,\
1C,10,FB,C1,CB,04,10,FC,\
7C,18,AA,2A,10,40,7E,B9,\
C8,FE,80,20,05,CD,97,40,\
CF,01,C5,CD,F2,09,C1,EB,\
18,EC,F5,E7,E5,0E,40,81,\
4F,CD,45,44,23,E5,06,05,\
AF,77,10,FD,D1,E1,F1,C9,\
CD,E7,40,7E,0F,10,FD,CD,\
5C,44,30,03,3E,81,12,CD,\
C8,40,C2,D0,4B,C9,CD,E7,\
40,E5,C1,CD,20,15,E5,CD,\
5C,44,C1,E5,60,69,CD,F6,\
19,CD,8A,15,E1,18,E0,CD,\
E7,40,4E,06,00,18,E4,4F,\
7E,47,3E,BF,90,D5,C5,F5,\
CD,D1,41,F1,C1,D1,C9,1E,\
FF,18,02,1E,00,D5,CD,28,\
43,D1,3A,D5,3F,57,3A,D3,\
3F,21,D1,3F,F5,E5,CD,A9,\
44,15,28,06,3C,CD,AF,44,\
18,F7,3A,D4,3F,57,E1,F1,\
2B,E5,CD,A9,44,15,28,06,\
0C,CD,AF,44,18,F7,3A,D5,\
3F,57,E1,3A,D2,3F,F5,E5,\
CD,A9,44,15,28,06,3D,CD,\
AF,44,18,F7,3A,D4,3F,57,\
E1,F1,23,CD,A9,44,15,C8,\
0D,CD,AF,44,18,F8,CD,23,\
0F,1E,C0,FD,CB,78,46,28,\
02,1E,B0,21,00,20,AF,D3,\
FB,CD,46,0F,D2,85,08,DB,\
FB,17,30,FB,16,20,06,08,\
4E,DB,FB,1F,30,FB,79,E6,\
80,D3,FB,CB,11,10,F2,23,\
15,20,EB,DB,FB,1F,30,FB,\
CD,70,4B,18,D1,23,22,16,\
40,CD,55,0F,CD,A7,0E,50,\
59,01,01,C8,FD,CB,3B,46,\
C0,10,F9,0D,20,F6,1B,7A,\
B3,20,EE,C9,23,7E,FE,76,\
20,09,CD,D9,45,CD,F7,46,\
18,31,23,7E,FE,1A,28,12,\
FE,19,28,2C,FE,76,28,47,\
FE,C1,28,49,FE,C2,28,5C,\
18,6E,ED,4B,C1,3F,79,E6,\
F0,C6,10,FE,40,C4,B4,45,\
CC,AF,45,18,D5,78,C6,08,\
47,AF,4F,ED,43,C1,3F,C9,\
06,FF,23,7E,FE,76,C8,FE,\
1A,20,04,3E,04,18,0B,FE,\
19,20,C5,04,78,FE,03,CA,\
D0,4B,32,C0,3F,18,E3,ED,\
4B,C1,3F,18,D0,23,CD,B9,\
40,48,47,FE,B9,D2,14,41,\
79,FE,40,D2,0B,41,ED,43,\
C1,3F,18,8F,23,CD,AD,40,\
E6,3F,ED,4B,C1,3F,B9,4F,\
30,EC,3E,08,80,47,18,E6,\
22,16,40,CD,55,0F,E5,FD,\
CB,01,76,C4,D5,1B,CD,F8,\
13,E1,E5,78,B1,28,0C,1A,\
C5,D5,CD,30,46,D1,C1,13,\
0B,18,F0,E1,18,C4,FE,C0,\
20,04,3E,0B,18,3A,F5,E6,\
7F,FE,40,30,07,F1,FD,CB,\
01,C6,18,2C,FD,CB,01,46,\
28,0A,AF,FD,CB,01,86,CD,\
72,46,18,04,FD,CB,01,C6,\
F1,CD,75,09,0A,F5,C5,E6,\
7F,CD,72,46,C1,03,F1,FE,\
80,38,F1,FD,CB,01,86,AF,\
ED,4B,C1,3F,F5,3E,3F,91,\
DC,AF,45,CD,F7,46,F1,C5,\
32,DB,3F,A7,17,A7,17,17,\
16,00,CB,12,5F,21,00,1E,\
19,E5,CB,39,CD,D5,40,D1,\
3A,C0,3F,FE,04,CA,D0,4B,\
FE,02,28,43,FE,01,28,2B,\
3E,08,F5,D5,1A,F5,3A,C0,\
3F,A7,20,0B,3A,DB,3F,CB,\
7F,28,04,F1,2F,18,01,F1,\
77,11,20,00,19,D1,F1,13,\
3D,20,DF,C1,0C,0C,ED,43,\
C1,3F,C9,3A,DB,3F,FE,26,\
38,CE,FE,A6,30,CA,E5,21,\
00,1E,19,EB,E1,18,C1,3A,\
DB,3F,07,E5,21,00,1C,38,\
F1,26,1A,18,ED,FD,CB,78,\
46,3E,B8,28,02,3E,A8,B8,\
D0,57,78,E6,07,82,47,C5,\
11,00,20,21,00,21,CB,38,\
CB,38,CB,38,4B,ED,B0,2B,\
71,10,FC,C1,C9,CD,C8,40,\
3E,17,28,03,CD,AD,40,11,\
00,00,3C,2A,C1,3F,E5,ED,\
53,C1,3F,ED,5B,0C,40,13,\
F5,06,20,1A,C5,D5,CD,72,\
46,D1,C1,13,10,F5,F1,3D,\
20,ED,E1,22,C1,3F,C9,CD,\
C8,40,28,CC,CD,AD,40,3C,\
F5,47,3E,C0,D6,08,10,FC,\
57,58,F1,18,C6,23,CD,B9,\
40,CD,09,41,CD,A0,40,C9,\
3E,FF,18,01,AF,32,C5,3F,\
FD,CB,78,8E,CD,67,47,ED,\
43,D7,3F,2A,16,40,CD,67,\
47,ED,43,D9,3F,2A,16,40,\
23,CD,B9,40,CD,09,41,ED,\
43,DB,3F,2A,C3,3F,E5,ED,\
43,C3,3F,2A,D9,3F,E5,CD,\
0C,42,E1,22,C3,3F,2A,D7,\
3F,E5,CD,0C,42,E1,22,C3,\
3F,2A,DB,3F,CD,0C,42,E1,\
22,C3,3F,C9,CD,15,43,20,\
1B,3A,CF,3F,21,00,20,54,\
5D,01,20,00,09,01,E0,17,\
ED,B0,06,20,2B,71,10,FC,\
3D,20,E9,C9,3A,D1,3F,FE,\
00,28,54,47,3A,D3,3F,4F,\
C5,3E,BF,90,C5,F5,3C,C5,\
CD,F1,40,D1,3E,08,B8,20,\
17,3A,D2,3F,93,FE,08,38,\
0F,7E,01,20,00,ED,42,77,\
F1,C1,79,C6,08,4F,18,D9,\
7E,0F,10,FD,1E,FF,38,01,\
1C,F1,C1,C5,CD,D1,41,C1,\
50,06,00,3A,D2,3F,60,6F,\
03,A7,ED,42,42,30,BA,C1,\
05,3A,D0,3F,B8,20,B1,3A,\
D0,3F,47,2A,D3,3F,3E,FF,\
BC,20,01,24,4D,E5,C5,3E,\
BF,90,1E,00,CD,D1,41,C1,\
0C,E1,25,20,F0,21,CF,3F,\
35,20,81,C9,CD,15,43,20,\
1C,3A,CF,3F,21,FF,37,54,\
5D,01,20,00,ED,42,01,E0,\
17,ED,B8,06,20,23,71,10,\
FC,3D,20,E8,C9,3A,D0,3F,\
FE,BF,28,57,47,3A,D3,3F,\
4F,C5,3E,BF,90,C5,F5,3D,\
C5,CD,F1,40,D1,3E,08,B8,\
20,16,3A,D2,3F,93,FE,08,\
38,0E,7E,01,20,00,09,77,\
F1,C1,79,C6,08,4F,18,DA,\
7E,0F,10,FD,1E,FF,38,01,\
1C,F1,C1,C5,CD,D1,41,C1,\
50,06,00,3A,D2,3F,60,6F,\
03,A7,ED,42,42,30,BB,C1,\
04,3A,D1,3F,FE,00,28,03,\
B8,20,AE,3A,D1,3F,47,2A,\
D3,3F,3E,FF,BC,20,01,24,\
4D,E5,C5,3E,BF,90,1E,00,\
CD,D1,41,C1,0C,E1,25,20,\
F0,21,CF,3F,35,C2,87,48,\
C9,CD,15,43,20,17,3A,CF,\
3F,5F,21,FF,37,06,20,78,\
A7,CB,16,2B,10,FB,A4,20,\
F4,1D,20,EE,C9,3A,D1,3F,\
47,3A,D3,3F,4F,C5,3E,BF,\
90,C5,F5,0C,CD,F1,40,7E,\
0F,10,FD,1E,FF,38,01,1C,\
F1,C1,C5,CD,D1,41,C1,3A,\
D2,3F,0C,B9,20,E0,C1,05,\
78,FE,FF,28,08,3A,D0,3F,\
57,78,BA,30,D0,ED,4B,D1,\
3F,78,41,4F,3A,D5,3F,6F,\
E5,C5,3E,BF,90,1E,00,CD,\
D1,41,C1,05,E1,2D,20,F0,\
21,CF,3F,35,20,A7,C9,CD,\
15,43,20,1D,3A,CF,3F,5F,\
21,00,20,A7,06,20,CB,1E,\
23,10,FB,01,00,38,A7,E5,\
ED,42,E1,20,EE,1D,20,E8,\
C9,3A,D1,3F,47,3A,D2,3F,\
4F,C5,3E,BF,90,C5,F5,0D,\
CD,F1,40,3E,09,90,47,7E,\
07,10,FD,1E,FF,38,01,1C,\
F1,C1,C5,CD,D1,41,C1,3A,\
D3,3F,0D,B9,20,DC,C1,05,\
78,FE,FF,28,08,3A,D0,3F,\
57,78,BA,30,CC,3A,D1,3F,\
47,3A,D3,3F,4F,3A,D5,3F,\
6F,E5,C5,3E,BF,90,1E,00,\
CD,D1,41,C1,05,E1,2D,20,\
F0,21,CF,3F,35,20,A2,C9,\
23,7E,FE,1C,30,05,CD,97,\
40,CF,1D,FE,2C,30,F7,D6,\
1C,C9,CD,02,4A,47,CB,20,\
CB,20,CB,20,CB,20,CD,02,\
4A,80,47,23,7E,FE,0B,78,\
C9,23,7E,FE,0B,C2,D0,4B,\
23,7E,CB,7F,28,02,D6,40,\
11,00,00,23,23,E5,06,08,\
26,00,6F,EB,19,10,FD,EB,\
21,00,38,19,EB,E1,23,CD,\
14,4A,12,20,05,23,22,16,\
40,C9,13,18,F2,23,CD,AD,\
40,FE,20,11,00,06,38,D5,\
CD,97,40,CF,1B,01,20,00,\
09,7C,FE,38,D8,D6,18,67,\
C9,23,CD,AD,40,FE,20,30,\
E7,CD,A0,40,A7,17,17,17,\
16,00,5F,21,00,3E,19,22,\
D8,3F,E7,CD,B9,40,ED,43,\
DA,3F,C9,CD,7B,4A,3E,BF,\
90,30,02,D6,40,67,69,CB,\
3C,CB,1D,CB,3C,CB,1D,CB,\
3C,CB,1D,CB,EC,22,DC,3F,\
79,2F,E6,07,3C,32,7A,40,\
11,E3,3F,ED,4B,D8,3F,3E,\
08,F5,7E,12,0A,C5,4F,3A,\
7A,40,FE,05,38,11,2F,C6,\
09,A7,47,79,0E,00,28,0E,\
1F,CB,19,10,FB,18,07,47,\
AF,CB,11,17,10,FB,B6,77,\
23,13,7E,12,79,B6,77,2B,\
CD,6F,4A,13,C1,03,F1,3D,\
C2,CB,4A,C9,CD,C8,40,C2,\
D0,4B,2A,DC,3F,11,E3,3F,\
06,08,C5,1A,77,23,13,1A,\
77,CD,6F,4A,2B,13,C1,10,\
F1,C9,FD,CB,78,CE,CD,7B,\
4A,2A,16,40,7E,FE,1A,20,\
0D,23,ED,43,C3,3F,E5,CD,\
A0,4A,E1,CD,B9,40,C3,0A,\
42,C5,21,34,40,46,7E,B8,\
28,FC,FD,96,76,32,77,40,\
CD,0C,4B,C1,CD,A0,4A,3A,\
77,40,FD,BE,34,20,FB,C9,\
CD,C8,40,3E,00,28,03,CD,\
AD,40,32,76,40,C9,1D,C0,\
C1,3E,04,D3,FB,1C,CD,63,\
45,C3,8B,41,ED,5B,57,41,\
13,13,23,7E,FE,76,28,17,\
D5,CD,AD,40,47,CD,06,41,\
04,D1,62,6B,CB,BC,1A,C6,\
80,12,77,13,10,F4,C9,06,\
20,AF,62,6B,CB,BC,12,77,\
13,10,F7,C9,00,2A,16,40,\
7E,FE,19,28,75,FE,76,28,\
05,CD,97,40,CF,15,E1,22,\
16,40,01,00,00,C9,2A,16,\
40,7E,FE,DE,28,05,CD,97,\
40,CF,11,E5,23,7E,11,C0,\
4B,D5,FE,E2,CA,51,47,FE,\
E7,CA,8E,40,FE,EF,CA,D0,\
4B,FE,F0,CA,1F,47,FE,F2,\
CA,57,45,FE,F5,CA,76,45,\
FE,F6,CA,BE,41,FE,F7,CA,\
81,41,FE,F8,CA,D0,4B,FE,\
F9,CA,7E,4B,FE,FB,CA,19,\
41,FE,FC,CA,C2,41,FE,FD,\
CA,87,41,FE,FE,CA,97,40,\
FE,FF,CA,18,45,FE,E1,20,\
A5,D1,11,AF,4B,D5,23,7E,\
FE,3D,28,7D,47,23,7E,FE,\
76,28,93,FE,19,20,F6,78,\
FE,26,CA,88,44,FE,27,CA,\
A7,41,FE,28,CA,A7,42,FE,\
29,CA,E7,41,FE,2E,CA,7F,\
43,FE,31,CA,A1,44,FE,35,\
CA,72,44,FE,37,CA,B9,44,\
FE,38,20,1E,2B,7E,23,FE,\
29,CA,5F,4A,FE,2A,CA,06,\
4B,FE,32,CA,24,4B,FE,35,\
CA,9D,4A,FE,38,CA,62,4B,\
18,48,FE,39,CA,72,47,FE,\
3A,CA,2B,4A,FE,3C,20,3A,\
2B,7E,23,FE,29,CA,66,48,\
FE,31,CA,0B,49,FE,37,CA,\
81,49,FE,3A,CA,C6,47,18,\
21,23,46,23,7E,FE,76,28,\
19,FE,19,20,F6,78,FE,28,\
CA,AB,42,FE,29,CA,EB,41,\
FE,37,CA,BD,44,FE,39,CA,\
76,47,C3,D0,4B ]

    10 GOTO VAL "1E3"
    42 PRINT "how«many«ptsŠ"
    46 INPUT M
    50 LET DP=M
    54 DIM P(M)
    58 DIM U(M)
    62 DIM V(M)
    66 DIM Y(M)
    70 PRINT "INPUT X THEN Y VAL "
    78 FOR I=A TO M
    82 PRINT TAB TR;I;" ";
    86 INPUT P(I)
    90 INPUT Y(I)
    94 PRINT P(I),Y(I)
    98 IF I>VAL "18" THEN GOSUB SC
   102 NEXT I
   106 GOTO VAL "672"
   110 PRINT ,,"INPUT START /STOP FOR X THEN Y"
   114 DIM E(D)
   118 DIM E$(D,D)
   122 FOR I=A TO D
   126 IF I=A OR I=TR THEN PRINT ("X  " AND I=A)+("Y  " AND I=TR)
   129 INPUT E$(I)
   134 PRINT E$(I),
   138 NEXT I
   142 RETURN 
   146 FOR I=A TO D
   150 LET E(I)=VAL E$(I)
   154 NEXT I
   158 RETURN 
   162 PRINT ,,"title‰";
   166 INPUT T$
   170 PRINT T$
   174 PRINT ,,"x«label",
   178 INPUT X$
   182 PRINT X$
   186 PRINT ,,"y",
   190 INPUT Y$
   194 PRINT Y$
   198 RETURN 
   202 PRINT ,,"x«log“lin«˜“—"
   206 INPUT XL
   210 PRINT ,,"y"
   214 INPUT YL
   218 RETURN 
   222 LET E(A)=LN E(A)/K
   226 LET E(TW)=LN E(TW)/K
   230 RETURN 
   234 LET E(TR)=LN E(TR)/K
   238 LET E(D)=LN E(D)/K
   242 RETURN 
   250 DIM O(M)
   254 DIM Q(M)
   258 CLS 
   262 PRINT "labelsŠ"
   266 INPUT SL
   270 IF SL THEN GOSUB VAL "162"
   274 CLS 
   278 PRINT ,,"set«scaleŠ"
   282 INPUT SS
   286 IF SS THEN GOSUB VAL "202"
   290 PRINT ,,"set«limitsŠ"
   294 INPUT SSL
   298 IF SSL THEN GOSUB VAL "110"
   302 PRINT ,,"connect«ptsŠ"
   306 INPUT CN
   310 PRINT "plot«fitŠ"
   314 INPUT CF
   318 PRINT ,,"okŠ"
   322 INPUT Z
   330 IF NOT Z THEN GOTO VAL "246"
   331 FAST 
   335 IF USR M2 THEN CLS 
   338 GOSUB VAL "146"
   342 LET K=LN VAL "10"
   346 IF NOT XL THEN GOTO VAL "366"
   350 GOSUB VAL "222"
   354 FOR I=A TO M
   358 LET U(I)=LN P(I)/K
   362 NEXT I
   366 IF XL THEN GOTO VAL "382"
   370 FOR I=A TO M
   374 LET U(I)=P(I)
   378 NEXT I
   382 IF NOT YL THEN GOTO VAL "402"
   386 GOSUB VAL "234"
   390 FOR I=A TO M
   394 LET V(I)=LN Y(I)/K
   398 NEXT I
   402 IF YL THEN GOTO 418
   406 FOR I=A TO M
   410 LET V(I)=Y(I)
   414 NEXT I
   422 LET DX=(E(TW)-E(A))/VAL "220"
   426 LET DY=(E(D)-E(TR))/VAL "180"
   430 LET PL=A
   434 FOR I=A TO M
   438 LET TX=(U(I)-E(A))/DX
   442 IF TX<ZO OR TX>220 THEN GOTO 466
   446 LET TY=(V(I)-E(TR))/DY
   450 IF TY<ZO OR TY>180 THEN GOTO 466
   454 LET O(PL)=INT (TX+12.5)
   458 LET Q(PL)=INT (TY+18.5)
   462 LET PL=PL+A
   466 NEXT I
   468 IF USR M2 THEN RUN 
   470 IF USR M2 THEN LPRINT D;12,18,254,18
   475 IF USR M2 THEN LPRINT D;12,18,12,191
   486 IF NOT SL THEN GOTO 518
   490 LET T=VAL "80"-D*LEN Y$
   494 FOR I=A TO LEN Y$
   498 IF USR M2 THEN PRINT AT T,A;Y$(I)
   502 LET T=T+D+D
   506 NEXT I
   514 IF USR M2 THEN PRINT AT VAL "176",VAL "32"-LEN X$/TW;X$
   518 IF USR M2 THEN PRINT AT 176,TR;E$(A);AT 176,58;E$(TW)
   522 IF USR M2 THEN PRINT AT ZO,ZO;E$(D, TO TR);AT VAL "168",ZO;E$(TR, TO TR)
   530 FOR I=A TO PL-A
   534 IF USR M2 THEN PLOT O(I),Q(I)
   538 NEXT I
   542 IF NOT CF THEN GOTO VAL "558"
   546 FOR I=A TO PF-A
   550 IF USR M2 THEN PLOT CODE H$(I),CODE G$(I)
   554 NEXT I
   558 IF NOT CN THEN GOTO 622
   562 FOR I=A TO PL-TW
   565 IF USR M2 THEN LPRINT D;O(I),Q(I),O(I+A),Q(I+A)
   618 NEXT I
   619 IF NOT SL THEN GOTO VAL "622"
   621 IF USR M2 THEN PRINT AT VAL "183",VAL "32"-LEN T$/TW;T$
   622 FOR I=A TO PL-A
   626 IF USR M2 THEN UNPLOT O(I),Q(I)
   630 IF USR M2 THEN PLOT O(I),Q(I)
   634 IF INKEY$<>"" THEN GOTO 646
   638 NEXT I
   642 GOTO 622
   646 IF INKEY$<>"Z" THEN GOTO 669
   650 IF USR M2 THEN COPY 
   655 IF NOT CF THEN GOTO 622
   656 IF USR M2 THEN CLS 
   658 IF USR M2 THEN PRINT ,,,,"function«is‰ ";F$
   660 IF NOT R THEN GOTO 665
   662 IF USR M2 THEN PRINT "CORR. COEFF.= ";R
   664 IF USR M2 THEN PRINT "RESIDUALS:","SUM OF Y:",RY,,,"SUM OF XY:",RXY
   665 IF USR M2 THEN PRINT AT VAL "168",ZO;"INPUT ANY KEY - ÀZÀ TO COPY "
   666 IF USR M2 THEN PAUSE VAL "4E4"
   669 IF USR M2 THEN CLS 
   670 IF USR M2 THEN RETURN 
   672 CLS 
   674 PRINT "0.RETURN  TO MENU","1.PLOT (RESCALE?)","2. (RE)FIT DATA",,"3. SCALE FIT",,"4.PRINT VAL ",,,,
   678 INPUT Z
   682 GOTO (VAL "722" AND (Z=TR OR Z=D))+(VAL "1E3" AND NOT Z)+(VAL "246" AND Z=A)+(VAL "686" AND Z=TW)
   686 CLS 
   690 PRINT "TYPE?",,,,"0. INTERP.",,,,"LEAST SQUARES:",,,,"1. LINEAR",,"2. EXP.",,"3. LOG.",,"4. POWER",,,,"5. POLYNOMIAL"
   694 INPUT Z
   696 LET R=ZO
   698 IF Z AND Z<5 THEN GOTO 714
   702 IF NOT Z OR Z=5 THEN PRINT ,,"DEGREE?","enter",,,("**1 LINE " AND NOT Z),("™ PT." AND NOT Z),"**2 PARABOLA","š","**3 CUBIC","›","**NINPUT ","n˜"
   706 INPUT DEG
   710 CLS 
   714 GOSUB (VAL "4980" AND Z)+(VAL "4400" AND NOT Z)
   718 GOTO VAL "672"
   722 GOSUB (VAL "5540" AND Z=TR)+(VAL "4000" AND Z=D)
   726 CLS 
   730 IF Z=TR THEN PRINT "RESCALE DONE",,
   734 GOTO VAL "674"
   910 SCROLL 
   920 PRINT AT 21,31;" ";AT 21,ZO;
   930 RETURN 
   990 SAVE "SE-Hr"
   999 LET F$=""
  1000 LET ZO=NOT PI
  1002 LET A=NOT ZO
  1003 LET TW=A+A
  1004 LET TR=INT PI
  1005 LET D=TR+A
  1006 LET AL=ZO
  1007 LET LS=ZO
  1008 LET SC=VAL "910"
  1009 LET M2=VAL "19400"
  1010 LET CR=ZO
  1012 LET IP=CR
  1020 LET DE=CR
  1030 LET GS=DE
  1040 LET S=A
  1050 LET IL=DE
  1059 CLS 
  1060 SLOW 
  1070 PRINT AT A,D;"---COMPUTER MATH---",TAB D;"DEVELOPMENT PROGRAM";AT D,TR*D;"BY THOMAS BENT"
  1080 PRINT AT PI*PI,A;"1) ADD 2 MATR. "," 2) SUB. 2 MATR."," 3) MULT. 2 MATR."," 4) EVAL. DETERM."," 5) SIM. LIN. EQU."," 6)PRINT /PLOT  AND FIT DATA"," 7) INTEGRATION"
  1090 INPUT Z
  1095 CLS 
  1120 GOTO (VAL "5998" AND Z=VAL "7")+(VAL "1160" AND Z=VAL "5")+(VAL "38" AND Z=VAL "6")+(VAL "1130" AND Z<VAL "5")
  1130 GOSUB (VAL "2730" AND Z<TR)+(VAL "2950" AND Z=TR)+(VAL "3200" AND Z=D)
  1140 SLOW 
  1150 GOTO VAL "1220"
  1160 PRINT ,,"METHOD?",,,,"1. CRAMERS RULE 2X3","2. CR ANY SIZE",,"3. GAUSS ELIM. ANY SIZE","4. GAUSS SEIDEL ANY SIZE","5. COMPARE 3 AND 4","6. CHECKFOR ILL-COND.","7. 5 AND 6",,"8. 3 AND 6"
  1180 INPUT Z
  1190 CLS 
  1200 GOSUB (VAL "3680" AND Z=TW)+(VAL "1350" AND Z=D+D)+(VAL "1310" AND Z=D+TR)+(VAL "1270" AND Z=D+A)+(VAL "2620" AND Z=A)+(VAL "1730" AND Z=TR)+(VAL "2200" AND Z=D)+(VAL "3350" AND Z=D+TW)
  1210 SLOW 
  1220 IF INKEY$="" THEN GOTO 1220
  1230 FAST 
  1240 IF INKEY$="Z" THEN COPY 
  1260 GOTO VAL "1E3"
  1280 GOSUB VAL "2200"
  1290 GOSUB VAL "1750"
  1300 RETURN 
  1320 GOSUB VAL "2200"
  1330 GOTO VAL "1360"
  1350 GOSUB VAL "1400"
  1360 GOSUB VAL "3350"
  1370 GOSUB VAL "1750"
  1380 GOTO VAL "3500"
  1420 PRINT ,,"HOW MANY ROWS? ";
  1430 INPUT M
  1440 PRINT M
  1450 PRINT TAB VAL "9";"COLS? ";
  1460 INPUT N
  1470 PRINT N
  1480 DIM A(M,N)
  1490 DIM Z(M,N)
  1495 FAST 
  1500 FOR I=A TO M
  1510 GOSUB SC
  1520 PRINT AT VAL "20",ZO;"row col","VAL ",I;
  1530 FOR J=A TO N
  1540 PRINT TAB D;J,
  1550 INPUT A(I,J)
  1560 PRINT A(I,J)
  1570 LET Z(I,J)=A(I,J)
  1580 GOSUB SC
  1590 NEXT J
  1600 NEXT I
  1610 CLS 
  1620 RETURN 
  1640 DIM A(M,N)
  1650 FAST 
  1660 FOR I=A TO M
  1670 FOR J=A TO N
  1680 LET A(I,J)=Z(I,J)
  1690 NEXT J
  1700 NEXT I
  1710 SLOW 
  1720 RETURN 
  1740 GOSUB VAL "1400"
  1750 DIM X(M)
  1770 FAST 
  1780 FOR I=A TO M-A
  1790 LET B=ZO
  1800 FOR J=I TO M
  1810 LET P=ABS A(J,I)
  1820 IF P>B THEN LET L=J
  1830 IF P>B THEN LET B=P
  1840 NEXT J
  1850 IF NOT B THEN STOP 
  1860 IF IL OR I=L THEN GOTO VAL "1930"
  1870 LET S=-S
  1880 FOR J=A TO N
  1890 LET T=A(I,J)
  1900 LET A(I,J)=A(L,J)
  1910 LET A(L,J)=T
  1920 NEXT J
  1930 IF GS THEN NEXT I
  1940 IF GS THEN RETURN 
  1960 LET NLINE=I+A
  1970 FOR J=NLINE TO M
  1980 LET C=A(J,I)/A(I,I)
  1990 FOR K=I TO N
  2000 LET A(J,K)=A(J,K)-C*A(I,K)
  2010 NEXT K
  2020 NEXT J
  2030 NEXT I
  2040 IF DE OR IL THEN RETURN 
  2060 FOR I=M TO A STEP -A
  2070 LET BK=A(I,N)
  2080 IF I=M THEN GOTO 2120
  2090 FOR J=M TO I STEP -A
  2100 LET BK=BK-A(I,J)*X(J)
  2110 NEXT J
  2120 LET X(I)=BK/A(I,I)
  2130 NEXT I
  2135 IF IP THEN RETURN 
  2140 PRINT ,,"G.E. RESULTS:"
  2150 SLOW 
  2160 FOR I=A TO M
  2170 PRINT TAB D;"X ";I,X(I)
  2180 NEXT I
  2190 RETURN 
  2210 PRINT "INPUT ACCURACY"
  2220 INPUT ER
  2230 CLS 
  2240 GOSUB VAL "1400"
  2250 LET GS=A
  2260 PRINT AT VAL "19",D;"G-S ITERATIONS"
  2270 GOSUB VAL "1760"
  2280 LET GS=NOT GS
  2290 DIM X(M)
  2300 DIM Y(M)
  2310 FAST 
  2320 FOR K=A TO VAL "100"
  2330 GOSUB SC
  2340 FOR I=A TO M
  2350 LET T=ZO
  2360 LET X(I)=T
  2370 FOR J=A TO M
  2380 LET T=T+A(I,J)*X(J)
  2390 NEXT J
  2400 LET X(I)=(A(I,N)-T)/A(I,I)
  2410 NEXT I
  2420 LET T=ZO
  2430 PRINT K;
  2440 FOR I=A TO M
  2450 PRINT TAB D;"X ";I,X(I)
  2460 GOSUB SC
  2470 LET Y(I)=X(I)-Y(I)
  2480 IF ABS Y(I)<=ER THEN LET T=T+A
  2490 LET Y(I)=X(I)
  2500 NEXT I
  2510 PAUSE PI**D
  2520 IF T<>M THEN GOTO VAL "2580"
  2530 CLS 
  2540 PRINT ,,"G-S CONVERGED",,"IN ";K;" ITERATIONS."
  2550 GOSUB VAL "2160"
  2560 SLOW 
  2570 RETURN 
  2580 NEXT K
  2590 PRINT "G-S DIDNT CONVERGE"
  2600 SLOW 
  2610 RETURN 
  2630 LET M=TW
  2640 LET N=TR
  2650 GOSUB VAL "1480"
  2660 LET CR=A(A,A)*A(TW,TW)-A(TW,A)*A(A,TW)
  2670 IF NOT CR THEN GOTO VAL "3990"
  2675 DIM X(M)
  2680 LET X(A)=(A(A,TR)*A(TW,TW)-A(TW,TR)*A(A,TW))/CR
  2690 LET X(TW)=(A(A,A)*A(TW,TR)-A(TW,A)*A(A,TR))/CR
  2700 PRINT ,,"CR RESULTS:"
  2710 PRINT ,,"X= ";X(A),"Y= ";X(TW)
  2720 RETURN 
  2740 GOSUB VAL "1400"
  2750 PRINT "INPUT MATRIX ÀBÀ"
  2760 DIM B(M,N)
  2770 FOR I=A TO M
  2780 PRINT "INPUT ROW ";I
  2790 FOR J=A TO N
  2800 INPUT B(I,J)
  2810 NEXT J
  2820 NEXT I
  2830 CLS 
  2840 DIM C(M,N)
  2850 PRINT "ROW COL";TAB 13;"MATRICES"
  2860 PRINT "I   J";TAB 9;"A";TAB 16;"B";TAB 25;"C"
  2870 FOR I=A TO M
  2880 FOR J=A TO N
  2890 IF Z=A THEN LET C(I,J)=A(I,J)+B(I,J)
  2900 IF Z=TW THEN LET C(I,J)=A(I,J)-B(I,J)
  2910 PRINT I;TAB D;J;TAB TR*TR;A(I,J);TAB D*D;B(I,J);TAB 25;C(I,J)
  2920 NEXT J
  2930 NEXT I
  2940 RETURN 
  2960 GOSUB VAL "1400"
  2970 PRINT "COLSFOR B?"
  2980 INPUT P
  2990 DIM B(N,P)
  3000 FOR I=A TO N
  3010 PRINT "INPUT ROW ";I
  3020 FOR J=A TO P
  3030 INPUT B(I,J)
  3040 NEXT J
  3050 NEXT I
  3060 CLS 
  3070 DIM C(M,P)
  3075 PRINT "MATRIX A * B"
  3080 FOR I=A TO M
  3090 FOR J=A TO P
  3100 FOR K=A TO N
  3110 LET C(I,J)=C(I,J)+A(I,K)*B(K,J)
  3120 NEXT K
  3130 NEXT J
  3140 FOR J=A TO P
  3150 PRINT C(I,J);"     ";
  3160 NEXT J
  3170 PRINT 
  3180 NEXT I
  3190 RETURN 
  3210 GOSUB VAL "1400"
  3220 LET DE=A
  3230 GOSUB VAL "1760"
  3240 LET DE=NOT DE
  3250 FOR I=A TO M
  3260 LET S=S*A(I,I)
  3270 NEXT I
  3280 IF CR THEN RETURN 
  3290 PRINT "DETERMINANT=";S
  3300 RETURN 
  3310 GOSUB VAL "1400"
  3320 LET GS=NOT GS
  3330 GOSUB VAL "1760"
  3340 LET GS=NOT GS
  3360 DIM C(M,M)
  3370 FOR I=A TO M
  3380 LET T=ZO
  3390 FOR J=A TO M
  3400 LET C(I,J)=A(I,J)
  3410 LET T=T+C(I,J)*C(I,J)
  3420 NEXT J
  3430 LET T=SQR T
  3440 FOR J=A TO M
  3450 LET C(I,J)=C(I,J)/T
  3460 NEXT J
  3470 NEXT I
  3480 IF Z=D+TW THEN GOTO VAL "3510"
  3490 RETURN 
  3510 FOR I=A TO M
  3520 FOR J=A TO M
  3530 LET A(I,J)=C(I,J)
  3540 NEXT J
  3550 NEXT I
  3560 LET N=M
  3570 LET IL=NOT IL
  3580 GOSUB VAL "1760"
  3590 LET N=M+A
  3600 LET IL=NOT IL
  3610 FOR I=A TO M
  3620 LET S=ABS (S*A(I,I))
  3630 NEXT I
  3645 PRINT ,,"CONDITIONING:",S,,,"THE SYSTEM IS ";("ILL CONDITIONED" AND S<A/D);("OK" AND S>=A/D)
  3670 RETURN 
  3690 PRINT "INPUT NEW DATA?"
  3700 INPUT X
  3710 IF X THEN GOSUB VAL "1400"
  3720 LET CR=A
  3730 CLS 
  3740 GOSUB VAL "1630"
  3750 LET N=M
  3760 FAST 
  3770 GOSUB VAL "3220"
  3780 LET DEN=S
  3790 PRINT "DENOM.=";S
  3800 IF NOT S THEN GOTO VAL "3990"
  3810 DIM X(M)
  3820 FOR V=A TO M
  3830 LET S=A
  3840 LET N=M+A
  3850 GOSUB 1630
  3860 FOR U=A TO M
  3870 LET A(U,V)=A(U,N)
  3880 NEXT U
  3890 LET N=M
  3900 GOSUB 3220
  3910 LET X(V)=S/DEN
  3920 NEXT V
  3930 LET N=M+A
  3940 LET CR=NOT PI
  3950 SLOW 
  3960 PRINT ,,"CR RESULTS:"
  3970 GOTO VAL "2160"
  3990 PRINT "NO SOLUTION BY CR"
  3995 RETURN 
  4010 PRINT "PRINT FROM:",,,,"0.INPUT DATA",,"1. CURVE FIT",,"2. OTHER FUNCTION"
  4020 SLOW 
  4030 INPUT Z
  4040 GOTO (VAL "4050" AND NOT Z)+(VAL "4140" AND Z=A)+(VAL "4120" AND Z=TW)
  4050 GOSUB SC
  4060 PRINT "no–«x","f‹xŒ"
  4070 FOR I=A TO DP
  4080 GOSUB SC
  4090 PRINT I;TAB D;P(I),Y(I)
  4100 NEXT I
  4110 GOTO VAL "4300"
  4120 PRINT "INPUT F(X)"
  4130 INPUT F$
  4140 PRINT "INPUT X START";
  4150 INPUT XS
  4160 PRINT XS
  4170 PRINT "INPUT XSTOP ";
  4180 INPUT XP
  4190 PRINT XP
  4200 PRINT "INPUT  STEP VAL "
  4210 INPUT INC
  4220 CLS 
  4230 IF LS OR Z THEN PRINT AT D*D,D;"F(X)=",F$
  4240 GOSUB SC
  4250 PRINT "x","f‹xŒ"
  4260 FOR X=XS TO XP STEP INC
  4270 GOSUB SC
  4280 PRINT X,VAL F$
  4290 NEXT X
  4300 GOSUB SC
  4309 SCROLL 
  4310 PRINT AT VAL "20",VAL "30";,"INPUT ANY KEY-ÀZÀ TO COPY "
  4320 PAUSE VAL "4E4"
  4330 FAST 
  4340 IF INKEY$="Z" THEN COPY 
  4350 IF LS THEN RETURN 
  4360 LET M=DP
  4370 LET AL=ZO
  4380 LET LS=ZO
  4390 RETURN 
  4410 PRINT "INPUT POSN. OF 1ST X TERM TO BE EVALUATED"
  4420 INPUT POS
  4430 PRINT ,,"FIT REST OF  THE POINTS?"
  4440 INPUT AL
  4445 IF NOT AL THEN GOTO VAL "4500"
  4450 IF AL THEN PRINT "YOU CANTPLOT DIRECTLY.","HERES ALIST :"
  4480 PRINT "INPUT  STEP VAL "
  4490 INPUT INC
  4500 FAST 
  4510 LET POS=POS-A
  4520 LET LAST=POS+DEG
  4530 IF LAST>DP THEN LET DEG=DP-POS
  4540 LET M=DEG
  4550 LET IP=PI
  4560 LET N=M+A
  4570 DIM A(M,N)
  4580 FOR I=A TO M
  4590 LET A(I,N)=Y(I+POS)
  4600 FOR J=A TO M
  4610 LET A(I,J)=A
  4620 NEXT J
  4630 NEXT I
  4640 FOR J=M-A TO A STEP -A
  4650 LET DE=DE+A
  4660 FOR I=A TO M
  4670 FOR K=A TO DE
  4680 LET A(I,J)=A(I,J)*P(I+POS)
  4690 NEXT K
  4700 NEXT I
  4710 NEXT J
  4720 LET DE=ZO
  4730 GOSUB VAL "1750"
  4740 LET IP=ZO
  4750 LET L=M
  4760 FOR I=A TO M/TW
  4770 LET T=X(I)
  4780 LET X(I)=X(L)
  4790 LET X(L)=T
  4800 LET L=L-A
  4810 NEXT I
  4820 LET F$=""
  4830 FOR I=A TO M
  4840 PRINT "X";I;" = ";X(I)
  4850 LET F$=F$+STR$ X(I)+"*X**"+STR$ (I-1)+" "
  4860 IF I<>M THEN LET F$=F$+"+"
  4870 NEXT I
  4880 IF NOT AL THEN GOTO VAL "5486"
  4890 LET XS=P(POS+A)
  4900 LET XP=P(LAST)
  4910 SLOW 
  4920 GOSUB VAL "4230"
  4930 LET POS=LAST
  4940 IF POS=DP THEN GOTO VAL "4360"
  4950 CLS 
  4960 GOTO VAL "4500"
  4990 CLS 
  5000 FAST 
  5010 FOR I=A TO M
  5020 IF Z=A OR Z=TW OR Z=A+D THEN LET U(I)=P(I)
  5030 IF Z=TR OR Z=D AND P(I)>ZO THEN LET U(I)=LN P(I)
  5040 IF Z=A OR Z=TR OR Z=A+D THEN LET V(I)=Y(I)
  5050 IF Z=TW OR Z=D AND Y(I)>ZO THEN LET V(I)=LN Y(I)
  5060 NEXT I
  5090 IF Z AND Z<A+D THEN LET DEG=TW
  5100 LET M=DEG
  5110 LET N=M+A
  5120 DIM A(M,N)
  5130 DIM C(DP,M)
  5140 LET Y2=ZO
  5150 FOR I=A TO DP
  5160 LET C(I,A)=A
  5170 LET Y2=Y2+V(I)*V(I)
  5180 NEXT I
  5190 FOR J=TW TO M
  5200 FOR I=A TO DP
  5210 LET C(I,J)=C(I,J-A)*U(I)
  5220 NEXT I
  5230 NEXT J
  5240 FOR I=A TO M
  5250 FOR J=A TO M
  5260 FOR K=A TO DP
  5270 LET A(I,J)=A(I,J)+C(K,I)*C(K,J)
  5280 NEXT K
  5290 NEXT J
  5300 NEXT I
  5310 FOR I=A TO M
  5320 FOR J=A TO DP
  5330 LET A(I,N)=A(I,N)+C(J,I)*V(J)
  5340 NEXT J
  5350 NEXT I
  5360 DIM C(A)
  5380 LET R=A(TW,N)-(A(TW,A)*A(A,N))/DP
  5390 LET R=R*R
  5400 LET R=R/(((A(TW,TW)-(A(TW,A)*A(TW,A))/DP)*(Y2-(A(A,N)*A(A,N))/DP)))
  5410 LET IP=A
  5420 GOSUB (VAL "2660" AND M=TW)+(VAL "1750" AND M>TW)
  5430 LET IP=ZO
  5440 IF M>TW THEN GOTO VAL "4820"
  5450 LET F$=""
  5460 IF Z=A THEN LET F$=STR$ X(A)+"+X*"+STR$ X(TW)
  5470 IF Z=TW THEN LET F$=STR$ (EXP X(A))+"*EXP (X*"+STR$ X(TW)+")"
  5480 IF Z=TR THEN LET F$=STR$ X(A)+"+LN X*"+STR$ X(TW)
  5485 IF Z=D THEN LET F$=STR$ (EXP X(A))+"*X**"+STR$ X(TW)
  5487 LET RXY=ZO
  5488 LET RY=ZO
  5489 FOR I=A TO DP
  5490 LET X=P(I)
  5491 LET Y=Y(I)
  5492 LET T=VAL F$
  5495 LET RY=RY+(T-Y)*(T-Y)
  5496 LET RXY=RXY+X*(T-Y)*(T-Y)
  5498 NEXT I
  5500 CLS 
  5510 PRINT ,,"F(X)= ";F$
  5520 IF Z THEN PRINT ,,"CORR. COEFF.= ";R
  5522 IF Z THEN PRINT ,,"RESIDUALS",,"YÀS",RY,"XYÀS",RXY
  5530 GOTO VAL "4309"
  5550 PRINT "INPUT START VAL FOR X FIT: ";
  5560 INPUT XS
  5565 PRINT XS
  5570 PRINT "INPUT STOP VAL FOR X FIT: ";
  5580 INPUT XP
  5585 PRINT XP
  5590 PRINT ,,"INPUT POINT DENSITY"
  5600 INPUT PD
  5605 PRINT PD
  5610 FAST 
  5620 LET K=LN VAL "10"
  5630 GOSUB VAL "146"
  5640 LET TXE=(E(A) AND NOT XL)+(LN E(A)/K AND XL)
  5650 LET TYE=(E(TR) AND NOT YL)+(LN E(TR)/K AND YL)
  5680 LET PF=A
  5690 DIM H$(PD+A)
  5700 DIM G$(PD+A)
  5710 LET DF=(XP-XS)/PD
  5720 FOR X=XS TO XP STEP DF
  5730 LET FX=VAL F$
  5740 IF FX<E(TR) OR FX>E(D) THEN GOTO 5860
  5750 LET TX=(X AND NOT XL)+(LN X/K AND XL)
  5770 IF YL THEN LET FX=LN FX/K
  5780 LET TX=(TX-TXE)/DX+12.5
  5790 LET FX=(FX-TYE)/DY+18.5
  5820 IF TX>=254 OR FX>=191 THEN GOTO 5860
  5830 LET H$(PF)=CHR$ TX
  5840 LET G$(PF)=CHR$ FX
  5850 LET PF=PF+A
  5860 NEXT X
  5880 SLOW 
  5890 RETURN 
  5998 PRINT ,,"1) GAUSS QUAD",,"2) SIMP.-DATA",,"3) SIMP.-FUNC.",,"4) ROMBERG"
  6000 INPUT Z
  6001 FAST 
  6002 GOSUB (VAL "6060" AND Z=A)+(VAL "6500" AND Z=TW)+(VAL "6600" AND Z=TR)+(VAL "7200" AND Z=D)
  6003 PAUSE VAL "4E4"
  6004 GOTO VAL "1E3"
  6005 PRINT "INPUT F(X)?"
  6006 INPUT F$
  6007 LET X=(F$<>"")
  6010 PRINT "INTEGRATION",,"INPUT START THEN STOP LIMITS"
  6020 INPUT L
  6030 PRINT L,
  6040 INPUT H
  6050 PRINT H
  6051 RETURN 
  6070 GOSUB VAL "6005"
  6080 DIM S(TR,D)
  6090 DIM T(TR,D)
  6100 LET S(A,A)=A
  6102 LET S(A,TW)=A
  6104 LET S(TW,A)=(A+D)/(TR*TR)
  6106 LET S(TW,TW)=(D+D)/(TR*TR)
  6108 LET S(TW,TR)=S(TW,A)
  6110 LET S(TR,A)=VAL ".65214516"
  6112 LET S(TR,TR)=S(TR,A)
  6114 LET S(TR,TW)=VAL ".34785485"
  6116 LET S(TR,D)=S(TR,TW)
  6120 LET T(A,TW)=A/SQR TR
  6122 LET T(A,A)=-T(A,TW)
  6124 LET T(TW,TR)=SQR (TR/(D+A))
  6126 LET T(TW,A)=-T(TW,TR)
  6128 LET T(TR,TR)=VAL ".33998104"
  6130 LET T(TR,A)=-T(TR,TR)
  6132 LET T(TR,D)=VAL ".86113631"
  6134 LET T(TR,TW)=-T(TR,D)
  6135 PRINT "INPUT NO. OF POINTS 2 TO 4"
  6136 INPUT DEG
  6140 LET DX=(H-L)/TW
  6142 LET FX=ZO
  6150 LET K=DEG-A
  6160 FOR I=A TO DEG
  6180 LET X=((H-L)*T(K,I)+H+L)/TW
  6190 LET FX=FX+S(K,I)*VAL F$
  6210 NEXT I
  6220 LET FX=FX*DX
  6230 PRINT "GAUSS QUAD= ",FX
  6250 RETURN 
  6510 LET FX=ZO
  6520 LET DX=U(TW)-U(A)
  6550 FOR I=A TO DP-TW STEP TW
  6560 LET FX=FX+DX/TR*(Y(I)+D*Y(I+A)+Y(I+TW))
  6570 NEXT I
  6590 PRINT "SIMPSONS AREA = ";FX
  6599 RETURN 
  6610 GOSUB VAL "6005"
  6630 PRINT "INPUT MAX ITERATIONS.(<=8)"
  6635 INPUT IT
  6640 CLS 
  6650 FOR I=A TO IT
  6660 LET DIV=TW**I
  6670 LET AR=ZO
  6680 LET DX=(H-L)/DIV
  6683 LET T=DX/TR
  6690 LET SIM=DIV/TW
  6700 FOR J=A TO SIM
  6705 LET FX=ZO
  6720 LET X=L+TW*(J-A)*DX
  6725 LET FX=VAL F$
  6730 LET X=X+DX
  6732 LET FX=FX+D*VAL F$
  6735 LET X=X+DX
  6740 LET AR=AR+(FX+VAL F$)*T
  6810 NEXT J
  6820 PRINT "FOR ";DIV;" DIVISIONS, AREA =",AR,,
  6830 PAUSE PI**D
  6835 IF Z>TR THEN RETURN 
  6840 NEXT I
  6900 RETURN 
  7210 GOSUB VAL "6005"
  7300 PRINT "INPUT MAX ITERATIONS. (<=6)"
  7310 INPUT IT
  7320 DIM A(IT,IT)
  7325 CLS 
  7330 FOR I=A TO IT
  7340 LET DIV=TW**(I-A)
  7350 LET AR=ZO
  7360 LET DX=(H-L)/DIV
  7365 LET T=DX/TW
  7370 FOR J=A TO DIV
  7375 LET FX=ZO
  7380 LET X=L+(J-A)*DX
  7390 LET FX=FX+VAL F$
  7400 LET X=L+J*DX
  7410 LET AR=AR+(FX+VAL F$)*T
  7420 NEXT J
  7425 LET A(I,A)=AR
  7430 GOSUB 6820
  7450 NEXT I
  7505 CLS 
  7530 FOR J=TW TO IT
  7535 LET T=D**(J-A)
  7540 FOR I=J TO IT
  7560 LET A(I,J)=(T*A(I,J-A)-A(I-A,J-A))/(T-A)
  7570 NEXT I
  7580 NEXT J
  7585 SLOW 
  7590 FOR I=A TO IT
  7595 PRINT 
  7600 FOR J=A TO I
  7610 PRINT A(I,J);"  ";
  7620 NEXT J
  7625 PRINT 
  7630 NEXT I
  7640 FAST 
  7650 RETURN 

# REM 
 16000  REM [HEX:\
76,76,ED,4F,80,80,80,80,\
80,80,80,80,80,80,80,80,\
80,80,80,80,80,80,80,80,\
80,80,80,80,80,80,80,80,\
80,80,80,80,C3,4B,41 ]

Xavier ...on the Facebook groupe : "Zx81 France"(fr)
User avatar
XavSnap
Posts: 1940
Joined: Sat May 10, 2008 4:23 pm
Location: 'Zx81 France' Fb group.

Re: Crippled Software

Post by XavSnap »

ASM WRX:

Code: Select all

;------- TASM ASM mnemonics. -------
; Compile this file using:
; Set TASMOPTS = -b
; tasm -80 ThisCode.tas MyBinary.BIN
;-----------------------------------
; Zx81 Program name: VB81 XuR [SE] : SAVE"SE-HR" Line 990
; REM   line   name: D=16514/19670 : H=4082/4CD6

#define ORG  .org       ; TASM cross-assembler definitions
#define equ  .equ
;-----------------------------------
;- ZX81 CARACTERS CODES ------------
;-----------------------------------
__  .equ $80
__1 .equ $9D
__7 .equ $A3
__8 .equ $A4
__9 .equ $A5
_C   .equ $A8
_M   .equ $B2
_S   .equ $B8
;-----------------------------------

;------- Rom and Ram Symbols -------
RAM_CH_ADD equ $4016
SCANNING equ $0F55
FP_TO_A equ $15CD
RAM_D_FILE equ $400C
DISPLAY_5 equ $02B5
DISPLAY_3 equ $0292
LOOP_11 equ $0216
SLOW equ $0F2B
RAM_VARS equ $4010
NEXT_ONE equ $09F2
STACK_BC equ $1520
MOVE_FP equ $19F6
FP_TO_BC equ $158A
FAST equ $0F23
BREAK_1 equ $0F46
COPY_BRK equ $0880
FIND_INT equ $0EA7
STR_STR equ $1BD5
STK_FETCH equ $13F8
TOKEN_ADD equ $0975
RAM_MEMBOT1D equ $407A
RAM_MEMBOT1A equ $4077
RAM_MEMBOT19 equ $4076


ORG $4082 ; [@16514/@h4082]
.db _C,__,__1,_9,__8,__7,__,_S; ZX-TEXT
.db _M,_C; ZX-TEXT
.db $76,$76; DATA

Lb408E:
	LD BC,$C000 
	CALL Lb46F7 ; [18167]
	JP Lb45B5 ; [17845]
Lb4097:
	LD A,$1E 
	LD I,A 
	LD IX,$0281 
	RET ; ==========================

Lb40A0:
	PUSH AF 
	LD A,(HL) 
	CP $1A ; [26-","]
	JR Z, Lb40AB ; [$40AB:16555]
	CALL Lb4097 ; [16535]
	RST 08H 
.db	$18 ; RST8 Arg: Error Code:'P'
Lb40AB:
	POP AF 
	RET ; ==========================

Lb40AD:
	LD (RAM_CH_ADD),HL ; SET CH-ADD
	CALL SCANNING ; [SCANNING]
	PUSH HL 
	CALL FP_TO_A ; [FP-TO-A]
	POP HL 
	RET ; ==========================

Lb40B9:
	CALL Lb40AD ; [16557]
	PUSH AF 
	CALL Lb40A0 ; [16544]
	INC HL 
	CALL Lb40AD ; [16557]
	LD B,A 
	POP AF 
	LD C,A 
	RET ; ==========================

Lb40C8:
	INC HL 
Lb40C9:
	LD A,(HL) 
	CP $76 ; [118]
	JR Z, Lb40D1 ; [$40D1:16593]
	CP $19 ; [25-";"]
	RET NZ 
Lb40D1:
	LD (RAM_CH_ADD),HL ; SET CH-ADD
	RET ; ==========================

Lb40D5:
	LD H,$00 
	LD D,H 
	LD L,B 
	LD B,$05 
Lb40DB:
	SLA L 
	RL H 
	DJNZ Lb40DB ; [$40DB:16603]
	ADD HL,BC 
	LD BC,$2000 
	ADD HL,BC 
	RET ; ==========================

Lb40E7:
	INC HL 
	CALL Lb40B9 ; [16569]
	CALL Lb40A0 ; [16544]
Lb40EE:
	CALL Lb4109 ; [16649]
Lb40F1:
	LD B,A 
	LD A,C 
	SRL A 
	SRL A 
	SRL A 
	LD D,C 
	LD C,A 
	PUSH DE 
	CALL Lb40D5 ; [16597]
	POP AF 
Lb4100:
	CPL 
	AND $07 
	INC A 
	LD B,A 
	RET ; ==========================

Lb4106:
	LD A,$1F 
	SUB C 
Lb4109:
	JR NC, Lb4110 ; [$4110:16656]
Lb410B:
	CALL Lb4097 ; [16535]
	RST 08H 
.db	$10 ; RST8 Arg: Error Code:'H'
Lb4110:
	LD A,$BF 
	SUB B 
	RET NC 
Lb4114:
	CALL Lb4097 ; [16535]
	RST 08H 
.db	$1E ; RST8 Arg: Error Code:'V'
Lb4119:
	LD HL,$0000 
	LD ($3FC1),HL 
	LD H,$20 
	LD D,H 
	LD E,L 
	INC DE 
	LD BC,$17FF 
	LD (HL),$00 
	LDIR 
	RET ; ==========================

	DI 
	LD A,$06 
	LD B,A 
Lb4130:
	NOP 
	DJNZ Lb4130 ; [$4130:16688]
	ADD A,$F0 
Lb4135:
	INC A 
	JR NZ, Lb4135 ; [$4135:16693]
	LD B,$C0 
	.db $"_",$"_",$"_"  ; DATAS

	LD B,(HL) 
	JR Z, Lb4142 ; [$4142:16706]
	LD B,$B0 
Lb4142:
	LD DE,$0020 
	LD HL,$2000 
	JP Lb4152 ; [16722]
	NOP 
	NOP 
	DEC B 
	JP Z, Lb4159 ; [16729]
	ADD HL,DE 
Lb4152:
	LD A,H 
	LD I,A 
	LD A,L 
Lb4156:
	JP $FCA6 ; [64678]
Lb4159:
	LD HL,(RAM_D_FILE) ; GET D-FILE
	NOP 
	LD A,A 
	LD A,A 
	LD A,A 
	LD DE,$82F7 
	ADD HL,DE 
	LD A,$1E 
	LD I,A 
	LD A,$F5 
	LD BC,$0207 
	.db $"_",$"_",$"_"  ; DATAS

	LD B,(HL) 
	CALL NZ,DISPLAY_5 ; [DISPLAY-5]
	CALL DISPLAY_3 ; [DISPLAY-3]
	CALL LOOP_11+10 ; []*BIOS ROM*
	LD IX,$412C 
	JP DISPLAY_3+18 ; []*BIOS ROM*
Lb4181:
	.db $"_",$"_",$"_"  ; DATAS

	ADD A,(HL) 
	JR Lb418B ; [$418B:16779]
Lb4187:
	.db $"_",$"_",$"_"  ; DATAS

	ADD A,$2A 
	INC C 
	LD B,B 
	LD BC,$0025 
	SBC HL,BC 
	DEC HL 
	EX DE,HL 
	LD HL,$8000 
	ADD HL,DE 
	LD (Lb4156+1),HL 
	EX DE,HL 
	LDIR 
	CALL SLOW ; [SLOW]
	LD IX,$412C 
	RET ; ==========================

Lb41A7:
	INC HL 
	CALL Lb40B9 ; [16569]
	CALL Lb40A0 ; [16544]
	LD C,B 
	LD B,A 
	CALL Lb4106 ; [16646]
	PUSH BC 
	INC HL 
	CALL Lb40AD ; [16557]
	POP BC 
	CALL Lb40D5 ; [16597]
	LD (HL),A 
	RET ; ==========================

Lb41BE:
	LD E,$FF 
	JR Lb41C4 ; [$41C4:16836]
Lb41C2:
	LD E,$00 
Lb41C4:
	PUSH DE 
	INC HL 
	CALL Lb40B9 ; [16569]
	CALL Lb4109 ; [16649]
	POP DE 
	LD ($3FC3),BC 
Lb41D1:
	CALL Lb40F1 ; [16625]
	LD D,B 
	LD A,(HL) 
Lb41D6:
	RRCA 
	DJNZ Lb41D6 ; [$41D6:16854]
	RR E 
	RLA 
	LD B,D 
	DEC B 
	JR NZ, Lb41E2 ; [$41E2:16866]
	LD B,$08 
Lb41E2:
	RLCA 
	DJNZ Lb41E2 ; [$41E2:16866]
	LD (HL),A 
	RET ; ==========================

Lb41E7:
	LD A,$FF 
	JR Lb41EC ; [$41EC:16876]
Lb41EB:
	XOR A 
Lb41EC:
	LD ($3FC5),A 
	.db $"_",$"_",$"_"  ; DATAS

	ADC A,(HL) 
	INC HL 
	CALL Lb40B9 ; [16569]
	CALL Lb4109 ; [16649]
	LD A,(HL) 
	CP $1A ; [26-","]
	JR NZ, Lb420A ; [$420A:16906]
	INC HL 
	LD ($3FC3),BC 
	CALL Lb40B9 ; [16569]
	CALL Lb4109 ; [16649]
Lb420A:
	LD H,B 
	LD L,C 
Lb420C:
	LD BC,($3FC3) 
	PUSH BC 
	LD A,L 
	SUB C 
	LD D,$01 
	JR NC, Lb421B ; [$421B:16923]
	NEG 
	LD D,$FF 
Lb421B:
	JR NZ, Lb421F ; [$421F:16927]
	LD D,$00 
Lb421F:
	PUSH HL 
	LD H,A 
	LD A,D 
	LD ($3FD0),A 
	POP AF 
	SUB B 
	LD E,$01 
	JR NC, Lb422F ; [$422F:16943]
	NEG 
	LD E,$FF 
Lb422F:
	JR NZ, Lb4233 ; [$4233:16947]
	LD E,$00 
Lb4233:
	LD L,A 
	LD A,E 
	LD ($3FCF),A 
	LD A,L 
	CP H 
	JR C, Lb4242 ; [$4242:16962]
	LD L,H 
	LD H,A 
	LD D,$00 
	JR Lb4244 ; [$4244:16964]
Lb4242:
	LD E,$00 
Lb4244:
	LD ($3FD1),DE 
	LD ($3FD3),HL 
	LD A,H 
	AND A 
	RRA 
	LD L,A 
	LD H,$00 
	LD ($3FD5),HL 
	POP BC 
Lb4255:
	PUSH BC 
	LD A,$BF 
	SUB B 
	PUSH AF 
	LD A,($3FC5) 
	LD E,A 
	POP AF 
	.db $"_",$"_",$"_"  ; DATAS

	LD C,(HL) 
	JR NZ, Lb426A ; [$426A:17002]
	CALL Lb41D1 ; [16849]
	JR Lb426D ; [$426D:17005]
Lb426A:
	CALL Lb4B43 ; [19267]
Lb426D:
	LD A,($3FD3) 
	LD C,A 
	LD B,$00 
	LD A,($3FD5) 
	LD L,A 
	LD H,B 
	ADD HL,BC 
	LD A,L 
	LD ($3FD5),A 
	LD DE,($3FD1) 
	LD A,($3FD4) 
	LD C,A 
	SBC HL,BC 
	JR C, Lb4291 ; [$4291:17041]
	LD A,L 
	LD ($3FD5),A 
	LD DE,($3FCF) 
Lb4291:
	POP BC 
	LD A,C 
	ADD A,D 
	LD C,A 
	LD A,B 
	ADD A,E 
	LD B,A 
	LD HL,$3FD6 
	INC (HL) 
	LD A,($3FD4) 
	CP (HL) 
	JR NZ, Lb4255 ; [$4255:16981]
	LD ($3FC3),BC 
	RET ; ==========================

Lb42A7:
	LD A,$FF 
	JR Lb42AC ; [$42AC:17068]
Lb42AB:
	XOR A 
Lb42AC:
	LD ($3FC5),A 
	INC HL 
	CALL Lb40B9 ; [16569]
	CALL Lb40A0 ; [16544]
	PUSH BC 
	INC HL 
	CALL Lb40AD ; [16557]
	LD H,A 
	LD L,$00 
	LD ($3FCF),HL 
	LD H,L 
	LD ($3FD1),HL 
	POP BC 
	LD A,$01 
Lb42C8:
	PUSH AF 
	PUSH BC 
	PUSH BC 
	LD HL,($3FCF) 
	LD DE,($3FD1) 
	LD B,$05 
	PUSH BC 
Lb42D5:
	SRA D 
	RR E 
	DJNZ Lb42D5 ; [$42D5:17109]
	OR A 
	SBC HL,DE 
	LD ($3FCF),HL 
	LD DE,($3FD1) 
	POP BC 
Lb42E6:
	SRA H 
	RR L 
	DJNZ Lb42E6 ; [$42E6:17126]
	ADD HL,DE 
	LD ($3FD1),HL 
	LD DE,($3FCF) 
	POP BC 
	LD A,C 
	RL E 
	ADC A,D 
	LD C,A 
	LD A,B 
	RL L 
	ADC A,H 
	LD B,A 
	LD A,$BF 
	SUB B 
	JR C, Lb430D ; [$430D:17165]
	PUSH AF 
	LD A,($3FC5) 
	LD E,A 
	POP AF 
	CALL Lb41D1 ; [16849]
Lb430D:
	POP BC 
	POP AF 
	INC A 
	CP $CA ; [202]
	JR C, Lb42C8 ; [$42C8:17096]
	RET ; ==========================

Lb4315:
	LD A,$01 
	LD ($3FCF),A 
	CALL Lb40C8 ; [16584]
	RET Z 
	CALL Lb40AD ; [16557]
	LD ($3FCF),A 
	CALL Lb40C9 ; [16585]
	RET Z 
Lb4328:
	INC HL 
	CALL Lb40B9 ; [16569]
	CALL Lb40A0 ; [16544]
	CP B 
	JR C, Lb4335 ; [$4335:17205]
	LD A,B 
	LD B,C 
	LD C,A 
Lb4335:
	CALL Lb4110 ; [16656]
	LD D,B 
	LD B,C 
	CALL Lb4110 ; [16656]
	LD A,D 
	LD B,D 
	LD ($3FD0),BC 
	SUB C 
	INC A 
	PUSH AF 
	INC HL 
	CALL Lb40B9 ; [16569]
	CP B 
	JR NC, Lb4350 ; [$4350:17232]
	LD A,B 
	LD B,C 
	LD C,A 
Lb4350:
	LD ($3FD2),BC 
	SUB B 
	INC A 
	JR NZ, Lb4359 ; [$4359:17241]
	DEC A 
Lb4359:
	POP DE 
	LD E,A 
	LD ($3FD4),DE 
	LD A,($3FD3) 
	LD C,A 
	LD A,($3FD1) 
	LD B,A 
	AND A 
	CALL Lb40EE ; [16622]
	LD ($3FD6),HL 
	LD A,($3FD2) 
	LD C,A 
	LD A,($3FD1) 
	LD B,A 
	AND A 
	CALL Lb40EE ; [16622]
	LD ($3FD8),HL 
	INC C 
	RET ; ==========================

Lb437F:
	CALL Lb4315 ; [17173]
	JR NZ, Lb439B ; [$439B:17307]
	LD A,($3FCF) 
	LD D,A 
Lb4388:
	LD HL,$2000 
	LD BC,$1800 
Lb438E:
	LD A,(HL) 
	CPL 
	LD (HL),A 
	INC HL 
	DEC BC 
	LD A,B 
	OR C 
	JR NZ, Lb438E ; [$438E:17294]
	DEC D 
	JR NZ, Lb4388 ; [$4388:17288]
	RET ; ==========================

Lb439B:
	LD A,($3FD5) 
	LD HL,($3FD6) 
	LD DE,($3FD8) 
	LD ($3FDA),HL 
	LD ($3FDC),DE 
Lb43AC:
	PUSH AF 
	PUSH HL 
	SBC HL,DE 
	POP HL 
	JR Z, Lb440D ; [$440D:17421]
	LD A,($3FD3) 
	CALL Lb4100 ; [16640]
	PUSH DE 
	PUSH BC 
	LD A,(HL) 
Lb43BC:
	RRA 
	CCF 
	RL E 
	DJNZ Lb43BC ; [$43BC:17340]
	POP BC 
Lb43C3:
	RR E 
	RLA 
	DJNZ Lb43C3 ; [$43C3:17347]
	LD (HL),A 
	POP DE 
Lb43CA:
	INC HL 
	PUSH HL 
	AND A 
	SBC HL,DE 
	POP HL 
	JR Z, Lb43D7 ; [$43D7:17367]
	LD A,(HL) 
	CPL 
	LD (HL),A 
	JR Lb43CA ; [$43CA:17354]
Lb43D7:
	LD A,($3FD2) 
	CALL Lb4100 ; [16640]
	LD A,$09 
	SUB B 
	LD B,A 
	PUSH BC 
	LD A,(DE) 
Lb43E3:
	RLA 
	CCF 
	RR L 
	DJNZ Lb43E3 ; [$43E3:17379]
	POP BC 
Lb43EA:
	RL L 
	RRA 
	DJNZ Lb43EA ; [$43EA:17386]
Lb43EF:
	LD (DE),A 
	LD BC,$0020 
	LD HL,($3FDC) 
	ADD HL,BC 
	LD ($3FDC),HL 
	EX DE,HL 
	LD HL,($3FDA) 
	ADD HL,BC 
	LD ($3FDA),HL 
	POP AF 
	DEC A 
	JR NZ, Lb43AC ; [$43AC:17324]
	LD HL,$3FCF 
	DEC (HL) 
	JR NZ, Lb439B ; [$439B:17307]
	RET ; ==========================

Lb440D:
	LD A,($3FD4) 
	CP $08 ; [8]
	JR NZ, Lb4418 ; [$4418:17432]
	LD A,(DE) 
	CPL 
	JR Lb43EF ; [$43EF:17391]
Lb4418:
	LD A,($3FD3) 
	CALL Lb4100 ; [16640]
	PUSH BC 
	LD A,(DE) 
Lb4420:
	RRA 
	CCF 
	RL L 
	DJNZ Lb4420 ; [$4420:17440]
	POP BC 
Lb4427:
	RR L 
	RLA 
	DJNZ Lb4427 ; [$4427:17447]
	LD H,A 
	LD A,($3FD2) 
	CPL 
	AND $07 
	JR Z, Lb4442 ; [$4442:17474]
	LD B,A 
	LD A,(DE) 
	PUSH BC 
Lb4438:
	RRCA 
	RR H 
	DJNZ Lb4438 ; [$4438:17464]
	POP BC 
Lb443E:
	RLC H 
	DJNZ Lb443E ; [$443E:17470]
Lb4442:
	LD A,H 
	JR Lb43EF ; [$43EF:17391]
Lb4445:
	LD HL,(RAM_VARS) ; GET VARS
Lb4448:
	LD A,(HL) 
	CP C 
	RET Z 
	CP $80 ; [128]
	JR NZ, Lb4454 ; [$4454:17492]
	CALL Lb4097 ; [16535]
	RST 08H 
.db	$01 ; RST8 Arg: Error Code:'2'
Lb4454:
	PUSH BC 
	CALL NEXT_ONE ; [NEXT-ONE]
	POP BC 
	EX DE,HL 
	JR Lb4448 ; [$4448:17480]
Lb445C:
	PUSH AF 
	RST 20H 
	PUSH HL 
	LD C,$40 
	ADD A,C 
	LD C,A 
	CALL Lb4445 ; [17477]
	INC HL 
	PUSH HL 
	LD B,$05 
	XOR A 
Lb446B:
	LD (HL),A 
	DJNZ Lb446B ; [$446B:17515]
	POP DE 
	POP HL 
	POP AF 
	RET ; ==========================

Lb4472:
	CALL Lb40E7 ; [16615]
	LD A,(HL) 
Lb4476:
	RRCA 
	DJNZ Lb4476 ; [$4476:17526]
	CALL Lb445C ; [17500]
	JR NC, Lb4481 ; [$4481:17537]
	LD A,$81 
	LD (DE),A 
Lb4481:
	CALL Lb40C8 ; [16584]
	JP NZ, Lb4BD0 ; [19408]
	RET ; ==========================

Lb4488:
	CALL Lb40E7 ; [16615]
	PUSH HL 
	POP BC 
Lb448D:
	CALL STACK_BC ; []*BIOS ROM*
	PUSH HL 
	CALL Lb445C ; [17500]
	POP BC 
	PUSH HL 
	LD H,B 
	LD L,C 
	CALL MOVE_FP ; []*BIOS ROM*
	CALL FP_TO_BC ; [FP-TO-BC]
	POP HL 
	JR Lb4481 ; [$4481:17537]
Lb44A1:
	CALL Lb40E7 ; [16615]
	LD C,(HL) 
	LD B,$00 
	JR Lb448D ; [$448D:17549]
Lb44A9:
	LD C,A 
	LD A,(HL) 
	LD B,A 
	LD A,$BF 
	SUB B 
Lb44AF:
	PUSH DE 
	PUSH BC 
	PUSH AF 
	CALL Lb41D1 ; [16849]
	POP AF 
	POP BC 
	POP DE 
	RET ; ==========================

Lb44B9:
	LD E,$FF 
	JR Lb44BF ; [$44BF:17599]
Lb44BD:
	LD E,$00 
Lb44BF:
	PUSH DE 
	CALL Lb4328 ; [17192]
	POP DE 
	LD A,($3FD5) 
	LD D,A 
	LD A,($3FD3) 
	LD HL,$3FD1 
	PUSH AF 
	PUSH HL 
	CALL Lb44A9 ; [17577]
Lb44D3:
	DEC D 
	JR Z, Lb44DC ; [$44DC:17628]
	INC A 
	CALL Lb44AF ; [17583]
	JR Lb44D3 ; [$44D3:17619]
Lb44DC:
	LD A,($3FD4) 
	LD D,A 
	POP HL 
	POP AF 
	DEC HL 
	PUSH HL 
	CALL Lb44A9 ; [17577]
Lb44E7:
	DEC D 
	JR Z, Lb44F0 ; [$44F0:17648]
	INC C 
	CALL Lb44AF ; [17583]
	JR Lb44E7 ; [$44E7:17639]
Lb44F0:
	LD A,($3FD5) 
	LD D,A 
	POP HL 
	LD A,($3FD2) 
	PUSH AF 
	PUSH HL 
	CALL Lb44A9 ; [17577]
Lb44FD:
	DEC D 
	JR Z, Lb4506 ; [$4506:17670]
	DEC A 
	CALL Lb44AF ; [17583]
	JR Lb44FD ; [$44FD:17661]
Lb4506:
	LD A,($3FD4) 
	LD D,A 
	POP HL 
	POP AF 
	INC HL 
	CALL Lb44A9 ; [17577]
Lb4510:
	DEC D 
	RET Z 
	DEC C 
	CALL Lb44AF ; [17583]
	JR Lb4510 ; [$4510:17680]
Lb4518:
	CALL FAST ; [FAST]
	LD E,$C0 
	.db $"_",$"_",$"_"  ; DATAS

	LD B,(HL) 
	JR Z, Lb4525 ; [$4525:17701]
	LD E,$B0 
Lb4525:
	LD HL,$2000 
Lb4528:
	XOR A 
	OUT ($FB),A ; ZxPrinter port
	CALL BREAK_1 ; [BREAK-1]
	JP NC,  COPY_BRK+5 ; []*BIOS ROM*
Lb4531:
	IN A,($FB) ; ZxPrinter Port.
	RLA 
	JR NC, Lb4531 ; [$4531:17713]
	LD D,$20 
Lb4538:
	LD B,$08 
	LD C,(HL) 
Lb453B:
	IN A,($FB) ; ZxPrinter Port.
	RRA 
	JR NC, Lb453B ; [$453B:17723]
	LD A,C 
	AND $80 
	OUT ($FB),A ; ZxPrinter port
	RL C 
	DJNZ Lb453B ; [$453B:17723]
	INC HL 
	DEC D 
	JR NZ, Lb4538 ; [$4538:17720]
Lb454D:
	IN A,($FB) ; ZxPrinter Port.
	RRA 
	JR NC, Lb454D ; [$454D:17741]
	CALL Lb4B70 ; [19312]
	JR Lb4528 ; [$4528:17704]
Lb4557:
	INC HL 
	LD (RAM_CH_ADD),HL ; SET CH-ADD
	CALL SCANNING ; [SCANNING]
	CALL FIND_INT ; [FIND-INT]
	LD D,B 
	LD E,C 
Lb4563:
	LD BC,$C801 
Lb4566:
	SRL E, (IY+70) 
	RET NZ 
	DJNZ Lb4566 ; [$4566:17766]
	DEC C 
	JR NZ, Lb4566 ; [$4566:17766]
	DEC DE 
	LD A,D 
	OR E 
	JR NZ, Lb4563 ; [$4563:17763]
	RET ; ==========================

Lb4576:
	INC HL 
	LD A,(HL) 
	CP $76 ; [118]
	JR NZ, Lb4585 ; [$4585:17797]
	CALL Lb45D9 ; [17881]
	CALL Lb46F7 ; [18167]
	JR Lb45B5 ; [$45B5:17845]
Lb4584:
	INC HL 
Lb4585:
	LD A,(HL) 
	CP $1A ; [26-","]
	JR Z, Lb459C ; [$459C:17820]
	CP $19 ; [25-";"]
	JR Z, Lb45BA ; [$45BA:17850]
	CP $76 ; [118]
	JR Z, Lb45D9 ; [$45D9:17881]
Lb4592:
	CP $C1 ; [193]
	JR Z, Lb45DF ; [$45DF:17887]
	CP $C2 ; [194]
	JR Z, Lb45F6 ; [$45F6:17910]
	JR Lb460A ; [$460A:17930]
Lb459C:
	LD BC,($3FC1) 
	LD A,C 
	AND $F0 
	ADD A,$10 
	CP $40 ; [64]
	CALL NZ, Lb45B4 ; [17844]
	CALL Z, Lb45AF ; [17839]
	JR Lb4584 ; [$4584:17796]
Lb45AF:
	LD A,B 
	ADD A,$08 
	LD B,A 
	XOR A 
Lb45B4:
	LD C,A 
Lb45B5:
	LD ($3FC1),BC 
	RET ; ==========================

Lb45BA:
	LD B,$FF 
Lb45BC:
	INC HL 
	LD A,(HL) 
	CP $76 ; [118]
	RET Z 
	CP $1A ; [26-","]
	JR NZ, Lb45C9 ; [$45C9:17865]
	LD A,$04 
	JR Lb45D4 ; [$45D4:17876]
Lb45C9:
	CP $19 ; [25-";"]
	JR NZ, Lb4592 ; [$4592:17810]
	INC B 
	LD A,B 
	CP $03 ; [3]
	JP Z, Lb4BD0 ; [19408]
Lb45D4:
	LD ($3FC0),A 
	JR Lb45BC ; [$45BC:17852]
Lb45D9:
	LD BC,($3FC1) 
	JR Lb45AF ; [$45AF:17839]
Lb45DF:
	INC HL 
	CALL Lb40B9 ; [16569]
	LD C,B 
	LD B,A 
	CP $B9 ; [185-"T"]
	JP NC, Lb4114 ; [16660]
	LD A,C 
	CP $40 ; [64]
	JP NC, Lb410B ; [16651]
Lb45F0:
	LD ($3FC1),BC 
Lb45F4:
	JR Lb4585 ; [$4585:17797]
Lb45F6:
	INC HL 
	CALL Lb40AD ; [16557]
	AND $3F 
	LD BC,($3FC1) 
	CP C 
	LD C,A 
	JR NC, Lb45F0 ; [$45F0:17904]
	LD A,$08 
	ADD A,B 
	LD B,A 
	JR Lb45F0 ; [$45F0:17904]
Lb460A:
	LD (RAM_CH_ADD),HL ; SET CH-ADD
	CALL SCANNING ; [SCANNING]
	PUSH HL 
	RLC C, (IY+118) 
	CALL NZ,STR_STR ; []*BIOS ROM*
	CALL STK_FETCH ; [STK-FETCH]
	POP HL 
	PUSH HL 
Lb461D:
	LD A,B 
	OR C 
	JR Z, Lb462D ; [$462D:17965]
	LD A,(DE) 
	PUSH BC 
	PUSH DE 
	CALL Lb4630 ; [17968]
	POP DE 
	POP BC 
	INC DE 
	DEC BC 
	JR Lb461D ; [$461D:17949]
Lb462D:
	POP HL 
	JR Lb45F4 ; [$45F4:17908]
Lb4630:
	CP $C0 ; [192]
	JR NZ, Lb4638 ; [$4638:17976]
	LD A,$0B 
	JR Lb4672 ; [$4672:18034]
Lb4638:
	PUSH AF 
	AND $7F 
	CP $40 ; [64]
	JR NC, Lb4646 ; [$4646:17990]
	POP AF 
	RLC C, (IY-58) 
	JR Lb4672 ; [$4672:18034]
Lb4646:
	RLC C, (IY+70) 
	JR Z, Lb4656 ; [$4656:18006]
	XOR A 
	RLC C, (IY-122) 
	CALL Lb4672 ; [18034]
	JR Lb465A ; [$465A:18010]
Lb4656:
	RLC C, (IY-58) 
Lb465A:
	POP AF 
	CALL TOKEN_ADD ; [TOKEN-ADD]
Lb465E:
	LD A,(BC) 
	PUSH AF 
	PUSH BC 
	AND $7F 
	CALL Lb4672 ; [18034]
	POP BC 
	INC BC 
	POP AF 
	CP $80 ; [128]
	JR C, Lb465E ; [$465E:18014]
	RLC C, (IY-122) 
	XOR A 
Lb4672:
	LD BC,($3FC1) 
	PUSH AF 
	LD A,$3F 
	SUB C 
	CALL C, Lb45AF ; [17839]
	CALL Lb46F7 ; [18167]
	POP AF 
	PUSH BC 
	LD ($3FDB),A 
	AND A 
	RLA 
	AND A 
	RLA 
	RLA 
	LD D,$00 
	RL D 
	LD E,A 
	LD HL,$1E00 
	ADD HL,DE 
	PUSH HL 
	SRL C 
	CALL Lb40D5 ; [16597]
	POP DE 
	LD A,($3FC0) 
	CP $04 ; [4]
	JP Z, Lb4BD0 ; [19408]
	CP $02 ; [2]
	JR Z, Lb46E9 ; [$46E9:18153]
	CP $01 ; [1]
	JR Z, Lb46D5 ; [$46D5:18133]
Lb46AA:
	LD A,$08 
Lb46AC:
	PUSH AF 
	PUSH DE 
	LD A,(DE) 
	PUSH AF 
	LD A,($3FC0) 
	AND A 
	JR NZ, Lb46C1 ; [$46C1:18113]
	LD A,($3FDB) 
	BIT 7,A 
	JR Z, Lb46C1 ; [$46C1:18113]
	POP AF 
	CPL 
	JR Lb46C2 ; [$46C2:18114]
Lb46C1:
	POP AF 
Lb46C2:
	LD (HL),A 
	LD DE,$0020 
	ADD HL,DE 
	POP DE 
	POP AF 
	INC DE 
	DEC A 
	JR NZ, Lb46AC ; [$46AC:18092]
	POP BC 
	INC C 
	INC C 
	LD ($3FC1),BC 
	RET ; ==========================

Lb46D5:
	LD A,($3FDB) 
	CP $26 ; [38-"A"]
	JR C, Lb46AA ; [$46AA:18090]
	CP $A6 ; [166-"A"]
	JR NC, Lb46AA ; [$46AA:18090]
	PUSH HL 
	LD HL,$1E00 
Lb46E4:
	ADD HL,DE 
	EX DE,HL 
	POP HL 
	JR Lb46AA ; [$46AA:18090]
Lb46E9:
	LD A,($3FDB) 
	RLCA 
	PUSH HL 
	LD HL,$1C00 
	JR C, Lb46E4 ; [$46E4:18148]
	LD H,$1A 
	JR Lb46E4 ; [$46E4:18148]
Lb46F7:
	.db $"_",$"_",$"_"  ; DATAS

	LD B,(HL) 
	LD A,$B8 
	JR Z, Lb4701 ; [$4701:18177]
	LD A,$A8 
Lb4701:
	CP B 
	RET NC 
	LD D,A 
	LD A,B 
	AND $07 
	ADD A,D 
	LD B,A 
	PUSH BC 
	LD DE,$2000 
	LD HL,$2100 
	SRL B 
	SRL B 
	SRL B 
	LD C,E 
	LDIR 
Lb4719:
	DEC HL 
	LD (HL),C 
	DJNZ Lb4719 ; [$4719:18201]
	POP BC 
	RET ; ==========================

Lb471F:
	CALL Lb40C8 ; [16584]
Lb4722:
	LD A,$17 
	JR Z, Lb4729 ; [$4729:18217]
	CALL Lb40AD ; [16557]
Lb4729:
	LD DE,$0000 
	INC A 
Lb472D:
	LD HL,($3FC1) 
	PUSH HL 
	LD ($3FC1),DE 
	LD DE,(RAM_D_FILE) ; GET D-FILE
Lb4739:
	INC DE 
	PUSH AF 
	LD B,$20 
Lb473D:
	LD A,(DE) 
	PUSH BC 
	PUSH DE 
	CALL Lb4672 ; [18034]
	POP DE 
	POP BC 
	INC DE 
	DJNZ Lb473D ; [$473D:18237]
	POP AF 
	DEC A 
	JR NZ, Lb4739 ; [$4739:18233]
	POP HL 
	LD ($3FC1),HL 
	RET ; ==========================

Lb4751:
	CALL Lb40C8 ; [16584]
	JR Z, Lb4722 ; [$4722:18210]
	CALL Lb40AD ; [16557]
	INC A 
	PUSH AF 
	LD B,A 
	LD A,$C0 
Lb475E:
	SUB $08 
	DJNZ Lb475E ; [$475E:18270]
	LD D,A 
	LD E,B 
	POP AF 
	JR Lb472D ; [$472D:18221]
Lb4767:
	INC HL 
	CALL Lb40B9 ; [16569]
	CALL Lb4109 ; [16649]
	CALL Lb40A0 ; [16544]
	RET ; ==========================

Lb4772:
	LD A,$FF 
	JR Lb4777 ; [$4777:18295]
Lb4776:
	XOR A 
Lb4777:
	LD ($3FC5),A 
	.db $"_",$"_",$"_"  ; DATAS

	ADC A,(HL) 
	CALL Lb4767 ; [18279]
	LD ($3FD7),BC 
	LD HL,(RAM_CH_ADD) ; GET CH-ADD
	CALL Lb4767 ; [18279]
	LD ($3FD9),BC 
	LD HL,(RAM_CH_ADD) ; GET CH-ADD
	INC HL 
	CALL Lb40B9 ; [16569]
	CALL Lb4109 ; [16649]
	LD ($3FDB),BC 
	LD HL,($3FC3) 
	PUSH HL 
	LD ($3FC3),BC 
	LD HL,($3FD9) 
	PUSH HL 
	CALL Lb420C ; [16908]
	POP HL 
	LD ($3FC3),HL 
	LD HL,($3FD7) 
	PUSH HL 
	CALL Lb420C ; [16908]
	POP HL 
	LD ($3FC3),HL 
	LD HL,($3FDB) 
	CALL Lb420C ; [16908]
	POP HL 
	LD ($3FC3),HL 
	RET ; ==========================

Lb47C6:
	CALL Lb4315 ; [17173]
	JR NZ, Lb47E6 ; [$47E6:18406]
	LD A,($3FCF) 
Lb47CE:
	LD HL,$2000 
	LD D,H 
	LD E,L 
	LD BC,$0020 
	ADD HL,BC 
	LD BC,$17E0 
	LDIR 
	LD B,$20 
Lb47DE:
	DEC HL 
	LD (HL),C 
	DJNZ Lb47DE ; [$47DE:18398]
	DEC A 
	JR NZ, Lb47CE ; [$47CE:18382]
	RET ; ==========================

Lb47E6:
	LD A,($3FD1) 
	CP $00 ; [0]
	JR Z, Lb4841 ; [$4841:18497]
	LD B,A 
	LD A,($3FD3) 
	LD C,A 
Lb47F2:
	PUSH BC 
Lb47F3:
	LD A,$BF 
	SUB B 
	PUSH BC 
	PUSH AF 
	INC A 
	PUSH BC 
	CALL Lb40F1 ; [16625]
	POP DE 
	LD A,$08 
	CP B 
	JR NZ, Lb481A ; [$481A:18458]
	LD A,($3FD2) 
	SUB E 
	CP $08 ; [8]
	JR C, Lb481A ; [$481A:18458]
	LD A,(HL) 
	LD BC,$0020 
	SBC HL,BC 
	LD (HL),A 
	POP AF 
	POP BC 
	LD A,C 
	ADD A,$08 
	LD C,A 
	JR Lb47F3 ; [$47F3:18419]
Lb481A:
	LD A,(HL) 
Lb481B:
	RRCA 
	DJNZ Lb481B ; [$481B:18459]
	LD E,$FF 
	JR C, Lb4823 ; [$4823:18467]
	INC E 
Lb4823:
	POP AF 
	POP BC 
	PUSH BC 
	CALL Lb41D1 ; [16849]
	POP BC 
	LD D,B 
	LD B,$00 
	LD A,($3FD2) 
	LD H,B 
	LD L,A 
	INC BC 
	AND A 
	SBC HL,BC 
	LD B,D 
	JR NC, Lb47F3 ; [$47F3:18419]
	POP BC 
	DEC B 
	LD A,($3FD0) 
	CP B 
	JR NZ, Lb47F2 ; [$47F2:18418]
Lb4841:
	LD A,($3FD0) 
	LD B,A 
	LD HL,($3FD3) 
	LD A,$FF 
	CP H 
	JR NZ, Lb484E ; [$484E:18510]
	INC H 
Lb484E:
	LD C,L 
Lb484F:
	PUSH HL 
	PUSH BC 
	LD A,$BF 
	SUB B 
	LD E,$00 
	CALL Lb41D1 ; [16849]
	POP BC 
	INC C 
	POP HL 
	DEC H 
	JR NZ, Lb484F ; [$484F:18511]
	LD HL,$3FCF 
	DEC (HL) 
	JR NZ, Lb47E6 ; [$47E6:18406]
	RET ; ==========================

Lb4866:
	CALL Lb4315 ; [17173]
	JR NZ, Lb4887 ; [$4887:18567]
	LD A,($3FCF) 
Lb486E:
	LD HL,$37FF 
	LD D,H 
	LD E,L 
	LD BC,$0020 
	SBC HL,BC 
	LD BC,$17E0 
	LDDR 
	LD B,$20 
Lb487F:
	INC HL 
	LD (HL),C 
	DJNZ Lb487F ; [$487F:18559]
	DEC A 
	JR NZ, Lb486E ; [$486E:18542]
	RET ; ==========================

Lb4887:
	LD A,($3FD0) 
	CP $BF ; [191]
	JR Z, Lb48E5 ; [$48E5:18661]
	LD B,A 
	LD A,($3FD3) 
	LD C,A 
Lb4893:
	PUSH BC 
Lb4894:
	LD A,$BF 
	SUB B 
	PUSH BC 
	PUSH AF 
	DEC A 
	PUSH BC 
	CALL Lb40F1 ; [16625]
	POP DE 
	LD A,$08 
	CP B 
	JR NZ, Lb48BA ; [$48BA:18618]
	LD A,($3FD2) 
	SUB E 
	CP $08 ; [8]
	JR C, Lb48BA ; [$48BA:18618]
	LD A,(HL) 
	LD BC,$0020 
	ADD HL,BC 
	LD (HL),A 
	POP AF 
	POP BC 
	LD A,C 
	ADD A,$08 
	LD C,A 
	JR Lb4894 ; [$4894:18580]
Lb48BA:
	LD A,(HL) 
Lb48BB:
	RRCA 
	DJNZ Lb48BB ; [$48BB:18619]
	LD E,$FF 
	JR C, Lb48C3 ; [$48C3:18627]
	INC E 
Lb48C3:
	POP AF 
	POP BC 
	PUSH BC 
	CALL Lb41D1 ; [16849]
	POP BC 
	LD D,B 
	LD B,$00 
	LD A,($3FD2) 
	LD H,B 
	LD L,A 
	INC BC 
	AND A 
	SBC HL,BC 
	LD B,D 
	JR NC, Lb4894 ; [$4894:18580]
	POP BC 
	INC B 
	LD A,($3FD1) 
	CP $00 ; [0]
	JR Z, Lb48E5 ; [$48E5:18661]
	CP B 
	JR NZ, Lb4893 ; [$4893:18579]
Lb48E5:
	LD A,($3FD1) 
	LD B,A 
	LD HL,($3FD3) 
	LD A,$FF 
	CP H 
	JR NZ, Lb48F2 ; [$48F2:18674]
	INC H 
Lb48F2:
	LD C,L 
Lb48F3:
	PUSH HL 
	PUSH BC 
	LD A,$BF 
	SUB B 
	LD E,$00 
	CALL Lb41D1 ; [16849]
	POP BC 
	INC C 
	POP HL 
	DEC H 
	JR NZ, Lb48F3 ; [$48F3:18675]
	LD HL,$3FCF 
	DEC (HL) 
	JP NZ, Lb4887 ; [18567]
	RET ; ==========================

Lb490B:
	CALL Lb4315 ; [17173]
	JR NZ, Lb4927 ; [$4927:18727]
	LD A,($3FCF) 
	LD E,A 
Lb4914:
	LD HL,$37FF 
Lb4917:
	LD B,$20 
	LD A,B 
	AND A 
Lb491B:
	RL (HL) 
	DEC HL 
	DJNZ Lb491B ; [$491B:18715]
	AND H 
	JR NZ, Lb4917 ; [$4917:18711]
	DEC E 
	JR NZ, Lb4914 ; [$4914:18708]
	RET ; ==========================

Lb4927:
	LD A,($3FD1) 
	LD B,A 
	LD A,($3FD3) 
	LD C,A 
Lb492F:
	PUSH BC 
Lb4930:
	LD A,$BF 
	SUB B 
	PUSH BC 
	PUSH AF 
	INC C 
	CALL Lb40F1 ; [16625]
	LD A,(HL) 
Lb493A:
	RRCA 
	DJNZ Lb493A ; [$493A:18746]
	LD E,$FF 
	JR C, Lb4942 ; [$4942:18754]
	INC E 
Lb4942:
	POP AF 
	POP BC 
	PUSH BC 
	CALL Lb41D1 ; [16849]
	POP BC 
	LD A,($3FD2) 
	INC C 
	CP C 
	JR NZ, Lb4930 ; [$4930:18736]
	POP BC 
	DEC B 
	LD A,B 
	CP $FF ; [255]
	JR Z, Lb495F ; [$495F:18783]
	LD A,($3FD0) 
	LD D,A 
	LD A,B 
	CP D 
	JR NC, Lb492F ; [$492F:18735]
Lb495F:
	LD BC,($3FD1) 
	LD A,B 
	LD B,C 
	LD C,A 
	LD A,($3FD5) 
	LD L,A 
Lb496A:
	PUSH HL 
	PUSH BC 
	LD A,$BF 
	SUB B 
	LD E,$00 
	CALL Lb41D1 ; [16849]
	POP BC 
	DEC B 
	POP HL 
	DEC L 
	JR NZ, Lb496A ; [$496A:18794]
	LD HL,$3FCF 
	DEC (HL) 
	JR NZ, Lb4927 ; [$4927:18727]
	RET ; ==========================

Lb4981:
	CALL Lb4315 ; [17173]
	JR NZ, Lb49A3 ; [$49A3:18851]
	LD A,($3FCF) 
	LD E,A 
Lb498A:
	LD HL,$2000 
Lb498D:
	AND A 
	LD B,$20 
Lb4990:
	RR (HL) 
	INC HL 
	DJNZ Lb4990 ; [$4990:18832]
	LD BC,$3800 
	AND A 
	PUSH HL 
	SBC HL,BC 
	POP HL 
	JR NZ, Lb498D ; [$498D:18829]
	DEC E 
	JR NZ, Lb498A ; [$498A:18826]
	RET ; ==========================

Lb49A3:
	LD A,($3FD1) 
	LD B,A 
	LD A,($3FD2) 
	LD C,A 
Lb49AB:
	PUSH BC 
Lb49AC:
	LD A,$BF 
	SUB B 
	PUSH BC 
	PUSH AF 
	DEC C 
	CALL Lb40F1 ; [16625]
	LD A,$09 
	SUB B 
	LD B,A 
	LD A,(HL) 
Lb49BA:
	RLCA 
	DJNZ Lb49BA ; [$49BA:18874]
	LD E,$FF 
	JR C, Lb49C2 ; [$49C2:18882]
	INC E 
Lb49C2:
	POP AF 
	POP BC 
	PUSH BC 
	CALL Lb41D1 ; [16849]
	POP BC 
	LD A,($3FD3) 
	DEC C 
	CP C 
	JR NZ, Lb49AC ; [$49AC:18860]
	POP BC 
	DEC B 
	LD A,B 
	CP $FF ; [255]
	JR Z, Lb49DF ; [$49DF:18911]
	LD A,($3FD0) 
	LD D,A 
	LD A,B 
	CP D 
	JR NC, Lb49AB ; [$49AB:18859]
Lb49DF:
	LD A,($3FD1) 
	LD B,A 
	LD A,($3FD3) 
	LD C,A 
	LD A,($3FD5) 
	LD L,A 
Lb49EB:
	PUSH HL 
	PUSH BC 
	LD A,$BF 
	SUB B 
	LD E,$00 
	CALL Lb41D1 ; [16849]
	POP BC 
	DEC B 
	POP HL 
	DEC L 
	JR NZ, Lb49EB ; [$49EB:18923]
	LD HL,$3FCF 
	DEC (HL) 
	JR NZ, Lb49A3 ; [$49A3:18851]
	RET ; ==========================

Lb4A02:
	INC HL 
	LD A,(HL) 
	CP $1C ; [28-"0"]
	JR NC, Lb4A0D ; [$4A0D:18957]
Lb4A08:
	CALL Lb4097 ; [16535]
	RST 08H 
.db	$1D ; RST8 Arg: Error Code:'U'
Lb4A0D:
	CP $2C ; [44-"G"]
	JR NC, Lb4A08 ; [$4A08:18952]
	SUB $1C 
	RET ; ==========================

Lb4A14:
	CALL Lb4A02 ; [18946]
	LD B,A 
	SLA B 
	SLA B 
	SLA B 
	SLA B 
	CALL Lb4A02 ; [18946]
	ADD A,B 
	LD B,A 
	INC HL 
	LD A,(HL) 
	CP $0B ; [11-"""]
	LD A,B 
	RET ; ==========================

Lb4A2B:
	INC HL 
	LD A,(HL) 
	CP $0B ; [11-"""]
	JP NZ, Lb4BD0 ; [19408]
	INC HL 
	LD A,(HL) 
	BIT 7,A 
	JR Z, Lb4A3A ; [$4A3A:19002]
	SUB $40 
Lb4A3A:
	LD DE,$0000 
	INC HL 
	INC HL 
Lb4A3F:
	PUSH HL 
	LD B,$08 
	LD H,$00 
	LD L,A 
	EX DE,HL 
Lb4A46:
	ADD HL,DE 
	DJNZ Lb4A46 ; [$4A46:19014]
	EX DE,HL 
	LD HL,$3800 
	ADD HL,DE 
	EX DE,HL 
	POP HL 
	INC HL 
Lb4A51:
	CALL Lb4A14 ; [18964]
	LD (DE),A 
	JR NZ, Lb4A5C ; [$4A5C:19036]
	INC HL 
	LD (RAM_CH_ADD),HL ; SET CH-ADD
	RET ; ==========================

Lb4A5C:
	INC DE 
	JR Lb4A51 ; [$4A51:19025]
Lb4A5F:
	INC HL 
	CALL Lb40AD ; [16557]
	CP $20 ; [32-"4"]
	LD DE,$0600 
	JR C, Lb4A3F ; [$4A3F:19007]
Lb4A6A:
	CALL Lb4097 ; [16535]
	RST 08H 
.db	$1B ; RST8 Arg: Error Code:'S'
Lb4A6F:
	LD BC,$0020 
	ADD HL,BC 
	LD A,H 
	CP $38 ; [56-"S"]
	RET C 
	SUB $18 
	LD H,A 
	RET ; ==========================

Lb4A7B:
	INC HL 
	CALL Lb40AD ; [16557]
	CP $20 ; [32-"4"]
	JR NC, Lb4A6A ; [$4A6A:19050]
	CALL Lb40A0 ; [16544]
	AND A 
	RLA 
	RLA 
	RLA 
	LD D,$00 
	LD E,A 
	LD HL,$3E00 
	ADD HL,DE 
	LD ($3FD8),HL 
	RST 20H 
	CALL Lb40B9 ; [16569]
	LD ($3FDA),BC 
	RET ; ==========================

Lb4A9D:
	CALL Lb4A7B ; [19067]
Lb4AA0:
	LD A,$BF 
	SUB B 
	JR NC, Lb4AA7 ; [$4AA7:19111]
	SUB $40 
Lb4AA7:
	LD H,A 
	LD L,C 
	SRL H 
	RR L 
	SRL H 
	RR L 
	SRL H 
	RR L 
	SET 5,H 
	LD ($3FDC),HL 
	LD A,C 
	CPL 
	AND $07 
	INC A 
	LD (RAM_MEMBOT1D),A ; SET MEMBOT
	LD DE,$3FE3 
	LD BC,($3FD8) 
	LD A,$08 
Lb4ACB:
	PUSH AF 
	LD A,(HL) 
	LD (DE),A 
	LD A,(BC) 
	PUSH BC 
	LD C,A 
	LD A,(RAM_MEMBOT1D) ; GET MEMBOT
	CP $05 ; [5]
	JR C, Lb4AE9 ; [$4AE9:19177]
	CPL 
	ADD A,$09 
	AND A 
	LD B,A 
	LD A,C 
	LD C,$00 
	JR Z, Lb4AF0 ; [$4AF0:19184]
Lb4AE2:
	RRA 
	RR C 
	DJNZ Lb4AE2 ; [$4AE2:19170]
	JR Lb4AF0 ; [$4AF0:19184]
Lb4AE9:
	LD B,A 
	XOR A 
Lb4AEB:
	RL C 
	RLA 
	DJNZ Lb4AEB ; [$4AEB:19179]
Lb4AF0:
	OR (HL) 
	LD (HL),A 
	INC HL 
	INC DE 
	LD A,(HL) 
	LD (DE),A 
	LD A,C 
	OR (HL) 
	LD (HL),A 
	DEC HL 
	CALL Lb4A6F ; [19055]
	INC DE 
	POP BC 
	INC BC 
	POP AF 
	DEC A 
	JP NZ, Lb4ACB ; [19147]
	RET ; ==========================

Lb4B06:
	CALL Lb40C8 ; [16584]
	JP NZ, Lb4BD0 ; [19408]
Lb4B0C:
	LD HL,($3FDC) 
	LD DE,$3FE3 
	LD B,$08 
Lb4B14:
	PUSH BC 
	LD A,(DE) 
	LD (HL),A 
	INC HL 
	INC DE 
	LD A,(DE) 
	LD (HL),A 
	CALL Lb4A6F ; [19055]
	DEC HL 
	INC DE 
	POP BC 
	DJNZ Lb4B14 ; [$4B14:19220]
	RET ; ==========================

Lb4B24:
	.db $"_",$"_",$"_"  ; DATAS

	ADC A,$CD 
	LD A,E 
	LD C,D 
	LD HL,(RAM_CH_ADD) ; GET CH-ADD
	LD A,(HL) 
	CP $1A ; [26-","]
	JR NZ, Lb4B40 ; [$4B40:19264]
	INC HL 
	LD ($3FC3),BC 
	PUSH HL 
	CALL Lb4AA0 ; [19104]
	POP HL 
	CALL Lb40B9 ; [16569]
Lb4B40:
	JP Lb420A ; [16906]
Lb4B43:
	PUSH BC 
	LD HL,$4034 
	LD B,(HL) 
Lb4B48:
	LD A,(HL) 
	CP B 
	JR Z, Lb4B48 ; [$4B48:19272]
	SUB A,(IY+118) 
	LD (RAM_MEMBOT1A),A ; SET MEMBOT
	CALL Lb4B0C ; [19212]
	POP BC 
	CALL Lb4AA0 ; [19104]
	LD A,(RAM_MEMBOT1A) ; GET MEMBOT
Lb4B5C:
	CP A,(IY+52) 
	JR NZ, Lb4B5C ; [$4B5C:19292]
	RET ; ==========================

Lb4B62:
	CALL Lb40C8 ; [16584]
	LD A,$00 
	JR Z, Lb4B6C ; [$4B6C:19308]
	CALL Lb40AD ; [16557]
Lb4B6C:
	LD (RAM_MEMBOT19),A ; SET MEMBOT
	RET ; ==========================

Lb4B70:
	DEC E 
	RET NZ 
	POP BC 
	LD A,$04 
	OUT ($FB),A ; ZxPrinter port
	INC E 
	CALL Lb4563 ; [17763]
	JP Lb418B ; [16779]
Lb4B7E:
	LD DE,(Lb4156+1) 
	INC DE 
	INC DE 
	INC HL 
	LD A,(HL) 
	CP $76 ; [118]
	JR Z, Lb4BA1 ; [$4BA1:19361]
	PUSH DE 
	CALL Lb40AD ; [16557]
	LD B,A 
	CALL Lb4106 ; [16646]
	INC B 
	POP DE 
Lb4B94:
	LD H,D 
	LD L,E 
	RES 7,H 
	LD A,(DE) 
	ADD A,$80 
	LD (DE),A 
	LD (HL),A 
	INC DE 
	DJNZ Lb4B94 ; [$4B94:19348]
	RET ; ==========================

Lb4BA1:
	LD B,$20 
	XOR A 
Lb4BA4:
	LD H,D 
	LD L,E 
	RES 7,H 
	LD (DE),A 
	LD (HL),A 
	INC DE 
	DJNZ Lb4BA4 ; [$4BA4:19364]
	RET ; ==========================

	NOP 
Lb4BAF:
	LD HL,(RAM_CH_ADD) ; GET CH-ADD
	LD A,(HL) 
	CP $19 ; [25-";"]
	JR Z, Lb4C2C ; [$4C2C:19500]
	CP $76 ; [118]
	JR Z, Lb4BC0 ; [$4BC0:19392]
	CALL Lb4097 ; [16535]
	RST 08H 
.db	$15 ; RST8 Arg: Error Code:'M'
Lb4BC0:
	POP HL 
	LD (RAM_CH_ADD),HL ; SET CH-ADD
	LD BC,$0000 
	RET ; ==========================

	LD HL,(RAM_CH_ADD) ; GET CH-ADD
	LD A,(HL) 
	CP $DE ; [222]
	JR Z, Lb4BD5 ; [$4BD5:19413]
Lb4BD0:
	CALL Lb4097 ; [16535]
	RST 08H 
.db	$11 ; RST8 Arg: Error Code:'I'
Lb4BD5:
	PUSH HL 
	INC HL 
	LD A,(HL) 
	LD DE, Lb4BC0 
	PUSH DE 
	CP $E2 ; [226]
	JP Z, Lb4751 ; [18257]
	CP $E7 ; [231]
	JP Z, Lb408E ; [16526]
	CP $EF ; [239]
	JP Z, Lb4BD0 ; [19408]
	CP $F0 ; [240]
	JP Z, Lb471F ; [18207]
	CP $F2 ; [242]
	JP Z, Lb4557 ; [17751]
	CP $F5 ; [245]
	JP Z, Lb4576 ; [17782]
	CP $F6 ; [246]
	JP Z, Lb41BE ; [16830]
	CP $F7 ; [247]
	JP Z, Lb4181 ; [16769]
	CP $F8 ; [248]
	JP Z, Lb4BD0 ; [19408]
	CP $F9 ; [249]
	JP Z, Lb4B7E ; [19326]
	CP $FB ; [251]
	JP Z, Lb4119 ; [16665]
	CP $FC ; [252]
	JP Z, Lb41C2 ; [16834]
	CP $FD ; [253]
	JP Z, Lb4187 ; [16775]
	CP $FE ; [254]
	JP Z, Lb4097 ; [16535]
	CP $FF ; [255]
	JP Z, Lb4518 ; [17688]
	CP $E1 ; [225]
	JR NZ, Lb4BD0 ; [$4BD0:19408]
	POP DE 
Lb4C2C:
	LD DE, Lb4BAF 
	PUSH DE 
	INC HL 
	LD A,(HL) 
	CP $3D ; [61-"X"]
	JR Z, Lb4CB3 ; [$4CB3:19635]
	LD B,A 
Lb4C37:
	INC HL 
	LD A,(HL) 
	CP $76 ; [118]
	JR Z, Lb4BD0 ; [$4BD0:19408]
	CP $19 ; [25-";"]
	JR NZ, Lb4C37 ; [$4C37:19511]
	LD A,B 
	CP $26 ; [38-"A"]
	JP Z, Lb4488 ; [17544]
	CP $27 ; [39-"B"]
	JP Z, Lb41A7 ; [16807]
	CP $28 ; [40-"C"]
	JP Z, Lb42A7 ; [17063]
	CP $29 ; [41-"D"]
	JP Z, Lb41E7 ; [16871]
	CP $2E ; [46-"I"]
	JP Z, Lb437F ; [17279]
	CP $31 ; [49-"L"]
	JP Z, Lb44A1 ; [17569]
	CP $35 ; [53-"P"]
	JP Z, Lb4472 ; [17522]
	CP $37 ; [55-"R"]
	JP Z, Lb44B9 ; [17593]
	CP $38 ; [56-"S"]
	JR NZ, Lb4C8C ; [$4C8C:19596]
	DEC HL 
	LD A,(HL) 
	INC HL 
	CP $29 ; [41-"D"]
	JP Z, Lb4A5F ; [19039]
	CP $2A ; [42-"E"]
	JP Z, Lb4B06 ; [19206]
	CP $32 ; [50-"M"]
	JP Z, Lb4B24 ; [19236]
	CP $35 ; [53-"P"]
	JP Z, Lb4A9D ; [19101]
	CP $38 ; [56-"S"]
	JP Z, Lb4B62 ; [19298]
	JR Lb4CD4 ; [$4CD4:19668]
Lb4C8C:
	CP $39 ; [57-"T"]
	JP Z, Lb4772 ; [18290]
	CP $3A ; [58-"U"]
	JP Z, Lb4A2B ; [18987]
	CP $3C ; [60-"W"]
	JR NZ, Lb4CD4 ; [$4CD4:19668]
	DEC HL 
	LD A,(HL) 
	INC HL 
	CP $29 ; [41-"D"]
	JP Z, Lb4866 ; [18534]
	CP $31 ; [49-"L"]
	JP Z, Lb490B ; [18699]
	CP $37 ; [55-"R"]
	JP Z, Lb4981 ; [18817]
	CP $3A ; [58-"U"]
	JP Z, Lb47C6 ; [18374]
	JR Lb4CD4 ; [$4CD4:19668]
Lb4CB3:
	INC HL 
	LD B,(HL) 
Lb4CB5:
	INC HL 
	LD A,(HL) 
	CP $76 ; [118]
	JR Z, Lb4CD4 ; [$4CD4:19668]
	CP $19 ; [25-";"]
	JR NZ, Lb4CB5 ; [$4CB5:19637]
	LD A,B 
	CP $28 ; [40-"C"]
	JP Z, Lb42AB ; [17067]
	CP $29 ; [41-"D"]
	JP Z, Lb41EB ; [16875]
	CP $37 ; [55-"R"]
	JP Z, Lb44BD ; [17597]
	CP $39 ; [57-"T"]
	JP Z, Lb4776 ; [18294]
Lb4CD4:
	JP Lb4BD0 ; [19408]


;------------ Labels errors ------------
; LABEL ERROR @LB418B:JR +5	[$418B:16779]
; LABEL ERROR @LB418B:JP $418B	[16779]
; LABEL @LB4157 Fixed: LD ($4157),HL / LD (Lb4156+1),HL
; LABEL @LB4157 Fixed: LD DE,($4157) / LD DE,(Lb4156+1)

.end
WRX buffer: (last Basic line):

Code: Select all

;------- TASM ASM mnemonics. -------
; Compile this file using:
; Set TASMOPTS = -b
; tasm -80 ThisCode.tas MyBinary.BIN
;-----------------------------------
; Zx81 Program name: VB81 XuR [SE] : SAVE"SE-HR" Line 990
; REM   line   name: 16000 REM:    39 Bytes@7CA4-7CCA

#define ORG  .org       ; TASM cross-assembler definitions
#define equ  .equ
;-----------------------------------

ORG $7CA4 ; [@31908/@h7CA4]
	HALT 
	HALT 
	LD R,A 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	ADD A,B 
	JP $414B ; [16715]
.end
Xavier ...on the Facebook groupe : "Zx81 France"(fr)
User avatar
XavSnap
Posts: 1940
Joined: Sat May 10, 2008 4:23 pm
Location: 'Zx81 France' Fb group.

Re: Crippled Software

Post by XavSnap »

HI,

May be an ASM feed-back error, from the USR M2 (USR 19400/$4BC8)…
;)

Code: Select all

	LD HL,(RAM_CH_ADD) ; GET CH-ADD
	LD A,(HL) 
	CP $DE ; [222]
	JR Z, Lb4BD5 ; [$4BD5:19413]
Lb4BD0:
	CALL Lb4097 ; [16535]
	RST 08H 
.db	$11 ; RST8 Arg: Error Code:'I'
Lb4BD5:
	PUSH HL 
	INC HL 
	LD A,(HL) 
	LD DE, Lb4BC0 
	PUSH DE 
It's a custom error returned from the ASM routine:
value from (RAM_CH_ADD) <>222 !

Jump to the Basic monitor and display an error (Error code "I").

RST 08H
.db $00 ; RST8 Arg: Error Code:'0'
Is The famous 0/0...

It's an internal code error, generated from the code…. not an ASM, or Basic error.
Don't remember what is the RAM_CH_ADD used for…
It's a internal Basic value… at $4016-$4017
:oops:

[EDIT:
Seem to be the Basic offset pointer, wile scanning a RUNning Basic program !
The $DE= CHR$(222) = the "THEN" command.
If the next token isn't a "THEN", exit the ASM code!)
]
Xavier ...on the Facebook groupe : "Zx81 France"(fr)
User avatar
XavSnap
Posts: 1940
Joined: Sat May 10, 2008 4:23 pm
Location: 'Zx81 France' Fb group.

Re: Crippled Software

Post by XavSnap »

:D

A little picture…
Capture.JPG
Xavier ...on the Facebook groupe : "Zx81 France"(fr)
butchi
Posts: 38
Joined: Wed Jun 12, 2019 4:12 am

Re: Crippled Software

Post by butchi »

Hi,
Error is intermittant. Inputting just the first two data points in docs, line 534 acts normal, as attachment confirms.
b
Attachments
* two point plot *
* two point plot *
User avatar
GCHarder
Posts: 427
Joined: Sat Dec 14, 2013 7:46 pm

Re: Crippled Software

Post by GCHarder »

An error code of "V" indicates a vertical plot parameter is out of range, greater than 191.

Likewise an error code "H" indicates a horizontal plot parameter is out of range.

Regards;

Greg
butchi
Posts: 38
Joined: Wed Jun 12, 2019 4:12 am

Re: Crippled Software

Post by butchi »

Greetings!
The other error relates to a zero (0) low graphing limit, which appears to graph in docs!
Your feelings and any tips on resolving these errors that the programmer should have resolved?
b
* I'm hardware oriented, not a programmer *
Attachments
a-222.png
butchi
Posts: 38
Joined: Wed Jun 12, 2019 4:12 am

Re: Crippled Software

Post by butchi »

GCHarder wrote: Fri Jun 28, 2019 12:32 am An error code of "V" indicates a vertical plot parameter is out of range, greater than 191.

Likewise an error code "H" indicates a horizontal plot parameter is out of range.

Regards;

Greg
Greg,
If vertical plot limit is 191, what is the horizontal plot limit?
Lines 422 & 426 defines the PLOT limits, so the 220 needs to be 191??
b
Post Reply