/
commands
75 lines (58 loc) · 1.52 KB
/
commands
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
functions:
6b2e dma1_vram_to_mem
6ae4 dma1_mem_to_vram
RST1: Input related syscalls
valid subcommands:
A0-1, A4-10, A12-14
RST1 A4
RST1 A5 getChar
RST1 A6
RST1 A7
RST1 A8 waitKey?
RST1 A9
RST1 A10
RST2: Screen related syscalls
Valid subcommands:
A0-A10, A16-A25,A32,33,35,37-41, 48-50
RST2 A0 display on/off (B==0 for off, B!=0 for on)
RST2 A1 set cursor addr
RST2 A2 cursor on/off (B==0 for off, B!=0 for on)
RST2 A3 set cursor size (B=2 ,B=3,or B=0 (default?) )
RST2 A4 moves something if A5 enabled
RST2 A5 toggles something
RST2 A6 return
RST2 A7 blit? erase? ex: B128 DE:0033
RST2 A8 rom string call?
RST2 A9 SCREEN_INFO? Result in A
Params: B0-B6 2410/50ds 5500ds
B0 $23fb $23c9
B1 $23fa $23c8
B2 $25e5 $23d1
B3 rows 0xF 0x14
B4 cols 0x5B 0x50
B5 1 3
B6 0 (23c6:2? 0 : -1) ?? text/graphics mode???
RST2 A16 CLEAR SCREEN
RST2 A17 PUTCHAR(XY) B=Char D=Y E=X
RST2 A19 either clear line or copy line HL=LINE ex: 0x2195 clears first line
RST2 A50 dma copies some mem to vram??
RST3 seems to be memory copy / dma related
RST3 A6 MEM to MEM, descending BC=count
RST3 A7 MEM to MEM, ascending BC=count
RST4 A3 B242 ab = 0x3f2 related to 0x23f2??
RST6 A0 (B0/B!0) Machine Reset/??
RST6 A1
banks 0x28000p at 0x8000 - 0xFFFF
zeroes 0x3200 - 0x5FFF this area includes FAT and working memory
calls:
RST2 A16 B0 Clear screen
RST2 A10 B0
RST2 A8 B80 Rom string call?
RSt2 A0 B1 Display on
RST6 A2 B9
RST6 A4 B3
RST6 A5 B4 -> HL=0x1234
WP75:
80BB ramtest done
80C6
814f ramclear (used to clear high ram in 6x000 area)