fsh-shell/bin/FSHa.lst

3286 lines
134 KiB
Plaintext

1 00:0000 - - - - #include "includes/static/ti84pce.inc"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\static\ti84pce.inc"
1 00:0000 - - - - ;TI-84 Plus CE Include File
2 00:0000 - - - -
3 00:0000 - - - - ;Various Parts Contributed by
4 00:0000 - - - - ;- BrandonW
5 00:0000 - - - - ;- calc84
6 00:0000 - - - - ;- MateoConLechuga
7 00:0000 - - - - ;- Runer112
8 00:0000 - - - - ;- tr1p1ea
9 00:0000 - - - - ;- Kerm Martian
10 00:0000 - - - - ;- Texas Instruments (ti83plus.inc)
Listing for file "FSHa.asm"
2 00:0000 - - - - #include "includes/static/define.inc"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\static\define.inc"
Listing for file "FSHa.asm"
3 00:0000 - - - - #include "includes/macros/macros.inc"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\macros\macros.inc"
1 00:0000 - - - - #include "includes/macros/misc.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\macros\misc.asm"
1 00:0000 - - - - ;;rgbto565
2 00:0000 - - - - ;;turns an rgb input into the 656 format that the lcd uses
3 00:0000 - - - - ;;Inputs:
4 00:0000 - - - - ;; r,g,b
5 00:0000 - - - - ;;Outputs:
6 00:0000 - - - - ;; HL: color
7 00:0000 - - - - #macro rgbto565(red, green, blue)
8 00:0000 ld hl, ((red / 255 * 31) << 11) | ((green / 255 * 63) << 5) | ((blue / 255 * 31))
9 00:0000 #endmacro
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\macros\macros.inc"
2 00:0000 - - - - #include "includes/macros/pixel.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\macros\pixel.asm"
1 00:0000 - - - - ;;pixel
2 00:0000 - - - - ;;Gets vRam location of coordinates
3 00:0000 - - - - ;;Inputs:
4 00:0000 - - - - ;; x: x axis
5 00:0000 - - - - ;; y: y axis
6 00:0000 - - - - ;;Outputs:
7 00:0000 - - - - ;; DE: vRam location
8 00:0000 - - - - #macro pixel(x, y)
9 00:0000 ld de, vRam + (y * 320 * 2) + (x * 2)
10 00:0000 #endmacro
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\macros\macros.inc"
3 00:0000 - - - - #include "includes/macros/draw.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\macros\draw.asm"
1 00:0000 - - - - #macro drawpixelxyM(x, y)
2 00:0000 ld de, x
3 00:0000 ld a, y
4 00:0000 call drawpixelxy
5 00:0000 #endmacro
6 00:0000 - - - -
7 00:0000 - - - - #macro drawlineM(x1, y1, x2, y2)
8 00:0000 ;TODO
9 00:0000 #endmacro
10 00:0000 - - - -
11 00:0000 - - - - #macro drawrowM(y)
12 00:0000 ld a, y
13 00:0000 call drawrow
14 00:0000 #endmacro
15 00:0000 - - - -
16 00:0000 - - - - #macro drawbarM(y, height)
17 00:0000 ld a, y
18 00:0000 ld bc, height
19 00:0000 call drawbar
20 00:0000 #endmacro
21 00:0000 - - - -
22 00:0000 - - - - #macro drawrectfilledM(x, y, width, height)
23 00:0000 ex de, hl
24 00:0000 ld ixl, e
25 00:0000 ld ixh, d
26 00:0000 ex de, hl
27 00:0000 ld hl, width
28 00:0000 ld de, x
29 00:0000 ld bc, 0
30 00:0000 ld c, y
31 00:0000 ld a, height
32 00:0000 call drawrectfilled
33 00:0000 #endmacro
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\macros\macros.inc"
4 00:0000 - - - - #include "includes/macros/command.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\macros\command.asm"
1 00:0000 - - - - ;;decodecmdopt
2 00:0000 - - - - ;;compares cmdXs to command input and conditionally sets opt to optcode
3 00:0000 - - - - ;;Inputs:
4 00:0000 - - - - ;; HL: cmd string input
5 00:0000 - - - - ;; DE: op code mem location
6 00:0000 - - - - #macro decodecmdopt(cmdXs, cmdXo)
7 00:0000 push hl
8 00:0000 push de
9 00:0000 ld de, cmdXs
10 00:0000 call strcmp
11 00:0000 ld hl, cmdXo
12 00:0000 pop de
13 00:0000 call z, bytecpy
14 00:0000 pop hl
15 00:0000 #endmacro
16 00:0000 - - - -
17 00:0000 - - - - #macro routeoptjp(cmdXo, cmdXf)
18 00:0000 ld de, cmdXo
19 00:0000 call bytecmp
20 00:0000 jp z, cmdXf
21 00:0000 #endmacro
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\macros\macros.inc"
Listing for file "FSHa.asm"
4 00:0000 - - - -
5 00:0000 - - - - .assume ADL=1
6 00:0000 - - - - .org userMem-2
7 D1:A87F EF 7B - - .DB tExtTok,tAsm84CeCmp
8 D1:A881 - - - -
9 D1:A881 - - - - Setup:
10 D1:A881 CD 48 08 02 CALL _RunIndicOff
11 D1:A885 CD 38 11 02 CALL _EnableAPD
12 D1:A889 FD CB 08 DE SET apdRunning,(iy+apdFlags)
13 D1:A88D CD 28 08 02 CALL _homeup
14 D1:A891 CD 08 08 02 CALL _ClrLCDFull
15 D1:A895 - - - -
16 D1:A895 CD 8D B3 D1 CALL drawstatusbar
17 D1:A899 - - - -
18 D1:A899 CD C2 B1 D1 CALL fshvarreset
19 D1:A89D - - - -
20 D1:A89D CD 68 B3 D1 CALL printmotd
21 D1:A8A1 - - - -
22 D1:A8A1 - - - - Input:
23 D1:A8A1 - - - - ;; TODO: Update status bar sometimes
24 D1:A8A1 3E 00 - - LD A, $00
25 D1:A8A3 CD B3 AF D1 CALL commandfill
26 D1:A8A7 - - - -
27 D1:A8A7 21 2B A9 D1 LD HL, PS1
28 D1:A8AB CD 89 AA D1 CALL printprompt
29 D1:A8AF - - - -
30 D1:A8AF 21 9F EA D0 LD HL, FshCmd
31 D1:A8B3 11 2C 00 00 LD DE, FshCmdInptSize
32 D1:A8B7 CD 77 AC D1 CALL inputstr
33 D1:A8BB - - - -
34 D1:A8BB 21 9F EA D0 LD HL, FshCmd
35 D1:A8BF CD CE AF D1 CALL fshparsecommand
36 D1:A8C3 - - - -
37 D1:A8C3 CD F0 07 02 CALL _NewLine
38 D1:A8C7 - - - -
39 D1:A8C7 - - - - Decode:
40 D1:A8C7 21 9F EA D0 LD HL, FshCmd
41 D1:A8CB 11 CC EA D0 LD DE, FshCmdOP
42 D1:A8CF CD A5 B4 D1 CALL commanddecode
43 D1:A8D3 - - - -
44 D1:A8D3 - - - - Route:
45 D1:A8D3 21 CC EA D0 LD HL, FshCmdOP
46 D1:A8D7 C3 AE B4 D1 JP commandroute
47 D1:A8DB - - - -
48 D1:A8DB - - - - Fin:
49 D1:A8DB C3 A1 A8 D1 JP Input
50 D1:A8DF - - - -
51 D1:A8DF - - - - Err:
52 D1:A8DF C3 ED B1 D1 JP ErrRoute
53 D1:A8E3 - - - -
54 D1:A8E3 - - - - Cleanup:
55 D1:A8E3 FD CB 03 C6 SET graphdraw,(IY+graphflags)
56 D1:A8E7 CD 08 08 02 CALL _ClrLCDFull
57 D1:A8EB CD 18 08 02 CALL _ClrTxtShdw
58 D1:A8EF CD 28 08 02 CALL _homeup
59 D1:A8F3 CD 3C 1A 02 call _DrawStatusBar
60 D1:A8F7 - - - -
61 D1:A8F7 - - - - Exit:
62 D1:A8F7 FD CB 00 AE RES donePrgm,(iy+doneFlags)
63 D1:A8FB C9 - - - RET
64 D1:A8FC - - - -
65 D1:A8FC - - - - #include "includes/Text.inc"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\Text.inc"
1 D1:A8FC - - - - ;STRINGS -------------------------
2 D1:A8FC 46 73 68 20
53 48 65 6C
6C 00 - - FshName: .db "Fsh SHell", 0
3 D1:A906 42 79 20 70
69 78 69 79
73 00 - - FshBy: .db "By pixiys", 0
4 D1:A910 73 74 65 70
68 65 6E 6C
74 6F 74 68
2E 63 6F 6D
2F 66 73 68
2D 73 68 65
6C 6C 00 - FshSite: .db "stephenltoth.com/fsh-shell", 0
5 D1:A92B 46 53 48 3E
20 00 - - PS1: .db "FSH> ", 0
6 D1:A931 36 34 77 00 FshVVars: .db "64w", 0
7 D1:A935 30 00 - - FshVMajor: .db "0", 0
8 D1:A937 31 00 - - FshVMinor: .db "1", 0
9 D1:A939 30 00 - - FshVPatch: .db "0", 0
10 D1:A93B 32 30 35 00 FshVBuild: .db "205", 0
11 D1:A93F 2E 00 - - FshVSeparator: .db ".", 0
12 D1:A941 50 72 65 73
73 20 32 6E
64 20 66 6F
72 20 6E 75
6D 62 65 72
73 00 - - FshMotd2nd: .db "Press 2nd for numbers", 0
13 D1:A957 54 79 70 65
20 27 48 45
4C 50 27 20
66 6F 72 20
68 65 6C 70
00 - - - FshMotdHelp: .db "Type 'HELP' for help", 0
Listing for file "FSHa.asm"
66 D1:A96C 00 - - - FshFlags: .DB %00000000
67 D1:A96D - - - - ; 0: Debug Flag
68 D1:A96D - - - - ; 1: Error Flag
69 D1:A96D - - - - ; 2: Program Flag
70 D1:A96D - - - -
71 D1:A96D - - - - #include "includes/lib/std/std.inc"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
1 D1:A96D - - - - #include "includes/lib/std/Math.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\Math.asm"
1 D1:A96D - - - - ;;cpHLDE
2 D1:A96D - - - - ;;Compares HL to DE.
3 D1:A96D - - - - ;;Output:
4 D1:A96D - - - - ;; Same as z80 CP instruction.
5 D1:A96D - - - - cpHLDE:
6 D1:A96D B7 - - - or a
7 D1:A96E ED 52 - - sbc hl, de
8 D1:A970 19 - - - add hl,de
9 D1:A971 C9 - - - ret
10 D1:A972 - - - -
11 D1:A972 - - - - ;;cpHLBC
12 D1:A972 - - - - ;;Compares HL to BC.
13 D1:A972 - - - - ;;Output:
14 D1:A972 - - - - ;; Same as z80 CP instruction.
15 D1:A972 - - - - cpHLBC:
16 D1:A972 B7 - - - or a
17 D1:A973 ED 42 - - sbc hl, bc
18 D1:A975 09 - - - add hl,bc
19 D1:A976 C9 - - - ret
20 D1:A977 - - - -
21 D1:A977 - - - - ;;cpBCDE
22 D1:A977 - - - - ;;Compares DE to BC.
23 D1:A977 - - - - ;;Output:
24 D1:A977 - - - - ;; Same as z80 CP instruction.
25 D1:A977 - - - - cpBCDE:
26 D1:A977 E5 - - - push hl
27 D1:A978 60 - - - ld h, b
28 D1:A979 69 - - - ld l, c
29 D1:A97A B7 - - - or a
30 D1:A97B ED 52 - - sbc hl, de
31 D1:A97D E1 - - - pop hl
32 D1:A97E C9 - - - ret
33 D1:A97F - - - -
34 D1:A97F - - - - ;;mulAbyB
35 D1:A97F - - - - ;;Multiplys AxB
36 D1:A97F - - - - ;;Inputs:
37 D1:A97F - - - - ;; A: Multiplier
38 D1:A97F - - - - ;; B: Multiplicand
39 D1:A97F - - - - ;;Outputs:
40 D1:A97F - - - - ;; A: Product of A and B.
41 D1:A97F - - - - mulAbyB:
42 D1:A97F C5 - - - push bc
43 D1:A980 4F - - - ld c, a
44 D1:A981 - - - - mulAbyBLoop:
45 D1:A981 81 - - - add a, c
46 D1:A982 10 FD - - djnz mulAbyBLoop
47 D1:A984 91 - - - sub c
48 D1:A985 C1 - - - pop bc
49 D1:A986 C9 - - - ret
50 D1:A987 - - - -
51 D1:A987 - - - - ;;mulAbyHL
52 D1:A987 - - - - ;;Multiplys AxHL
53 D1:A987 - - - - ;;Inputs:
54 D1:A987 - - - - ;; A: Multiplier
55 D1:A987 - - - - ;; HL: Multiplicand
56 D1:A987 - - - - ;;Outputs:
57 D1:A987 - - - - ;; HL: Product of A and HL.
58 D1:A987 - - - - mulAbyHL:
59 D1:A987 C5 - - - push bc
60 D1:A988 D5 - - - push de
61 D1:A989 11 00 00 00 ld de, 0
62 D1:A98D EB - - - ex de, hl
63 D1:A98E FE 00 - - cp 0
64 D1:A990 28 04 - - jr z, mulAbyHLEnd
65 D1:A992 47 - - - ld b, a
66 D1:A993 - - - - mulAbyHLLoop:
67 D1:A993 19 - - - add hl, de
68 D1:A994 10 FD - - djnz mulAbyHLLoop
69 D1:A996 - - - - mulAbyHLEnd:
70 D1:A996 D1 - - - pop de
71 D1:A997 C1 - - - pop bc
72 D1:A998 C9 - - - ret
73 D1:A999 - - - -
74 D1:A999 - - - -
75 D1:A999 - - - - ;;mul32By8
76 D1:A999 - - - - ;;Performs an unsigned multiplication of DEHL and A.
77 D1:A999 - - - - ;;Outputs:
78 D1:A999 - - - - ;; DEHL: product of DEHL and A
79 D1:A999 - - - - mul32By8:
80 D1:A999 C5 DD E5 - push bc \ push ix
81 D1:A99C DD 2E 08 - ld ixl, 8
82 D1:A99F D5 - - - push de
83 D1:A9A0 E5 - - - push hl
84 D1:A9A1 21 00 00 00 ld hl, 0
85 D1:A9A5 54 - - - ld d, h
86 D1:A9A6 5D - - - ld e, l
87 D1:A9A7 - - - - mul32by8loop:
88 D1:A9A7 29 - - - add hl, hl
89 D1:A9A8 CB 13 - - rl e
90 D1:A9AA CB 12 - - rl d
91 D1:A9AC 17 - - - rla
92 D1:A9AD 30 0A - - jr nc, mul32by8noAdd
93 D1:A9AF C1 - - - pop bc
94 D1:A9B0 09 - - - add hl, bc
95 D1:A9B1 E3 - - - ex (sp), hl
96 D1:A9B2 E5 - - - push hl
97 D1:A9B3 ED 5A - - adc hl, de
98 D1:A9B5 D1 - - - pop de
99 D1:A9B6 EB - - - ex de, hl
100 D1:A9B7 E3 - - - ex (sp), hl
101 D1:A9B8 C5 - - - push bc
102 D1:A9B9 - - - - mul32by8noAdd:
103 D1:A9B9 DD 2D - - dec ixl
104 D1:A9BB 20 EA - - jr nz, mul32by8loop
105 D1:A9BD C1 - - - pop bc
106 D1:A9BE C1 - - - pop bc
107 D1:A9BF DD E1 C1 - pop ix \ pop bc
108 D1:A9C2 C9 - - - ret
109 D1:A9C3 - - - -
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
2 D1:A9C3 - - - - #include "includes/lib/std/Byte.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\Byte.asm"
1 D1:A9C3 - - - - ;;bytecmp
2 D1:A9C3 - - - - ;;Determines if two bytes are equal.
3 D1:A9C3 - - - - ;;Inputs:
4 D1:A9C3 - - - - ;; HL: Byte pointer
5 D1:A9C3 - - - - ;; DE: Byte pointer
6 D1:A9C3 - - - - ;;Outputs:
7 D1:A9C3 - - - - ;; Z: Set if equal, reset if not equal
8 D1:A9C3 - - - - bytecmp:
9 D1:A9C3 E5 - - - push hl
10 D1:A9C4 D5 - - - push de
11 D1:A9C5 1A - - - ld a, (de)
12 D1:A9C6 B7 - - - or a
13 D1:A9C7 BE - - - cp (hl)
14 D1:A9C8 D1 - - - pop de
15 D1:A9C9 E1 - - - pop hl
16 D1:A9CA C9 - - - ret
17 D1:A9CB - - - -
18 D1:A9CB - - - - ;;bytecpy
19 D1:A9CB - - - - ;; Copies a byte.
20 D1:A9CB - - - - ;;Inputs:
21 D1:A9CB - - - - ;; HL: Byte pointer
22 D1:A9CB - - - - ;; DE: Destination
23 D1:A9CB - - - - bytecpy:
24 D1:A9CB D5 - - - push de
25 D1:A9CC E5 - - - push hl
26 D1:A9CD EB - - - ex de, hl
27 D1:A9CE 1A - - - ld a, (de)
28 D1:A9CF 77 - - - ld (hl), a
29 D1:A9D0 E1 - - - pop hl
30 D1:A9D1 D1 - - - pop de
31 D1:A9D2 C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
3 D1:A9D3 - - - - #include "includes/lib/std/Mem.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\Mem.asm"
1 D1:A9D3 - - - - ;;memset
2 D1:A9D3 - - - - ;;Fills B amount of bytes from hl with a
3 D1:A9D3 - - - - ;;Inputs:
4 D1:A9D3 - - - - ;; HL: start
5 D1:A9D3 - - - - ;; B: how many bytes
6 D1:A9D3 - - - - ;; A: Byte
7 D1:A9D3 - - - - memset:
8 D1:A9D3 E5 - - - push hl
9 D1:A9D4 C5 - - - push bc
10 D1:A9D5 - - - - memsetLoop:
11 D1:A9D5 77 - - - ld (hl), a
12 D1:A9D6 23 - - - inc hl
13 D1:A9D7 10 FC - - djnz memsetLoop
14 D1:A9D9 C1 - - - pop bc
15 D1:A9DA E1 - - - pop hl
16 D1:A9DB C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
4 D1:A9DC - - - - #include "includes/lib/std/Char.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\Char.asm"
1 D1:A9DC - - - - #include "includes/tables/CSC.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\tables\CSC.asm"
1 D1:A9DC - - - - charMapCSC:
2 D1:A9DC 22 57 52 4D
48 FF FF - .DB "\"WRMH", $FF, $FF
3 D1:A9E3 3F 5B 56 51
4C 47 FF FF .DB Lquestion, Ltheta, "VQLG", $FF, $FF
4 D1:A9EB 3A 5A 55 50
4B 46 43 FF .DB ":ZUPKFC", $FF
5 D1:A9F3 20 59 54 4F
4A 45 42 FF .DB " YTOJEB", $FF
6 D1:A9FB FF 58 53 4E
49 44 41 - .DB $FF, "XSNIDA"
7 D1:AA02 - - - -
8 D1:AA02 - - - - numsymMapCSC
9 D1:AA02 2B 2D 2A 2F
5E FF FF - .DB "+-*/^", $FF, $FF
10 D1:AA09 5F 33 36 39
29 C1 5D FF .DB "_369)", $C1, "]", $FF
11 D1:AA11 2E 32 35 38
28 7B 7D 3B .DB ".258({};"
12 D1:AA19 30 31 34 37
2C 20 3C 3E
7C FF - - .DB "0147, <>|", $FF
13 D1:AA23 05 21 40 23
25 26 - - .DB $05, "!@#%&"
14 D1:AA29 - - - -
15 D1:AA29 - - - - numMapCSC
16 D1:AA29 FF FF FF FF
FF FF FF - .DB $FF, $FF, $FF, $FF, $FF, $FF, $FF
17 D1:AA30 FF 33 36 39
FF FF FF FF .DB $FF, "369", $FF, $FF, $FF, $FF
18 D1:AA38 FF 32 35 38
FF FF FF FF .DB $FF, "258", $FF, $FF, $FF, $FF
19 D1:AA40 30 31 34 37
FF FF FF FF
FF FF - - .DB "0147", $FF, $FF, $FF, $FF, $FF, $FF
20 D1:AA4A FF FF FF FF
FF FF - - .DB $FF, $FF, $FF, $FF, $FF, $FF
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\Char.asm"
2 D1:AA50 - - - - ;;chartoascii
3 D1:AA50 - - - - ;;Converts a char to "ascii"
4 D1:AA50 - - - - ;;Inputs:
5 D1:AA50 - - - - ;; A: char code (csc)
6 D1:AA50 - - - - ;;Outputs:
7 D1:AA50 - - - - ;; A: ascii char
8 D1:AA50 - - - - chartoascii:
9 D1:AA50 E5 - - - push hl
10 D1:AA51 21 00 00 00 ld hl, 0
11 D1:AA55 26 00 - - ld h, 0
12 D1:AA57 6F - - - ld l, a
13 D1:AA58 11 DC A9 D1 ld de, charMapCSC
14 D1:AA5C 19 - - - add hl, de
15 D1:AA5D 7E - - - ld a, (hl)
16 D1:AA5E E1 - - - pop hl
17 D1:AA5F C9 - - - ret
18 D1:AA60 - - - -
19 D1:AA60 - - - - ;;Charnumtoascii
20 D1:AA60 - - - - ;;Converts a char to "ascii"
21 D1:AA60 - - - - ;;Inputs:
22 D1:AA60 - - - - ;; A: char code (csc)
23 D1:AA60 - - - - ;;Outputs:
24 D1:AA60 - - - - ;; A: ascii char
25 D1:AA60 - - - - charnumtoascii:
26 D1:AA60 E5 - - - push hl
27 D1:AA61 21 00 00 00 ld hl, 0
28 D1:AA65 26 00 - - ld h, 0
29 D1:AA67 6F - - - ld l, a
30 D1:AA68 11 29 AA D1 ld de, numMapCSC
31 D1:AA6C 19 - - - add hl, de
32 D1:AA6D 7E - - - ld a, (hl)
33 D1:AA6E E1 - - - pop hl
34 D1:AA6F C9 - - - ret
35 D1:AA70 - - - -
36 D1:AA70 - - - - ;;charnumsymtoascii
37 D1:AA70 - - - - ;;Converts a char to "ascii"
38 D1:AA70 - - - - ;;Inputs:
39 D1:AA70 - - - - ;; A: char code (csc)
40 D1:AA70 - - - - ;;Outputs:
41 D1:AA70 - - - - ;; A: ascii char
42 D1:AA70 - - - - charnumsymtoascii:
43 D1:AA70 E5 - - - push hl
44 D1:AA71 21 00 00 00 ld hl, 0
45 D1:AA75 26 00 - - ld h, 0
46 D1:AA77 6F - - - ld l, a
47 D1:AA78 11 02 AA D1 ld de, numsymMapCSC
48 D1:AA7C 19 - - - add hl, de
49 D1:AA7D 7E - - - ld a, (hl)
50 D1:AA7E E1 - - - pop hl
51 D1:AA7F C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
5 D1:AA80 - - - - #include "includes/lib/std/Cursor.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\Cursor.asm"
1 D1:AA80 - - - - ;;cursorcharunderreset
2 D1:AA80 - - - - ;;Sets curUnder to 0
3 D1:AA80 - - - - cursorcurunderreset:
4 D1:AA80 E5 - - - push hl
5 D1:AA81 21 99 05 D0 ld hl, curUnder
6 D1:AA85 36 20 - - ld (hl), ' '
7 D1:AA87 E1 - - - pop hl
8 D1:AA88 C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
6 D1:AA89 - - - - #include "includes/lib/std/Print.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\Print.asm"
1 D1:AA89 - - - - ;;printprompt
2 D1:AA89 - - - - ;;Sets curcol to 0 and prints prompt
3 D1:AA89 - - - - ;;Inputs:
4 D1:AA89 - - - - ;; HL: Prompt String Location
5 D1:AA89 - - - - printprompt:
6 D1:AA89 E5 - - - push hl
7 D1:AA8A AF - - - xor a
8 D1:AA8B 32 96 05 D0 ld (CurCol), a
9 D1:AA8F CD C0 07 02 call _PutS
10 D1:AA93 E1 - - - pop hl
11 D1:AA94 C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
7 D1:AA95 - - - - #include "includes/lib/std/Draw.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\Draw.asm"
1 D1:AA95 - - - - ;;drawpixel
2 D1:AA95 - - - - ;;Sets a pixel to specified color (565)
3 D1:AA95 - - - - ;;Inputs:
4 D1:AA95 - - - - ;; HL: color
5 D1:AA95 - - - - ;; DE: vRam location
6 D1:AA95 - - - - drawpixel:
7 D1:AA95 E5 - - - push hl
8 D1:AA96 D5 - - - push de
9 D1:AA97 EB - - - ex de, hl
10 D1:AA98 73 - - - ld (hl), e
11 D1:AA99 23 - - - inc hl
12 D1:AA9A 72 - - - ld (hl), d
13 D1:AA9B D1 - - - pop de
14 D1:AA9C E1 - - - pop hl
15 D1:AA9D C9 - - - ret
16 D1:AA9E - - - -
17 D1:AA9E - - - - ;;drawpixelxy
18 D1:AA9E - - - - ;;Sets a pixel to specified color
19 D1:AA9E - - - - ;;Inputs:
20 D1:AA9E - - - - ;; HL: color
21 D1:AA9E - - - - ;; DE: x
22 D1:AA9E - - - - ;; A: y
23 D1:AA9E - - - - drawpixelxy
24 D1:AA9E D5 - - - push de
25 D1:AA9F E5 - - - push hl
26 D1:AAA0 EB - - - ex de, hl
27 D1:AAA1 29 - - - add hl, hl
28 D1:AAA2 E5 - - - push hl
29 D1:AAA3 21 80 02 00 ld hl, 640
30 D1:AAA7 CD 87 A9 D1 call mulAbyHL
31 D1:AAAB EB - - - ex de, hl
32 D1:AAAC E1 - - - pop hl
33 D1:AAAD 19 - - - add hl, de
34 D1:AAAE 11 00 00 D4 ld de, vRam
35 D1:AAB2 19 - - - add hl, de
36 D1:AAB3 EB - - - ex de, hl
37 D1:AAB4 E1 - - - pop hl
38 D1:AAB5 CD 95 AA D1 call drawpixel
39 D1:AAB9 D1 - - - pop de
40 D1:AABA C9 - - - ret
41 D1:AABB - - - -
42 D1:AABB - - - - ;;drawrow
43 D1:AABB - - - - ;;Draws a row on lcd
44 D1:AABB - - - - ;;Inputs:
45 D1:AABB - - - - ;; A: y
46 D1:AABB - - - - ;; HL: color
47 D1:AABB - - - - drawrow:
48 D1:AABB E5 - - - push hl
49 D1:AABC C5 - - - push bc
50 D1:AABD E5 - - - push hl
51 D1:AABE 21 E0 01 00 ld hl, lcdHeight * 2
52 D1:AAC2 CD 87 A9 D1 call mulAbyHL
53 D1:AAC6 11 00 00 D4 ld de, vRam
54 D1:AACA 19 - - - add hl, de
55 D1:AACB EB - - - ex de, hl
56 D1:AACC E1 - - - pop hl
57 D1:AACD 01 40 01 00 ld bc, lcdWidth
58 D1:AAD1 - - - - drawrowLoop:
59 D1:AAD1 CD 95 AA D1 call drawpixel
60 D1:AAD5 13 - - - inc de
61 D1:AAD6 13 - - - inc de
62 D1:AAD7 0B - - - dec bc
63 D1:AAD8 E5 - - - push hl
64 D1:AAD9 21 00 00 00 ld hl, 0
65 D1:AADD CD 72 A9 D1 call cpHLBC
66 D1:AAE1 E1 - - - pop hl
67 D1:AAE2 20 ED - - jr nz, drawrowLoop
68 D1:AAE4 C1 - - - pop bc
69 D1:AAE5 E1 - - - pop hl
70 D1:AAE6 C9 - - - ret
71 D1:AAE7 - - - -
72 D1:AAE7 - - - - ;;drawbar
73 D1:AAE7 - - - - ;;Loops drawing row
74 D1:AAE7 - - - - ;;Inputs:
75 D1:AAE7 - - - - ;; A: y
76 D1:AAE7 - - - - ;; [B]C: height
77 D1:AAE7 - - - - ;; HL: color
78 D1:AAE7 - - - - drawbar:
79 D1:AAE7 C5 - - - push bc
80 D1:AAE8 - - - - drawbarLoop:
81 D1:AAE8 CD BB AA D1 call drawrow
82 D1:AAEC 0B - - - dec bc
83 D1:AAED 3C - - - inc a
84 D1:AAEE E5 - - - push hl
85 D1:AAEF 21 00 00 00 ld hl, 0
86 D1:AAF3 CD 72 A9 D1 call cpHLBC
87 D1:AAF7 E1 - - - pop hl
88 D1:AAF8 20 EE - - jr nz, drawbarLoop
89 D1:AAFA C1 - - - pop bc
90 D1:AAFB C9 - - - ret
91 D1:AAFC - - - -
92 D1:AAFC - - - - ;;drawrectfilled
93 D1:AAFC - - - - ;;Draws a rectangle from coordinates (Slow)
94 D1:AAFC - - - - ;;Inputs:
95 D1:AAFC - - - - ;; DE: x
96 D1:AAFC - - - - ;; C: y
97 D1:AAFC - - - - ;; HL: width
98 D1:AAFC - - - - ;; A: height
99 D1:AAFC - - - - ;; IXH+IXL: color
100 D1:AAFC - - - - drawrectfilled:
101 D1:AAFC 19 - - - add hl, de
102 D1:AAFD 81 - - - add a, c
103 D1:AAFE 47 - - - ld b, a
104 D1:AAFF - - - - drawrectfilledLoopY:
105 D1:AAFF D5 - - - push de
106 D1:AB00 - - - - drawrectfilledLoopX:
107 D1:AB00 E5 - - - push hl
108 D1:AB01 C5 - - - push bc
109 D1:AB02 EB - - - ex de, hl
110 D1:AB03 DD 54 - - ld d, ixh
111 D1:AB05 DD 5D - - ld e, ixl
112 D1:AB07 EB - - - ex de, hl
113 D1:AB08 79 - - - ld a, c
114 D1:AB09 CD 9E AA D1 call drawpixelxy
115 D1:AB0D C1 - - - pop bc
116 D1:AB0E E1 - - - pop hl
117 D1:AB0F 13 - - - inc de
118 D1:AB10 CD 6D A9 D1 call cpHLDE
119 D1:AB14 20 EA - - jr nz, drawrectfilledLoopX
120 D1:AB16 D1 - - - pop de
121 D1:AB17 0C - - - inc c
122 D1:AB18 78 - - - ld a, b
123 D1:AB19 B9 - - - cp c
124 D1:AB1A 20 E3 - - jr nz, drawrectfilledLoopY
125 D1:AB1C C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
8 D1:AB1D - - - - #include "includes/lib/std/Array.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\Array.asm"
1 D1:AB1D - - - - ;;array2d
2 D1:AB1D - - - - ;;gets the address of 2d array
3 D1:AB1D - - - - ;;Inputs:
4 D1:AB1D - - - - ;; H: y
5 D1:AB1D - - - - ;; L: x width
6 D1:AB1D - - - - ;; B: x
7 D1:AB1D - - - - ;; DE: Array start
8 D1:AB1D - - - - ;;Outputs:
9 D1:AB1D - - - - ;; DE: Array loc address
10 D1:AB1D - - - - array2d:
11 D1:AB1D E5 - - - push hl
12 D1:AB1E ED 6C - - mlt hl
13 D1:AB20 19 - - - add hl, de
14 D1:AB21 11 00 00 00 ld de, 0
15 D1:AB25 58 - - - ld e, b
16 D1:AB26 19 - - - add hl, de
17 D1:AB27 EB - - - ex de, hl
18 D1:AB28 E1 - - - pop hl
19 D1:AB29 C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
9 D1:AB2A - - - -
10 D1:AB2A - - - - #include "includes/lib/std/String.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\String.asm"
1 D1:AB2A - - - - ;;strlen
2 D1:AB2A - - - - ;;Determines the length of a zero delimited string.
3 D1:AB2A - - - - ;;Inputs:
4 D1:AB2A - - - - ;; HL: String pointer
5 D1:AB2A - - - - ;;Outputs:
6 D1:AB2A - - - - ;; BC: String length
7 D1:AB2A - - - - strlen:
8 D1:AB2A F5 - - - push af
9 D1:AB2B E5 - - - push hl
10 D1:AB2C AF - - - xor a
11 D1:AB2D 47 - - - ld b, a
12 D1:AB2E 4F - - - ld c, a
13 D1:AB2F ED B1 - - cpir
14 D1:AB31 - - - - ; bc = -bc
15 D1:AB31 AF 91 4F 9F
90 47 - - xor a \ sub c \ ld c, a \ sbc a, a \ sub b \ ld b, a
16 D1:AB37 0B - - - dec bc
17 D1:AB38 E1 - - - pop hl
18 D1:AB39 F1 - - - pop af
19 D1:AB3A C9 - - - ret
20 D1:AB3B - - - -
21 D1:AB3B - - - - ;;strcmp
22 D1:AB3B - - - - ;;Determines if two strings are equal, and checks alphabetical sort order.
23 D1:AB3B - - - - ;;Inputs:
24 D1:AB3B - - - - ;; HL: String pointer
25 D1:AB3B - - - - ;; DE: String pointer
26 D1:AB3B - - - - ;;Outputs:
27 D1:AB3B - - - - ;; Z: Set if equal, reset if not equal
28 D1:AB3B - - - - ;; C: Set if string HL is alphabetically earlier than string DE
29 D1:AB3B - - - - strcmp:
30 D1:AB3B E5 - - - push hl
31 D1:AB3C D5 - - - push de
32 D1:AB3D - - - - strcmpLoop:
33 D1:AB3D 1A - - - ld a, (de)
34 D1:AB3E B7 - - - or a
35 D1:AB3F 28 07 - - jr z, strCmpEnd
36 D1:AB41 BE - - - cp (hl)
37 D1:AB42 20 06 - - jr nz, strcmpExit
38 D1:AB44 23 - - - inc hl
39 D1:AB45 13 - - - inc de
40 D1:AB46 18 F5 - - jr strcmpLoop
41 D1:AB48 - - - - strcmpEnd:
42 D1:AB48 7E - - - ld a, (hl)
43 D1:AB49 B7 - - - or a
44 D1:AB4A - - - - strcmpExit:
45 D1:AB4A 3F - - - ccf
46 D1:AB4B D1 - - - pop de
47 D1:AB4C E1 - - - pop hl
48 D1:AB4D C9 - - - ret
49 D1:AB4E - - - -
50 D1:AB4E - - - - ;;strcpy
51 D1:AB4E - - - - ;;Copies a string.
52 D1:AB4E - - - - ;;Inputs:
53 D1:AB4E - - - - ;; HL: String pointer
54 D1:AB4E - - - - ;; DE: Destination
55 D1:AB4E - - - - ;;Notes:
56 D1:AB4E - - - - ;; This will trample into undefined territory if you try to copy a string into some
57 D1:AB4E - - - - ;;allocated memory it won't fit in.
58 D1:AB4E - - - - strcpy:
59 D1:AB4E D5 - - - push de
60 D1:AB4F E5 - - - push hl
61 D1:AB50 EB - - - ex de, hl
62 D1:AB51 1A - - - _: ld a, (de)
63 D1:AB52 77 - - - ld (hl), a
64 D1:AB53 B7 - - - or a
65 D1:AB54 28 04 - - jr z, _
66 D1:AB56 23 13 - - inc hl \ inc de
67 D1:AB58 18 F7 - - jr -_
68 D1:AB5A E1 - - - _: pop hl
69 D1:AB5B D1 - - - pop de
70 D1:AB5C C9 - - - ret
71 D1:AB5D - - - -
72 D1:AB5D - - - - ;;strchr
73 D1:AB5D - - - - ;;Returns a pointer on the first occurence of a character in a string.
74 D1:AB5D - - - - ;;Inputs:
75 D1:AB5D - - - - ;; HL: Haystack
76 D1:AB5D - - - - ;; B: Needle
77 D1:AB5D - - - - ;;Outputs:
78 D1:AB5D - - - - ;; HL: Pointer to first occurence of character
79 D1:AB5D - - - - ;; Z: Set if character found
80 D1:AB5D - - - - ;; A: Destroyed
81 D1:AB5D - - - - strchr:
82 D1:AB5D - - - - strchrLoop:
83 D1:AB5D 7E - - - ld a, (hl)
84 D1:AB5E B7 - - - or a
85 D1:AB5F 28 05 - - jr z, strchrNoCharFound
86 D1:AB61 B8 - - - cp b
87 D1:AB62 C8 - - - ret z
88 D1:AB63 23 - - - inc hl
89 D1:AB64 18 F7 - - jr strchrLoop
90 D1:AB66 - - - - strchrNoCharFound:
91 D1:AB66 3C - - - inc a
92 D1:AB67 C9 - - - ret
93 D1:AB68 - - - -
94 D1:AB68 - - - - ;;strtob
95 D1:AB68 - - - - ;;Converts a string to a byte
96 D1:AB68 - - - - ;;Inputs:
97 D1:AB68 - - - - ;; HL: string pointer
98 D1:AB68 - - - - ;;Outputs:
99 D1:AB68 - - - - ;; A: byte
100 D1:AB68 - - - - strtob:
101 D1:AB68 C5 - - - push bc
102 D1:AB69 D5 - - - push de
103 D1:AB6A 0E 00 - - ld c, 0
104 D1:AB6C - - - - strtobNumFind:
105 D1:AB6C 7E - - - ld a, (hl)
106 D1:AB6D FE 00 - - cp $00
107 D1:AB6F CA C1 AB D1 jp z, strtobEXIT
108 D1:AB73 0E 00 - - ld c, 0
109 D1:AB75 D6 31 - - sub '1'
110 D1:AB77 FE 3A - - cp '9' + 1
111 D1:AB79 38 03 - - jr c, strtobNumWhile
112 D1:AB7B 23 - - - inc hl
113 D1:AB7C 18 EE - - jr strtobNumFind
114 D1:AB7E - - - - strtobNumWhile:
115 D1:AB7E E5 - - - push hl
116 D1:AB7F - - - - strtobNumWhileLoop:
117 D1:AB7F 79 - - - ld a, c
118 D1:AB80 FE 03 - - cp 3
119 D1:AB82 D2 93 AB D1 jp nc, strtobConvert
120 D1:AB86 7E - - - ld a, (hl)
121 D1:AB87 D6 2F - - sub '0' - 1
122 D1:AB89 38 08 - - jr c, strtobConvert
123 D1:AB8B FE 3A - - cp '9' + 1
124 D1:AB8D 30 04 - - jr nc, strtobConvert
125 D1:AB8F 23 - - - inc hl
126 D1:AB90 0C - - - inc c
127 D1:AB91 18 EC - - jr strtobNumWhileLoop
128 D1:AB93 - - - - strtobConvert:
129 D1:AB93 2B - - - dec hl
130 D1:AB94 7E - - - ld a, (hl)
131 D1:AB95 D6 30 - - sub '0'
132 D1:AB97 4F - - - ld c, a
133 D1:AB98 2B - - - dec hl
134 D1:AB99 D1 - - - pop de
135 D1:AB9A CD 6D A9 D1 call cpHLDE
136 D1:AB9E DA C1 AB D1 jp c, strtobExit
137 D1:ABA2 7E - - - ld a, (hl)
138 D1:ABA3 D6 30 - - sub '0'
139 D1:ABA5 06 0A - - ld b, 10
140 D1:ABA7 CD 7F A9 D1 call mulAbyB
141 D1:ABAB 81 - - - add a, c
142 D1:ABAC 4F - - - ld c, a
143 D1:ABAD 2B - - - dec hl
144 D1:ABAE CD 6D A9 D1 call cpHLDE
145 D1:ABB2 DA C1 AB D1 jp c, strtobExit
146 D1:ABB6 7E - - - ld a, (hl)
147 D1:ABB7 D6 30 - - sub '0'
148 D1:ABB9 06 64 - - ld b, 100
149 D1:ABBB CD 7F A9 D1 call mulAbyB
150 D1:ABBF 81 - - - add a, c
151 D1:ABC0 4F - - - ld c, a
152 D1:ABC1 - - - - strtobExit:
153 D1:ABC1 79 - - - ld a, c
154 D1:ABC2 D1 - - - pop de
155 D1:ABC3 C1 - - - pop bc
156 D1:ABC4 C9 - - - ret
157 D1:ABC5 - - - -
158 D1:ABC5 - - - - ;;strtow
159 D1:ABC5 - - - - ;;Converts a string to a byte
160 D1:ABC5 - - - - ;;Inputs:
161 D1:ABC5 - - - - ;; HL: string pointer
162 D1:ABC5 - - - - ;;Outputs:
163 D1:ABC5 - - - - ;; HL: byte
164 D1:ABC5 - - - - strtow:
165 D1:ABC5 C5 - - - push bc
166 D1:ABC6 D5 - - - push de
167 D1:ABC7 01 00 00 00 ld bc, 0
168 D1:ABCB - - - - strtowNumFind:
169 D1:ABCB 7E - - - ld a, (hl)
170 D1:ABCC FE 00 - - cp $00
171 D1:ABCE CA 64 AC D1 jp z, strtowEXIT
172 D1:ABD2 0E 00 - - ld c, 0
173 D1:ABD4 D6 31 - - sub '1'
174 D1:ABD6 FE 3A - - cp '9' + 1
175 D1:ABD8 38 03 - - jr c, strtowNumWhile
176 D1:ABDA 23 - - - inc hl
177 D1:ABDB 18 EE - - jr strtowNumFind
178 D1:ABDD - - - - strtowNumWhile:
179 D1:ABDD E5 - - - push hl
180 D1:ABDE - - - - strtowNumWhileLoop:
181 D1:ABDE 79 - - - ld a, c
182 D1:ABDF FE 05 - - cp 5
183 D1:ABE1 D2 F2 AB D1 jp nc, strtowConvert
184 D1:ABE5 7E - - - ld a, (hl)
185 D1:ABE6 D6 2F - - sub '0' - 1
186 D1:ABE8 38 08 - - jr c, strtowConvert
187 D1:ABEA FE 3A - - cp '9' + 1
188 D1:ABEC 30 04 - - jr nc, strtowConvert
189 D1:ABEE 23 - - - inc hl
190 D1:ABEF 0C - - - inc c
191 D1:ABF0 18 EC - - jr strtowNumWhileLoop
192 D1:ABF2 - - - - strtowConvert:
193 D1:ABF2 01 00 00 00 ld bc, 0
194 D1:ABF6 2B - - - dec hl
195 D1:ABF7 7E - - - ld a, (hl)
196 D1:ABF8 D6 30 - - sub '0'
197 D1:ABFA 01 00 00 00 ld bc, 0
198 D1:ABFE 4F - - - ld c, a
199 D1:ABFF 2B - - - dec hl
200 D1:AC00 - - - -
201 D1:AC00 D1 - - - pop de
202 D1:AC01 CD 6D A9 D1 call cpHLDE
203 D1:AC05 DA 64 AC D1 jp c, strtowExit
204 D1:AC09 7E - - - ld a, (hl)
205 D1:AC0A D6 30 - - sub '0'
206 D1:AC0C E5 - - - push hl
207 D1:AC0D 21 0A 00 00 ld hl, 10
208 D1:AC11 CD 87 A9 D1 call mulAbyHL
209 D1:AC15 09 - - - add hl, bc
210 D1:AC16 44 - - - ld b, h
211 D1:AC17 4D - - - ld c, l
212 D1:AC18 E1 - - - pop hl
213 D1:AC19 2B - - - dec hl
214 D1:AC1A - - - -
215 D1:AC1A CD 6D A9 D1 call cpHLDE
216 D1:AC1E DA 64 AC D1 jp c, strtowExit
217 D1:AC22 7E - - - ld a, (hl)
218 D1:AC23 D6 30 - - sub '0'
219 D1:AC25 E5 - - - push hl
220 D1:AC26 21 64 00 00 ld hl, 100
221 D1:AC2A CD 87 A9 D1 call mulAbyHL
222 D1:AC2E 09 - - - add hl, bc
223 D1:AC2F 44 - - - ld b, h
224 D1:AC30 4D - - - ld c, l
225 D1:AC31 E1 - - - pop hl
226 D1:AC32 2B - - - dec hl
227 D1:AC33 - - - -
228 D1:AC33 CD 6D A9 D1 call cpHLDE
229 D1:AC37 DA 64 AC D1 jp c, strtowExit
230 D1:AC3B 7E - - - ld a, (hl)
231 D1:AC3C D6 30 - - sub '0'
232 D1:AC3E E5 - - - push hl
233 D1:AC3F 21 E8 03 00 ld hl, 1000
234 D1:AC43 CD 87 A9 D1 call mulAbyHL
235 D1:AC47 09 - - - add hl, bc
236 D1:AC48 44 - - - ld b, h
237 D1:AC49 4D - - - ld c, l
238 D1:AC4A E1 - - - pop hl
239 D1:AC4B 2B - - - dec hl
240 D1:AC4C - - - -
241 D1:AC4C CD 6D A9 D1 call cpHLDE
242 D1:AC50 DA 64 AC D1 jp c, strtowExit
243 D1:AC54 7E - - - ld a, (hl)
244 D1:AC55 D6 30 - - sub '0'
245 D1:AC57 E5 - - - push hl
246 D1:AC58 21 10 27 00 ld hl, 10000
247 D1:AC5C CD 87 A9 D1 call mulAbyHL
248 D1:AC60 09 - - - add hl, bc
249 D1:AC61 44 - - - ld b, h
250 D1:AC62 4D - - - ld c, l
251 D1:AC63 E1 - - - pop hl
252 D1:AC64 - - - -
253 D1:AC64 - - - - strtowExit:
254 D1:AC64 21 00 00 00 ld hl, 0
255 D1:AC68 60 - - - ld h, b
256 D1:AC69 69 - - - ld l, c
257 D1:AC6A D1 - - - pop de
258 D1:AC6B C1 - - - pop bc
259 D1:AC6C C9 - - - ret
260 D1:AC6D - - - -
261 D1:AC6D - - - - ;;toLower [Strings]
262 D1:AC6D - - - - ;;Converts every alpha character of a string to lowercase.
263 D1:AC6D - - - - ;;Inputs:
264 D1:AC6D - - - - ;; HL: Pointer to string
265 D1:AC6D - - - - ;;Notes:
266 D1:AC6D - - - - ;; This modifies the string in-place.
267 D1:AC6D - - - - ;toLower:
268 D1:AC6D - - - - ; push af \ push hl
269 D1:AC6D - - - - ; ld a, (hl)
270 D1:AC6D - - - - ; or a
271 D1:AC6D - - - - ; jr z, toLowerExit
272 D1:AC6D - - - - ; call isAlphaNum
273 D1:AC6D - - - - ; jr nc, toLowerNotUpperAlpha
274 D1:AC6D - - - - ; cp 'a'
275 D1:AC6D - - - - ; jr nc, toLowerNotUpperAlpha
276 D1:AC6D - - - - ; add a, 'a' - 'A'
277 D1:AC6D - - - - ; ld (hl), a
278 D1:AC6D - - - - ;toLowerNotUpperAlpha:
279 D1:AC6D - - - - ; inc hl
280 D1:AC6D - - - - ; jr toLower + 2
281 D1:AC6D - - - - ;toLowerExit:
282 D1:AC6D - - - - ; pop hl \ pop af
283 D1:AC6D - - - - ; ret
284 D1:AC6D - - - -
285 D1:AC6D - - - - ;;toUpper [Strings]
286 D1:AC6D - - - - ;;Converts every alpha character of a string to uppercase.
287 D1:AC6D - - - - ;;Inputs:
288 D1:AC6D - - - - ;; HL: Pointer to string
289 D1:AC6D - - - - ;;Notes:
290 D1:AC6D - - - - ;; This modifies the string in-place.
291 D1:AC6D - - - - ;toUpper:
292 D1:AC6D - - - - ; push af \ push hl
293 D1:AC6D - - - - ; ld a, (hl)
294 D1:AC6D - - - - ; or a
295 D1:AC6D - - - - ; jr z, toUpperExit
296 D1:AC6D - - - - ; call isAlphaNum
297 D1:AC6D - - - - ; jr nc, toUpperNotLowerAlpha
298 D1:AC6D - - - - ; cp 'a'
299 D1:AC6D - - - - ; jr c, toUpperNotLowerAlpha
300 D1:AC6D - - - - ; sub 'a' - 'A'
301 D1:AC6D - - - - ; ld (hl), a
302 D1:AC6D - - - - ;toUpperNotLowerAlpha:
303 D1:AC6D - - - - ; inc hl
304 D1:AC6D - - - - ; jr toUpper + 2
305 D1:AC6D - - - - ;toUpperExit:
306 D1:AC6D - - - - ; pop hl \ pop af
307 D1:AC6D - - - - ; ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
11 D1:AC6D - - - -
12 D1:AC6D - - - - #include "includes/lib/std/Input.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\Input.asm"
1 D1:AC6D - - - - ;;inputgetkey
2 D1:AC6D - - - - ;;Gets keycode
3 D1:AC6D - - - - ;;Outputs:
4 D1:AC6D - - - - ;; A: keycode
5 D1:AC6D - - - - ;;Destroys:
6 D1:AC6D - - - - ;; DE
7 D1:AC6D - - - - inputgetkey:
8 D1:AC6D EB - - - ex de, hl
9 D1:AC6E CD 4C 01 02 call _GetCSC
10 D1:AC72 EB - - - ex de, hl
11 D1:AC73 B7 - - - or a
12 D1:AC74 28 F7 - - jr z, inputgetkey
13 D1:AC76 C9 - - - ret
14 D1:AC77 - - - -
15 D1:AC77 - - - - ;;inputstr
16 D1:AC77 - - - - ;;Inputs string of length [Buffer Size] and puts it in (Destination)
17 D1:AC77 - - - - ;;Inputs:
18 D1:AC77 - - - - ;; HL: Destination
19 D1:AC77 - - - - ;; D[E]: Buffer Size
20 D1:AC77 - - - - ;;Ouptuts:
21 D1:AC77 - - - - ;; (HL): String
22 D1:AC77 - - - - inputstr:
23 D1:AC77 D5 - - - push de
24 D1:AC78 E5 - - - push hl
25 D1:AC79 ED 53 97 AD
D1 - - - ld (inputstrSizeBuf), de
26 D1:AC7E E5 - - - push hl
27 D1:AC7F D5 - - - push de
28 D1:AC80 21 96 05 D0 ld hl, CurCol
29 D1:AC84 11 99 AD D1 ld de, inputstrCurColBuf
30 D1:AC88 CD CB A9 D1 call bytecpy
31 D1:AC8C 21 95 05 D0 ld hl, CurRow
32 D1:AC90 11 9A AD D1 ld de, inputstrCurRowBuf
33 D1:AC94 CD CB A9 D1 call bytecpy
34 D1:AC98 D1 - - - pop de
35 D1:AC99 E1 - - - pop hl
36 D1:AC9A - - - -
37 D1:AC9A FD CB 12 9E res Shift2nd, (IY + ShiftFlags)
38 D1:AC9E CD B0 08 02 call _CursorOn
39 D1:ACA2 - - - -
40 D1:ACA2 AF - - - xor a
41 D1:ACA3 47 - - - ld b, a
42 D1:ACA4 - - - - inputstrKeyInput:
43 D1:ACA4 CD 80 AA D1 call cursorcurunderreset
44 D1:ACA8 CD 6D AC D1 call inputgetkey
45 D1:ACAC - - - -
46 D1:ACAC FE 36 - - cp sk2nd
47 D1:ACAE CA 05 AD D1 jp z, inputstrKey2nd
48 D1:ACB2 FE 38 - - cp skDel
49 D1:ACB4 CA 13 AD D1 jp z, inputstrKeyDel
50 D1:ACB8 FE 0F - - cp skClear
51 D1:ACBA CA 33 AD D1 jp z, inputstrKeyClear
52 D1:ACBE FE 09 - - cp skEnter
53 D1:ACC0 CA 83 AD D1 jp z, inputstrKeyEnter
54 D1:ACC4 - - - -
55 D1:ACC4 4F - - - ld c, a
56 D1:ACC5 78 - - - ld a, b
57 D1:ACC6 D5 - - - push de
58 D1:ACC7 ED 5B 97 AD
D1 - - - ld de, (inputstrSizeBuf)
59 D1:ACCC BB - - - cp e
60 D1:ACCD D1 - - - pop de
61 D1:ACCE 28 D4 - - jr z, inputstrKeyInput
62 D1:ACD0 79 - - - ld a, c
63 D1:ACD1 - - - -
64 D1:ACD1 D6 0A - - sub skAdd
65 D1:ACD3 38 CF - - jr c, inputstrKeyInput
66 D1:ACD5 FE 26 - - cp skMath - skAdd + 1
67 D1:ACD7 30 CB - - jr nc, inputstrKeyInput
68 D1:ACD9 - - - -
69 D1:ACD9 FD CB 12 5E bit Shift2nd, (IY + ShiftFlags) ; TIOS BASED
70 D1:ACDD CC 50 AA D1 call z, chartoascii
71 D1:ACE1 C4 70 AA D1 call nz, charnumsymtoascii
72 D1:ACE5 - - - -
73 D1:ACE5 FE FF - - cp $FF
74 D1:ACE7 28 BB - - jr z, inputstrKeyInput
75 D1:ACE9 - - - -
76 D1:ACE9 FD CB 05 96 res textScrolled, (iy+textFlags)
77 D1:ACED - - - -
78 D1:ACED CD B8 07 02 call _PutC
79 D1:ACF1 - - - -
80 D1:ACF1 77 - - - ld (hl), a
81 D1:ACF2 23 - - - inc hl
82 D1:ACF3 04 - - - inc b
83 D1:ACF4 - - - -
84 D1:ACF4 FD CB 05 56 bit textScrolled, (iy+textFlags)
85 D1:ACF8 28 AA - - jr z, inputstrKeyInput
86 D1:ACFA E5 - - - push hl
87 D1:ACFB 21 9A AD D1 ld hl, inputstrCurRowBuf
88 D1:ACFF 7E - - - ld a, (hl)
89 D1:AD00 3D - - - dec a
90 D1:AD01 77 - - - ld (hl), a
91 D1:AD02 E1 - - - pop hl
92 D1:AD03 18 9F - - jr inputstrKeyInput
93 D1:AD05 - - - - inputstrKey2nd:
94 D1:AD05 E5 - - - push hl
95 D1:AD06 21 92 00 D0 ld hl, Flags + ShiftFlags
96 D1:AD0A 7E - - - ld a, (hl)
97 D1:AD0B EE 08 - - xor 1 << Shift2nd ; Toggle state of Shift2nd flag
98 D1:AD0D 77 - - - ld (hl), a
99 D1:AD0E E1 - - - pop hl
100 D1:AD0F C3 A4 AC D1 jp inputstrKeyInput
101 D1:AD13 - - - - inputstrKeyDel:
102 D1:AD13 78 - - - ld a, b
103 D1:AD14 FE 00 - - cp 0
104 D1:AD16 CA A4 AC D1 jp z, inputstrKeyInput
105 D1:AD1A - - - -
106 D1:AD1A 3E 20 - - ld a, ' '
107 D1:AD1C CD B4 07 02 call _PutMap
108 D1:AD20 - - - -
109 D1:AD20 E5 - - - push hl
110 D1:AD21 21 96 05 D0 ld hl, CurCol
111 D1:AD25 35 - - - dec (hl)
112 D1:AD26 E1 - - - pop hl
113 D1:AD27 - - - -
114 D1:AD27 3E 20 - - ld a, ' '
115 D1:AD29 CD B4 07 02 call _PutMap
116 D1:AD2D - - - -
117 D1:AD2D 2B - - - dec hl
118 D1:AD2E 05 - - - dec b
119 D1:AD2F C3 A4 AC D1 jp inputstrKeyInput
120 D1:AD33 - - - -
121 D1:AD33 - - - - inputstrKeyClear:
122 D1:AD33 78 - - - ld a, b
123 D1:AD34 FE 00 - - cp 0
124 D1:AD36 CA A4 AC D1 jp z, inputstrKeyInput
125 D1:AD3A - - - -
126 D1:AD3A E5 - - - push hl
127 D1:AD3B D5 - - - push de
128 D1:AD3C 21 99 AD D1 ld hl, inputstrCurColBuf
129 D1:AD40 11 96 05 D0 ld de, CurCol
130 D1:AD44 CD CB A9 D1 call bytecpy
131 D1:AD48 21 9A AD D1 ld hl, inputstrCurRowBuf
132 D1:AD4C 11 95 05 D0 ld de, CurRow
133 D1:AD50 CD CB A9 D1 call bytecpy
134 D1:AD54 D1 - - - pop de
135 D1:AD55 E1 - - - pop hl
136 D1:AD56 - - - -
137 D1:AD56 3E 20 - - ld a, ' '
138 D1:AD58 04 - - - inc b
139 D1:AD59 - - - - inputstrKeyClearLoop:
140 D1:AD59 CD B8 07 02 call _PutC
141 D1:AD5D 10 FA - - djnz inputstrKeyClearLoop
142 D1:AD5F 06 00 - - ld b, 0
143 D1:AD61 - - - -
144 D1:AD61 D5 - - - push de
145 D1:AD62 E5 - - - push hl
146 D1:AD63 21 99 AD D1 ld hl, inputstrCurColBuf
147 D1:AD67 11 96 05 D0 ld de, CurCol
148 D1:AD6B CD CB A9 D1 call bytecpy
149 D1:AD6F 21 9A AD D1 ld hl, inputstrCurRowBuf
150 D1:AD73 11 95 05 D0 ld de, CurRow
151 D1:AD77 CD CB A9 D1 call bytecpy
152 D1:AD7B E1 - - - pop hl
153 D1:AD7C D1 - - - pop de
154 D1:AD7D E1 - - - pop hl
155 D1:AD7E E5 - - - push hl
156 D1:AD7F C3 A4 AC D1 jp inputstrKeyInput
157 D1:AD83 - - - -
158 D1:AD83 - - - - inputstrKeyEnter:
159 D1:AD83 36 00 - - ld (hl), 0
160 D1:AD85 CD A8 08 02 call _CursorOff
161 D1:AD89 3E 20 - - ld a, ' '
162 D1:AD8B CD B4 07 02 call _PutMap
163 D1:AD8F E1 - - - pop hl
164 D1:AD90 D1 - - - pop de
165 D1:AD91 FD CB 12 9E res Shift2nd, (IY + ShiftFlags)
166 D1:AD95 C9 - - - ret
167 D1:AD96 - - - -
168 D1:AD96 00 - - - inputstrFlags: .db %00000000
169 D1:AD97 - - - - ; 0: num Flag
170 D1:AD97 00 00 - - inputstrSizeBuf: .dw $0000
171 D1:AD99 00 - - - inputstrCurColBuf: .db $00
172 D1:AD9A 00 - - - inputstrCurRowBuf: .db $00
173 D1:AD9B - - - -
174 D1:AD9B - - - - ;;inputcharstr
175 D1:AD9B - - - - ;;Inputs string of (only letters) of length [Buffer Size] and puts it in (Destination)
176 D1:AD9B - - - - ;;Inputs:
177 D1:AD9B - - - - ;; HL: Destination
178 D1:AD9B - - - - ;; D[E]: Buffer Size
179 D1:AD9B - - - - ;;Ouptuts:
180 D1:AD9B - - - - ;; (HL): String
181 D1:AD9B - - - - inputcharstr:
182 D1:AD9B D5 - - - push de
183 D1:AD9C E5 - - - push hl
184 D1:AD9D ED 53 97 AD
D1 - - - ld (inputstrSizeBuf), de
185 D1:ADA2 E5 - - - push hl
186 D1:ADA3 D5 - - - push de
187 D1:ADA4 21 96 05 D0 ld hl, CurCol
188 D1:ADA8 11 99 AD D1 ld de, inputstrCurColBuf
189 D1:ADAC CD CB A9 D1 call bytecpy
190 D1:ADB0 21 95 05 D0 ld hl, CurRow
191 D1:ADB4 11 9A AD D1 ld de, inputstrCurRowBuf
192 D1:ADB8 CD CB A9 D1 call bytecpy
193 D1:ADBC D1 - - - pop de
194 D1:ADBD E1 - - - pop hl
195 D1:ADBE - - - -
196 D1:ADBE CD B0 08 02 call _CursorOn
197 D1:ADC2 - - - -
198 D1:ADC2 AF - - - xor a
199 D1:ADC3 47 - - - ld b, a
200 D1:ADC4 - - - - inputcharstrKeyInput:
201 D1:ADC4 CD 80 AA D1 call cursorcurunderreset
202 D1:ADC8 CD 6D AC D1 call inputgetkey
203 D1:ADCC - - - -
204 D1:ADCC FE 38 - - cp skDel
205 D1:ADCE CA 17 AE D1 jp z, inputcharstrKeyDel
206 D1:ADD2 FE 0F - - cp skClear
207 D1:ADD4 CA 37 AE D1 jp z, inputcharstrKeyClear
208 D1:ADD8 FE 09 - - cp skEnter
209 D1:ADDA CA 9C AE D1 jp z, inputcharstrKeyEnter
210 D1:ADDE - - - -
211 D1:ADDE 4F - - - ld c, a
212 D1:ADDF 78 - - - ld a, b
213 D1:ADE0 D5 - - - push de
214 D1:ADE1 ED 5B AB AE
D1 - - - ld de, (inputcharstrSizeBuf)
215 D1:ADE6 BB - - - cp e
216 D1:ADE7 D1 - - - pop de
217 D1:ADE8 28 DA - - jr z, inputcharstrKeyInput
218 D1:ADEA 79 - - - ld a, c
219 D1:ADEB - - - -
220 D1:ADEB D6 0A - - sub skAdd
221 D1:ADED 38 D5 - - jr c, inputcharstrKeyInput
222 D1:ADEF FE 26 - - cp skMath - skAdd + 1
223 D1:ADF1 30 D1 - - jr nc, inputcharstrKeyInput
224 D1:ADF3 - - - -
225 D1:ADF3 CD 50 AA D1 call chartoascii
226 D1:ADF7 - - - -
227 D1:ADF7 FE FF - - cp $FF
228 D1:ADF9 28 C9 - - jr z, inputcharstrKeyInput
229 D1:ADFB - - - -
230 D1:ADFB FD CB 05 96 res textScrolled, (iy+textFlags)
231 D1:ADFF - - - -
232 D1:ADFF CD B8 07 02 call _PutC
233 D1:AE03 - - - -
234 D1:AE03 77 - - - ld (hl), a
235 D1:AE04 23 - - - inc hl
236 D1:AE05 04 - - - inc b
237 D1:AE06 - - - -
238 D1:AE06 FD CB 05 56 bit textScrolled, (iy+textFlags)
239 D1:AE0A 28 B8 - - jr z, inputcharstrKeyInput
240 D1:AE0C E5 - - - push hl
241 D1:AE0D 21 AE AE D1 ld hl, inputcharstrCurRowBuf
242 D1:AE11 7E - - - ld a, (hl)
243 D1:AE12 3D - - - dec a
244 D1:AE13 77 - - - ld (hl), a
245 D1:AE14 E1 - - - pop hl
246 D1:AE15 18 AD - - jr inputcharstrKeyInput
247 D1:AE17 - - - - inputcharstrKeyDel:
248 D1:AE17 78 - - - ld a, b
249 D1:AE18 FE 00 - - cp 0
250 D1:AE1A CA C4 AD D1 jp z, inputcharstrKeyInput
251 D1:AE1E - - - -
252 D1:AE1E 3E 20 - - ld a, ' '
253 D1:AE20 CD B4 07 02 call _PutMap
254 D1:AE24 - - - -
255 D1:AE24 E5 - - - push hl
256 D1:AE25 21 96 05 D0 ld hl, CurCol
257 D1:AE29 35 - - - dec (hl)
258 D1:AE2A E1 - - - pop hl
259 D1:AE2B - - - -
260 D1:AE2B 3E 20 - - ld a, ' '
261 D1:AE2D CD B4 07 02 call _PutMap
262 D1:AE31 - - - -
263 D1:AE31 2B - - - dec hl
264 D1:AE32 05 - - - dec b
265 D1:AE33 C3 C4 AD D1 jp inputcharstrKeyInput
266 D1:AE37 - - - -
267 D1:AE37 - - - - inputcharstrKeyClear:
268 D1:AE37 78 - - - ld a, b
269 D1:AE38 FE 00 - - cp 0
270 D1:AE3A CA C4 AD D1 jp z, inputcharstrKeyInput
271 D1:AE3E - - - -
272 D1:AE3E E5 - - - push hl
273 D1:AE3F 21 95 05 D0 ld hl, CurRow
274 D1:AE43 4E - - - ld c, (hl)
275 D1:AE44 E1 - - - pop hl
276 D1:AE45 - - - -
277 D1:AE45 E5 - - - push hl
278 D1:AE46 D5 - - - push de
279 D1:AE47 21 AD AE D1 ld hl, inputcharstrCurColBuf
280 D1:AE4B 11 96 05 D0 ld de, CurCol
281 D1:AE4F CD CB A9 D1 call bytecpy
282 D1:AE53 21 AE AE D1 ld hl, inputcharstrCurRowBuf
283 D1:AE57 11 95 05 D0 ld de, CurRow
284 D1:AE5B CD CB A9 D1 call bytecpy
285 D1:AE5F D1 - - - pop de
286 D1:AE60 E1 - - - pop hl
287 D1:AE61 - - - -
288 D1:AE61 3E 20 - - ld a, ' '
289 D1:AE63 04 - - - inc b
290 D1:AE64 - - - - inputcharstrKeyClearLoop:
291 D1:AE64 CD B8 07 02 call _PutC
292 D1:AE68 10 FA - - djnz inputcharstrKeyClearLoop
293 D1:AE6A - - - -
294 D1:AE6A E5 - - - push hl
295 D1:AE6B D5 - - - push de
296 D1:AE6C 21 AD AE D1 ld hl, inputcharstrCurColBuf
297 D1:AE70 11 96 05 D0 ld de, CurCol
298 D1:AE74 CD CB A9 D1 call bytecpy
299 D1:AE78 D1 - - - pop de
300 D1:AE79 E1 - - - pop hl
301 D1:AE7A - - - -
302 D1:AE7A D5 - - - push de
303 D1:AE7B E5 - - - push hl
304 D1:AE7C 21 AD AE D1 ld hl, inputcharstrCurColBuf
305 D1:AE80 11 96 05 D0 ld de, CurCol
306 D1:AE84 CD CB A9 D1 call bytecpy
307 D1:AE88 21 AE AE D1 ld hl, inputcharstrCurRowBuf
308 D1:AE8C 11 95 05 D0 ld de, CurRow
309 D1:AE90 CD CB A9 D1 call bytecpy
310 D1:AE94 E1 - - - pop hl
311 D1:AE95 D1 - - - pop de
312 D1:AE96 E1 - - - pop hl
313 D1:AE97 E5 - - - push hl
314 D1:AE98 C3 C4 AD D1 jp inputcharstrKeyInput
315 D1:AE9C - - - -
316 D1:AE9C - - - - inputcharstrKeyEnter:
317 D1:AE9C 36 00 - - ld (hl), 0
318 D1:AE9E CD A8 08 02 call _CursorOff
319 D1:AEA2 3E 20 - - ld a, ' '
320 D1:AEA4 CD B4 07 02 call _PutMap
321 D1:AEA8 E1 - - - pop hl
322 D1:AEA9 D1 - - - pop de
323 D1:AEAA C9 - - - ret
324 D1:AEAB - - - -
325 D1:AEAB 00 00 - - inputcharstrSizeBuf: .dw $0000
326 D1:AEAD 00 - - - inputcharstrCurColBuf: .db $00
327 D1:AEAE 00 - - - inputcharstrCurRowBuf: .db $00
328 D1:AEAF - - - -
329 D1:AEAF - - - - ;;inputnumstr
330 D1:AEAF - - - - ;;Inputs string of (only numbers) of length [Buffer Size] and puts it in (Destination)
331 D1:AEAF - - - - ;;Inputs:
332 D1:AEAF - - - - ;; HL: Destination
333 D1:AEAF - - - - ;; D[E]: Buffer Size
334 D1:AEAF - - - - ;;Ouptuts:
335 D1:AEAF - - - - ;; (HL): String
336 D1:AEAF - - - - inputnumstr:
337 D1:AEAF D5 - - - push de
338 D1:AEB0 E5 - - - push hl
339 D1:AEB1 ED 53 AF AF
D1 - - - ld (inputnumstrSizeBuf), de
340 D1:AEB6 E5 - - - push hl
341 D1:AEB7 D5 - - - push de
342 D1:AEB8 21 96 05 D0 ld hl, CurCol
343 D1:AEBC 11 B1 AF D1 ld de, inputnumstrCurColBuf
344 D1:AEC0 CD CB A9 D1 call bytecpy
345 D1:AEC4 21 95 05 D0 ld hl, CurRow
346 D1:AEC8 11 B2 AF D1 ld de, inputnumstrCurRowBuf
347 D1:AECC CD CB A9 D1 call bytecpy
348 D1:AED0 D1 - - - pop de
349 D1:AED1 E1 - - - pop hl
350 D1:AED2 - - - -
351 D1:AED2 CD B0 08 02 call _CursorOn
352 D1:AED6 - - - -
353 D1:AED6 AF - - - xor a
354 D1:AED7 47 - - - ld b, a
355 D1:AED8 - - - -
356 D1:AED8 - - - - inputnumstrKeyInput:
357 D1:AED8 CD 80 AA D1 call cursorcurunderreset
358 D1:AEDC CD 6D AC D1 call inputgetkey
359 D1:AEE0 - - - -
360 D1:AEE0 FE 38 - - cp skDel
361 D1:AEE2 CA 2B AF D1 jp z, inputnumstrKeyDel
362 D1:AEE6 FE 0F - - cp skClear
363 D1:AEE8 CA 4B AF D1 jp z, inputnumstrKeyClear
364 D1:AEEC FE 09 - - cp skEnter
365 D1:AEEE CA A0 AF D1 jp z, inputnumstrKeyEnter
366 D1:AEF2 - - - -
367 D1:AEF2 4F - - - ld c, a
368 D1:AEF3 78 - - - ld a, b
369 D1:AEF4 D5 - - - push de
370 D1:AEF5 ED 5B AF AF
D1 - - - ld de, (inputnumstrSizeBuf)
371 D1:AEFA BB - - - cp e
372 D1:AEFB D1 - - - pop de
373 D1:AEFC 28 DA - - jr z, inputnumstrKeyInput
374 D1:AEFE 79 - - - ld a, c
375 D1:AEFF - - - -
376 D1:AEFF D6 0A - - sub skAdd
377 D1:AF01 38 D5 - - jr c, inputnumstrKeyInput
378 D1:AF03 FE 26 - - cp skMath - skAdd + 1
379 D1:AF05 30 D1 - - jr nc, inputnumstrKeyInput
380 D1:AF07 - - - -
381 D1:AF07 CD 60 AA D1 call charnumtoascii
382 D1:AF0B FE FF - - cp $FF
383 D1:AF0D 28 C9 - - jr z, inputnumstrKeyInput
384 D1:AF0F - - - -
385 D1:AF0F FD CB 05 96 res textScrolled, (iy+textFlags)
386 D1:AF13 - - - -
387 D1:AF13 CD B8 07 02 call _PutC
388 D1:AF17 - - - -
389 D1:AF17 77 - - - ld (hl), a
390 D1:AF18 23 - - - inc hl
391 D1:AF19 04 - - - inc b
392 D1:AF1A - - - -
393 D1:AF1A FD CB 05 56 bit textScrolled, (iy+textFlags)
394 D1:AF1E 28 B8 - - jr z, inputnumstrKeyInput
395 D1:AF20 E5 - - - push hl
396 D1:AF21 21 B2 AF D1 ld hl, inputnumstrCurRowBuf
397 D1:AF25 7E - - - ld a, (hl)
398 D1:AF26 3D - - - dec a
399 D1:AF27 77 - - - ld (hl), a
400 D1:AF28 E1 - - - pop hl
401 D1:AF29 18 AD - - jr inputnumstrKeyInput
402 D1:AF2B - - - - inputnumstrkeydel:
403 D1:AF2B 78 - - - ld a, b
404 D1:AF2C FE 00 - - cp 0
405 D1:AF2E CA D8 AE D1 jp z, inputnumstrKeyInput
406 D1:AF32 - - - -
407 D1:AF32 3E 20 - - ld a, ' '
408 D1:AF34 CD B4 07 02 call _PutMap
409 D1:AF38 - - - -
410 D1:AF38 E5 - - - push hl
411 D1:AF39 21 96 05 D0 ld hl, CurCol
412 D1:AF3D 35 - - - dec (hl)
413 D1:AF3E E1 - - - pop hl
414 D1:AF3F - - - -
415 D1:AF3F 3E 20 - - ld a, ' '
416 D1:AF41 CD B4 07 02 call _PutMap
417 D1:AF45 - - - -
418 D1:AF45 2B - - - dec hl
419 D1:AF46 05 - - - dec b
420 D1:AF47 C3 D8 AE D1 jp inputnumstrKeyInput
421 D1:AF4B - - - -
422 D1:AF4B - - - - inputnumstrKeyClear:
423 D1:AF4B 78 - - - ld a, b
424 D1:AF4C FE 00 - - cp 0
425 D1:AF4E CA D8 AE D1 jp z, inputnumstrKeyInput
426 D1:AF52 - - - -
427 D1:AF52 E5 - - - push hl
428 D1:AF53 21 95 05 D0 ld hl, CurRow
429 D1:AF57 4E - - - ld c, (hl)
430 D1:AF58 E1 - - - pop hl
431 D1:AF59 - - - -
432 D1:AF59 E5 - - - push hl
433 D1:AF5A D5 - - - push de
434 D1:AF5B 21 B1 AF D1 ld hl, inputnumstrCurColBuf
435 D1:AF5F 11 96 05 D0 ld de, CurCol
436 D1:AF63 CD CB A9 D1 call bytecpy
437 D1:AF67 21 B2 AF D1 ld hl, inputnumstrCurRowBuf
438 D1:AF6B 11 95 05 D0 ld de, CurRow
439 D1:AF6F CD CB A9 D1 call bytecpy
440 D1:AF73 D1 - - - pop de
441 D1:AF74 E1 - - - pop hl
442 D1:AF75 - - - -
443 D1:AF75 3E 20 - - ld a, ' '
444 D1:AF77 04 - - - inc b
445 D1:AF78 - - - - inputnumstrKeyClearLoop:
446 D1:AF78 CD B8 07 02 call _PutC
447 D1:AF7C 10 FA - - djnz inputnumstrKeyClearLoop
448 D1:AF7E - - - -
449 D1:AF7E D5 - - - push de
450 D1:AF7F E5 - - - push hl
451 D1:AF80 21 B1 AF D1 ld hl, inputnumstrCurColBuf
452 D1:AF84 11 96 05 D0 ld de, CurCol
453 D1:AF88 CD CB A9 D1 call bytecpy
454 D1:AF8C 21 B2 AF D1 ld hl, inputnumstrCurRowBuf
455 D1:AF90 11 95 05 D0 ld de, CurRow
456 D1:AF94 CD CB A9 D1 call bytecpy
457 D1:AF98 E1 - - - pop hl
458 D1:AF99 D1 - - - pop de
459 D1:AF9A E1 - - - pop hl
460 D1:AF9B E5 - - - push hl
461 D1:AF9C C3 D8 AE D1 jp inputnumstrKeyInput
462 D1:AFA0 - - - -
463 D1:AFA0 - - - - inputnumstrKeyEnter:
464 D1:AFA0 36 00 - - ld (hl), 0
465 D1:AFA2 CD A8 08 02 call _CursorOff
466 D1:AFA6 3E 20 - - ld a, ' '
467 D1:AFA8 CD B4 07 02 call _PutMap
468 D1:AFAC E1 - - - pop hl
469 D1:AFAD D1 - - - pop de
470 D1:AFAE C9 - - - ret
471 D1:AFAF - - - -
472 D1:AFAF 00 00 - - inputnumstrSizeBuf: .dw $0000
473 D1:AFB1 00 - - - inputnumstrCurColBuf: .db $00
474 D1:AFB2 00 - - - inputnumstrCurRowBuf: .db $00
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
Listing for file "FSHa.asm"
72 D1:AFB3 - - - - #include "includes/lib/fsh/fsh.inc"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\fsh.inc"
1 D1:AFB3 - - - - #include "includes/lib/fsh/Command.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\Command.asm"
1 D1:AFB3 - - - - ;;commandfill
2 D1:AFB3 - - - - ;;Fills command mem with byte a
3 D1:AFB3 - - - - ;;Inputs:
4 D1:AFB3 - - - - ;; A: byte
5 D1:AFB3 - - - - commandfill:
6 D1:AFB3 E5 - - - push hl
7 D1:AFB4 C5 - - - push bc
8 D1:AFB5 D5 - - - push de
9 D1:AFB6 06 00 - - ld b, 0
10 D1:AFB8 11 00 00 00 ld de, 0
11 D1:AFBC 4F - - - ld c, a
12 D1:AFBD 21 9F EA D0 ld hl, FshCmd
13 D1:AFC1 - - - - commandfillLoop:
14 D1:AFC1 71 - - - ld (hl), c
15 D1:AFC2 23 - - - inc hl
16 D1:AFC3 04 - - - inc b
17 D1:AFC4 13 - - - inc de
18 D1:AFC5 78 - - - ld a, b
19 D1:AFC6 FE 40 - - cp FshCmdSize
20 D1:AFC8 38 F7 - - jr c, commandfillLoop
21 D1:AFCA D1 - - - pop de
22 D1:AFCB C1 - - - pop bc
23 D1:AFCC E1 - - - pop hl
24 D1:AFCD C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\fsh.inc"
2 D1:AFCE - - - - #include "includes/lib/fsh/Parse.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\Parse.asm"
1 D1:AFCE - - - - ;;fshparsecommand
2 D1:AFCE - - - - ;;Inputs:
3 D1:AFCE - - - - ;; HL: FshCmd
4 D1:AFCE - - - - ;;b = buf row
5 D1:AFCE - - - - ;;c = char in row
6 D1:AFCE - - - - ;de = scratch
7 D1:AFCE - - - - fshparsecommand:
8 D1:AFCE E5 - - - push hl
9 D1:AFCF C5 - - - push bc
10 D1:AFD0 D5 - - - push de
11 D1:AFD1 E5 - - - push hl
12 D1:AFD2 E5 - - - push hl
13 D1:AFD3 21 E5 B0 D1 ld hl, fshparsecommandCmd
14 D1:AFD7 06 2D - - ld b, 45
15 D1:AFD9 3E 00 - - ld a, $00
16 D1:AFDB CD D3 A9 D1 call memset
17 D1:AFDF E1 - - - pop hl
18 D1:AFE0 - - - -
19 D1:AFE0 01 00 00 00 ld bc, 0
20 D1:AFE4 11 00 00 00 ld de, 0
21 D1:AFE8 - - - - fshparsecommandLoop:
22 D1:AFE8 7E - - - ld a, (hl)
23 D1:AFE9 - - - - fshparsecommandCheckSpace:
24 D1:AFE9 FE 20 - - cp ' ' ;end of word
25 D1:AFEB 20 0C - - jr nz, fshparsecommandCheckEnd
26 D1:AFED 3E 00 - - ld a, $00
27 D1:AFEF CD 18 B1 D1 call fshparsecommandCopyChar
28 D1:AFF3 0E 00 - - ld c, 0
29 D1:AFF5 04 - - - inc b
30 D1:AFF6 23 - - - inc hl
31 D1:AFF7 18 EF - - jr fshparsecommandLoop
32 D1:AFF9 - - - -
33 D1:AFF9 - - - - fshparsecommandCheckEnd:
34 D1:AFF9 FE 00 - - cp $00 ;end of string
35 D1:AFFB 28 13 - - jr z, fshparsecommandCheckArgStatus
36 D1:AFFD - - - -
37 D1:AFFD - - - - fshparsecommandLoopEnd:
38 D1:AFFD CD 18 B1 D1 call fshparsecommandCopyChar
39 D1:B001 23 - - - inc hl
40 D1:B002 0C - - - inc c
41 D1:B003 - - - -
42 D1:B003 79 - - - ld a, c
43 D1:B004 FE 08 - - cp FshCmdCmdSize
44 D1:B006 20 E0 - - jr nz, fshparsecommandLoop
45 D1:B008 - - - - ;inc hl
46 D1:B008 0E 00 - - ld c, 0
47 D1:B00A 04 - - - inc b
48 D1:B00B 78 - - - ld a, b
49 D1:B00C FE 05 - - cp 5
50 D1:B00E 20 D8 - - jr nz, fshparsecommandLoop
51 D1:B010 - - - - ; ld bc, 0
52 D1:B010 - - - -
53 D1:B010 - - - - fshparsecommandCheckArgStatus:
54 D1:B010 AF - - - xor a
55 D1:B011 21 CD EA D0 ld hl, FshCmdArgFlags
56 D1:B015 77 - - - ld (hl), a
57 D1:B016 - - - - fshparsecommandCheckArg0:
58 D1:B016 21 EE B0 D1 ld hl, fshparsecommandArg0
59 D1:B01A 7E - - - ld a, (hl)
60 D1:B01B FE 00 - - cp $00
61 D1:B01D 28 27 - - jr z, fshparsecommandCheckArg1
62 D1:B01F 21 CD EA D0 ld hl, FshCmdArgFlags
63 D1:B023 CB C6 - - set 0, (hl)
64 D1:B025 7E - - - ld a, (hl)
65 D1:B026 21 EE B0 D1 ld hl, fshparsecommandArg0
66 D1:B02A 7E - - - ld a, (hl)
67 D1:B02B D6 30 - - sub '0'
68 D1:B02D FE 0A - - cp '9' - '0' + 1
69 D1:B02F 30 15 - - jr nc, fshparsecommandCheckArg1
70 D1:B031 CD C5 AB D1 call strtow
71 D1:B035 11 EE B0 D1 ld de, fshparsecommandArg0
72 D1:B039 EB - - - ex de, hl
73 D1:B03A 73 - - - ld (hl), e
74 D1:B03B 23 - - - inc hl
75 D1:B03C 72 - - - ld (hl), d
76 D1:B03D 34 - - - inc (hl)
77 D1:B03E 36 00 - - ld (hl), $00
78 D1:B040 21 CD EA D0 ld hl, FshCmdArgFlags
79 D1:B044 CB CE - - set 1, (hl)
80 D1:B046 - - - - fshparsecommandCheckArg1:
81 D1:B046 21 F7 B0 D1 ld hl, fshparsecommandArg1
82 D1:B04A 7E - - - ld a, (hl)
83 D1:B04B FE 00 - - cp $00
84 D1:B04D 28 26 - - jr z, fshparsecommandCheckArg2
85 D1:B04F 21 CD EA D0 ld hl, FshCmdArgFlags
86 D1:B053 CB D6 - - set 2, (hl)
87 D1:B055 21 F7 B0 D1 ld hl, fshparsecommandArg1
88 D1:B059 7E - - - ld a, (hl)
89 D1:B05A D6 30 - - sub '0'
90 D1:B05C FE 0A - - cp '9' - '0' + 1
91 D1:B05E 30 15 - - jr nc, fshparsecommandCheckArg2
92 D1:B060 CD C5 AB D1 call strtow
93 D1:B064 11 F7 B0 D1 ld de, fshparsecommandArg1
94 D1:B068 EB - - - ex de, hl
95 D1:B069 73 - - - ld (hl), e
96 D1:B06A 23 - - - inc hl
97 D1:B06B 72 - - - ld (hl), d
98 D1:B06C 23 - - - inc hl
99 D1:B06D 36 00 - - ld (hl), $00
100 D1:B06F 21 CD EA D0 ld hl, FshCmdArgFlags
101 D1:B073 CB DE - - set 3, (hl)
102 D1:B075 - - - - fshparsecommandCheckArg2:
103 D1:B075 21 00 B1 D1 ld hl, fshparsecommandArg2
104 D1:B079 7E - - - ld a, (hl)
105 D1:B07A FE 00 - - cp $00
106 D1:B07C 28 26 - - jr z, fshparsecommandCheckArg3
107 D1:B07E 21 CD EA D0 ld hl, FshCmdArgFlags
108 D1:B082 CB E6 - - set 4, (hl)
109 D1:B084 21 00 B1 D1 ld hl, fshparsecommandArg2
110 D1:B088 7E - - - ld a, (hl)
111 D1:B089 D6 30 - - sub '0'
112 D1:B08B FE 0A - - cp '9' - '0' + 1
113 D1:B08D 30 15 - - jr nc, fshparsecommandCheckArg3
114 D1:B08F CD C5 AB D1 call strtow
115 D1:B093 11 00 B1 D1 ld de, fshparsecommandArg2
116 D1:B097 EB - - - ex de, hl
117 D1:B098 73 - - - ld (hl), e
118 D1:B099 23 - - - inc hl
119 D1:B09A 72 - - - ld (hl), d
120 D1:B09B 23 - - - inc hl
121 D1:B09C 36 00 - - ld (hl), $00
122 D1:B09E 21 CD EA D0 ld hl, FshCmdArgFlags
123 D1:B0A2 CB EE - - set 5, (hl)
124 D1:B0A4 - - - - fshparsecommandCheckArg3:
125 D1:B0A4 21 09 B1 D1 ld hl, fshparsecommandArg3
126 D1:B0A8 7E - - - ld a, (hl)
127 D1:B0A9 FE 00 - - cp $00
128 D1:B0AB 28 26 - - jr z, fshparsecommandCopyBack
129 D1:B0AD 21 CD EA D0 ld hl, FshCmdArgFlags
130 D1:B0B1 CB F6 - - set 6, (hl)
131 D1:B0B3 21 09 B1 D1 ld hl, fshparsecommandArg3
132 D1:B0B7 7E - - - ld a, (hl)
133 D1:B0B8 D6 30 - - sub '0'
134 D1:B0BA FE 0A - - cp '9' - '0' + 1
135 D1:B0BC 30 15 - - jr nc, fshparsecommandCopyBack
136 D1:B0BE CD C5 AB D1 call strtow
137 D1:B0C2 11 09 B1 D1 ld de, fshparsecommandArg3
138 D1:B0C6 EB - - - ex de, hl
139 D1:B0C7 73 - - - ld (hl), e
140 D1:B0C8 23 - - - inc hl
141 D1:B0C9 72 - - - ld (hl), d
142 D1:B0CA 23 - - - inc hl
143 D1:B0CB 36 00 - - ld (hl), $00
144 D1:B0CD 21 CD EA D0 ld hl, FshCmdArgFlags
145 D1:B0D1 CB FE - - set 7, (hl)
146 D1:B0D3 - - - - fshparsecommandCopyBack:
147 D1:B0D3 E1 - - - pop hl
148 D1:B0D4 C5 - - - push bc
149 D1:B0D5 EB - - - ex de, hl
150 D1:B0D6 21 E5 B0 D1 ld hl, fshparsecommandCmd
151 D1:B0DA 01 2D 00 00 ld bc, 45
152 D1:B0DE ED B0 - - ldir
153 D1:B0E0 C1 - - - pop bc
154 D1:B0E1 - - - -
155 D1:B0E1 D1 - - - pop de
156 D1:B0E2 C1 - - - pop bc
157 D1:B0E3 E1 - - - pop hl
158 D1:B0E4 C9 - - - ret
159 D1:B0E5 - - - -
160 D1:B0E5 00 00 00 00
00 00 00 00
00 - - - fshparsecommandCmd: .db $00, $00, $00, $00, $00, $00, $00, $00, $00
161 D1:B0EE 00 00 00 00
00 00 00 00
00 - - - fshparsecommandArg0: .db $00, $00, $00, $00, $00, $00, $00, $00, $00
162 D1:B0F7 00 00 00 00
00 00 00 00
00 - - - fshparsecommandArg1: .db $00, $00, $00, $00, $00, $00, $00, $00, $00
163 D1:B100 00 00 00 00
00 00 00 00
00 - - - fshparsecommandArg2: .db $00, $00, $00, $00, $00, $00, $00, $00, $00
164 D1:B109 00 00 00 00
00 00 00 00
00 - - - fshparsecommandArg3: .db $00, $00, $00, $00, $00, $00, $00, $00, $00
165 D1:B112 00 00 00 00
00 00 - - fshparsecommandOverB: .db $00, $00, $00, $00, $00, $00
166 D1:B118 - - - -
167 D1:B118 - - - - fshparsecommandCopyChar:
168 D1:B118 - - - - ;Copy
169 D1:B118 E5 - - - push hl
170 D1:B119 C5 - - - push bc
171 D1:B11A 21 00 00 00 ld hl, 0
172 D1:B11E 60 - - - ld h, b
173 D1:B11F 2E 09 - - ld l, 9
174 D1:B121 41 - - - ld b, c
175 D1:B122 11 E5 B0 D1 ld de, fshparsecommandCmd
176 D1:B126 CD 1D AB D1 call array2d
177 D1:B12A C1 - - - pop bc
178 D1:B12B E1 - - - pop hl
179 D1:B12C - - - - ;push hl
180 D1:B12C - - - - ; ld hl, fshparsecommandCmd+45+1
181 D1:B12C - - - - ; call cpHLDE
182 D1:B12C - - - - ;pop hl
183 D1:B12C - - - - ;pop de
184 D1:B12C - - - - ;ret c
185 D1:B12C - - - - ;push de
186 D1:B12C 12 - - - ld (de), a ;ld buffer
187 D1:B12D C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\fsh.inc"
3 D1:B12E - - - - #include "includes/lib/fsh/FshVar.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\FshVar.asm"
1 D1:B12E - - - - ;;fshvarset
2 D1:B12E - - - - ;;Sets a Word in FshVars.
3 D1:B12E - - - - ;;Inputs:
4 D1:B12E - - - - ;; HL: 16b
5 D1:B12E - - - - ;; DE: Destination Word Relitive to FshVars
6 D1:B12E - - - - fshvarset:
7 D1:B12E C5 - - - push bc
8 D1:B12F 01 3F 00 00 ld bc, FshVarsSize / 2 - 1
9 D1:B133 CD 77 A9 D1 call cpBCDE
10 D1:B137 C1 - - - pop bc
11 D1:B138 38 11 - - jr c, fshvarsetOOBException
12 D1:B13A C5 - - - push bc
13 D1:B13B D5 - - - push de
14 D1:B13C E5 - - - push hl
15 D1:B13D 01 1F EA D0 ld bc, FshVars
16 D1:B141 EB - - - ex de, hl
17 D1:B142 29 - - - add hl, hl
18 D1:B143 09 - - - add hl, bc
19 D1:B144 73 - - - ld (hl), e
20 D1:B145 23 - - - inc hl
21 D1:B146 72 - - - ld (hl), d
22 D1:B147 E1 - - - pop hl
23 D1:B148 D1 - - - pop de
24 D1:B149 C1 - - - pop bc
25 D1:B14A C9 - - - ret
26 D1:B14B - - - - fshvarsetOOBException:
27 D1:B14B E5 - - - push hl
28 D1:B14C 21 70 B2 D1 ld hl, ErrOutOfBoundso
29 D1:B150 CD 2B B2 D1 call ErrSet
30 D1:B154 E1 - - - pop hl
31 D1:B155 C9 - - - ret
32 D1:B156 - - - -
33 D1:B156 - - - - ;;fshvarget
34 D1:B156 - - - - ;;Gets a Word in FshVars.
35 D1:B156 - - - - ;;Inputs:
36 D1:B156 - - - - ;; DE: Destination Word Relitive to FshVars
37 D1:B156 - - - - ;;Outputs:
38 D1:B156 - - - - ;; HL: Word in (DE)
39 D1:B156 - - - - fshvarget:
40 D1:B156 C5 - - - push bc
41 D1:B157 01 3F 00 00 ld bc, FshVarsSize / 2 - 1
42 D1:B15B CD 77 A9 D1 call cpBCDE
43 D1:B15F C1 - - - pop bc
44 D1:B160 38 14 - - jr c, fshvargetOOBException
45 D1:B162 C5 - - - push bc
46 D1:B163 D5 - - - push de
47 D1:B164 21 00 00 00 ld hl, 0
48 D1:B168 01 1F EA D0 ld bc, FshVars
49 D1:B16C EB - - - ex de, hl
50 D1:B16D 29 - - - add hl, hl
51 D1:B16E 09 - - - add hl, bc
52 D1:B16F 5E - - - ld e, (hl)
53 D1:B170 23 - - - inc hl
54 D1:B171 56 - - - ld d, (hl)
55 D1:B172 EB - - - ex de, hl
56 D1:B173 D1 - - - pop de
57 D1:B174 C1 - - - pop bc
58 D1:B175 C9 - - - ret
59 D1:B176 - - - - fshvargetOOBException:
60 D1:B176 E5 - - - push hl
61 D1:B177 21 70 B2 D1 ld hl, ErrOutOfBoundso
62 D1:B17B CD 2B B2 D1 call ErrSet
63 D1:B17F E1 - - - pop hl
64 D1:B180 C9 - - - ret
65 D1:B181 - - - - ;;fshvarcpy
66 D1:B181 - - - - ;;Copies a word.
67 D1:B181 - - - - ;;Inputs:
68 D1:B181 - - - - ;; HL: Byte pointer
69 D1:B181 - - - - ;; DE: Destination
70 D1:B181 - - - - fshvarcpy:
71 D1:B181 C5 - - - push bc
72 D1:B182 01 3F 00 00 ld bc, FshVarsSize / 2 - 1
73 D1:B186 CD 77 A9 D1 call cpBCDE
74 D1:B18A C1 - - - pop bc
75 D1:B18B 38 2A - - jr c, fshvarcpyOOBException
76 D1:B18D C5 - - - push bc
77 D1:B18E 01 40 00 00 ld bc, FshVarsSize / 2
78 D1:B192 CD 72 A9 D1 call cpHLBC
79 D1:B196 C1 - - - pop bc
80 D1:B197 30 1E - - jr nc, fshvarcpyOOBException
81 D1:B199 D5 - - - push de
82 D1:B19A E5 - - - push hl
83 D1:B19B 01 40 00 00 ld bc, FshVarsSize / 2
84 D1:B19F CD 77 A9 D1 call cpBCDE
85 D1:B1A3 38 12 - - jr c, fshvarcpyOOBException
86 D1:B1A5 01 1F EA D0 ld bc, FshVars
87 D1:B1A9 29 - - - add hl, hl
88 D1:B1AA 09 - - - add hl, bc
89 D1:B1AB EB - - - ex de, hl
90 D1:B1AC 29 - - - add hl, hl
91 D1:B1AD 09 - - - add hl, bc
92 D1:B1AE 1A - - - ld a, (de)
93 D1:B1AF 77 - - - ld (hl), a
94 D1:B1B0 13 - - - inc de
95 D1:B1B1 23 - - - inc hl
96 D1:B1B2 1A - - - ld a, (de)
97 D1:B1B3 77 - - - ld (hl), a
98 D1:B1B4 E1 - - - pop hl
99 D1:B1B5 D1 - - - pop de
100 D1:B1B6 C9 - - - ret
101 D1:B1B7 - - - -
102 D1:B1B7 - - - - fshvarcpyOOBException:
103 D1:B1B7 E5 - - - push hl
104 D1:B1B8 21 70 B2 D1 ld hl, ErrOutOfBoundso
105 D1:B1BC CD 2B B2 D1 call ErrSet
106 D1:B1C0 E1 - - - pop hl
107 D1:B1C1 C9 - - - ret
108 D1:B1C2 - - - -
109 D1:B1C2 - - - - ;;fshvarreset
110 D1:B1C2 - - - - ;;Fills fshvars with $00
111 D1:B1C2 - - - - fshvarreset:
112 D1:B1C2 E5 - - - push hl
113 D1:B1C3 C5 - - - push bc
114 D1:B1C4 D5 - - - push de
115 D1:B1C5 06 00 - - ld b, 0
116 D1:B1C7 11 00 00 00 ld de, 0
117 D1:B1CB 21 00 00 00 ld hl, 0
118 D1:B1CF - - - - fshvarfillLoop:
119 D1:B1CF CD 2E B1 D1 call fshvarset
120 D1:B1D3 04 - - - inc b
121 D1:B1D4 13 - - - inc de
122 D1:B1D5 78 - - - ld a, b
123 D1:B1D6 FE 40 - - cp FshVarsSize / 2
124 D1:B1D8 38 F5 - - jr c, fshvarfillLoop
125 D1:B1DA D1 - - - pop de
126 D1:B1DB C1 - - - pop bc
127 D1:B1DC E1 - - - pop hl
128 D1:B1DD C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\fsh.inc"
4 D1:B1DE - - - - #include "includes/lib/fsh/Err.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\Err.asm"
1 D1:B1DE - - - - ;;ErrCatch
2 D1:B1DE - - - - ;;Checks err bit and jp to err route
3 D1:B1DE - - - - ErrCatch:
4 D1:B1DE C1 - - - pop bc
5 D1:B1DF E5 - - - push hl
6 D1:B1E0 21 6C A9 D1 ld hl, FshFlags
7 D1:B1E4 CB 4E - - bit 1, (hl)
8 D1:B1E6 E1 - - - pop hl
9 D1:B1E7 C2 ED B1 D1 jp nz, ErrRoute
10 D1:B1EB C5 - - - push bc
11 D1:B1EC C9 - - - ret
12 D1:B1ED - - - -
13 D1:B1ED - - - - ;;ErrRoute
14 D1:B1ED - - - - ;;Routes err codes.
15 D1:B1ED - - - - ErrRoute:
16 D1:B1ED - - - -
17 D1:B1ED 21 6C A9 D1 ld hl, FshFlags
18 D1:B1F1 CB 8E - - res 1, (hl)
19 D1:B1F3 - - - -
20 D1:B1F3 21 CE EA D0 ld hl, FshCmdErrCode
21 D1:B1F7 - - - -
22 D1:B1F7 11 3A B2 D1 ld de, ErrCmdNotFoundo
23 D1:B1FB CD C3 A9 D1 call bytecmp
24 D1:B1FF CA 3B B2 D1 jp z, ErrCmdNotFoundf
25 D1:B203 - - - -
26 D1:B203 11 70 B2 D1 ld de, ErrOutOfBoundso
27 D1:B207 CD C3 A9 D1 call bytecmp
28 D1:B20B CA 71 B2 D1 jp z, ErrOutOfBoundsf
29 D1:B20F - - - -
30 D1:B20F 11 96 B2 D1 ld de, ErrArgso
31 D1:B213 CD C3 A9 D1 call bytecmp
32 D1:B217 CA 97 B2 D1 jp z, ErrArgsf
33 D1:B21B - - - -
34 D1:B21B 11 C0 B2 D1 ld de, ErrUsageo
35 D1:B21F CD C3 A9 D1 call bytecmp
36 D1:B223 CA C1 B2 D1 jp z, ErrUsagef
37 D1:B227 - - - -
38 D1:B227 C3 EC B2 D1 jp ErrDefault
39 D1:B22B - - - -
40 D1:B22B - - - -
41 D1:B22B - - - - ;;ErrSet
42 D1:B22B - - - - ;;Sets all things relating to Err codes
43 D1:B22B - - - - ;;Inputs:
44 D1:B22B - - - - ;; HL: Err_____o
45 D1:B22B - - - - ErrSet:
46 D1:B22B E5 - - - push hl
47 D1:B22C 7E - - - ld a, (hl)
48 D1:B22D 21 CE EA D0 ld hl, FshCmdErrCode
49 D1:B231 77 - - - ld (hl), a
50 D1:B232 21 6C A9 D1 ld hl, FshFlags
51 D1:B236 CB CE - - set 1, (hl)
52 D1:B238 E1 - - - pop hl
53 D1:B239 C9 - - - ret
54 D1:B23A - - - -
55 D1:B23A - - - - ;;ERR FUNCS-------------------
56 D1:B23A - - - -
57 D1:B23A 01 - - - ErrCmdNotFoundo: .db $01
58 D1:B23B - - - - ErrCmdNotFoundf:
59 D1:B23B 21 9F EA D0 ld hl, FshCmd
60 D1:B23F 7E - - - ld a, (hl)
61 D1:B240 FE 00 - - cp $00
62 D1:B242 CA DB A8 D1 jp z, Fin
63 D1:B246 21 5E B2 D1 ld hl, ErrCmdNotFoundt
64 D1:B24A CD C0 07 02 call _PutS
65 D1:B24E 21 9F EA D0 ld hl, FshCmd
66 D1:B252 CD C0 07 02 call _PutS
67 D1:B256 CD F0 07 02 call _NewLine
68 D1:B25A C3 DB A8 D1 jp Fin
69 D1:B25E 65 72 72 6F
72 3A 4E 6F
20 43 6F 6D
6D 61 6E 64
3A 00 - - ErrCmdNotFoundt: .db "error:No Command:", 0
70 D1:B270 - - - -
71 D1:B270 02 - - - ErrOutOfBoundso: .db $02
72 D1:B271 - - - - ErrOutOfBoundsf:
73 D1:B271 21 81 B2 D1 ld hl, ErrOutOfBoundst
74 D1:B275 CD C0 07 02 call _PutS
75 D1:B279 CD F0 07 02 call _NewLine
76 D1:B27D C3 DB A8 D1 jp Fin
77 D1:B281 65 72 72 6F
72 3A 20 4F
75 74 20 4F
66 20 42 6F
75 6E 64 73
00 - - - ErrOutOfBoundst: .db "error: Out Of Bounds", 0
78 D1:B296 - - - -
79 D1:B296 03 - - - ErrArgso: .db $03
80 D1:B297 - - - - ErrArgsf:
81 D1:B297 21 A7 B2 D1 ld hl, ErrArgst
82 D1:B29B CD C0 07 02 call _PutS
83 D1:B29F CD F0 07 02 call _NewLine
84 D1:B2A3 C3 DB A8 D1 jp Fin
85 D1:B2A7 65 72 72 6F
72 3A 20 49
6E 76 61 6C
69 64 20 41
72 67 75 6D
65 6E 74 73
00 - - - ErrArgst: .db "error: Invalid Arguments", 0
86 D1:B2C0 - - - -
87 D1:B2C0 04 - - - ErrUsageo: .db $04
88 D1:B2C1 - - - - ErrUsagef:
89 D1:B2C1 21 DD B2 D1 ld hl, ErrUsaget
90 D1:B2C5 CD C0 07 02 call _PutS
91 D1:B2C9 21 9F EA D0 ld hl, FshCmd
92 D1:B2CD CD 8F B4 D1 call manrouteu
93 D1:B2D1 CD C0 07 02 call _PutS
94 D1:B2D5 CD F0 07 02 call _NewLine
95 D1:B2D9 C3 DB A8 D1 jp Fin
96 D1:B2DD 65 72 72 6F
72 3A 20 55
73 61 67 65
3A 20 00 - ErrUsaget: .db "error: Usage: ", 0
97 D1:B2EC - - - -
98 D1:B2EC - - - - ErrDefault:
99 D1:B2EC 21 F8 B2 D1 ld hl, ErrDefaultt
100 D1:B2F0 CD C0 07 02 call _PutS
101 D1:B2F4 C3 F7 A8 D1 jp Exit
102 D1:B2F8 65 72 72 6F
72 3A 20 44
65 66 61 75
6C 74 3B 20
45 78 69 74
00 - - - ErrDefaultt: .db "error: Default; Exit", 0
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\fsh.inc"
5 D1:B30D - - - - #include "includes/lib/fsh/Print.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\Print.asm"
1 D1:B30D - - - - ;;printfshnamelong
2 D1:B30D - - - - ;;prints Name + Varsv + Version to screen
3 D1:B30D - - - - printfshnamelong:
4 D1:B30D E5 - - - push hl
5 D1:B30E 21 FC A8 D1 ld hl, FshName
6 D1:B312 CD C0 07 02 call _PutS
7 D1:B316 3E 20 - - ld a, ' '
8 D1:B318 CD B8 07 02 call _PutC
9 D1:B31C 21 31 A9 D1 ld hl, FshVVars
10 D1:B320 CD C0 07 02 call _PutS
11 D1:B324 3E 20 - - ld a, ' '
12 D1:B326 CD B8 07 02 call _PutC
13 D1:B32A 3E 76 - - ld a, 'v'
14 D1:B32C CD B8 07 02 call _PutC
15 D1:B330 21 35 A9 D1 ld hl, FshVMajor
16 D1:B334 CD C0 07 02 call _PutS
17 D1:B338 21 3F A9 D1 ld hl, FshVSeparator
18 D1:B33C CD C0 07 02 call _PutS
19 D1:B340 21 37 A9 D1 ld hl, FshVMinor
20 D1:B344 CD C0 07 02 call _PutS
21 D1:B348 21 3F A9 D1 ld hl, FshVSeparator
22 D1:B34C CD C0 07 02 call _PutS
23 D1:B350 21 39 A9 D1 ld hl, FshVPatch
24 D1:B354 CD C0 07 02 call _PutS
25 D1:B358 3E 20 - - ld a, ' '
26 D1:B35A CD B8 07 02 call _PutC
27 D1:B35E 21 3B A9 D1 ld hl, FshVBuild
28 D1:B362 CD C0 07 02 call _PutS
29 D1:B366 E1 - - - pop hl
30 D1:B367 C9 - - - ret
31 D1:B368 - - - -
32 D1:B368 - - - - ;;printmotd
33 D1:B368 - - - - ;;prints the motd to screen
34 D1:B368 - - - - printmotd:
35 D1:B368 CD 0D B3 D1 call printfshnamelong
36 D1:B36C CD F0 07 02 call _NewLine
37 D1:B370 CD F0 07 02 call _NewLine
38 D1:B374 21 41 A9 D1 ld hl, FshMotd2nd
39 D1:B378 CD C0 07 02 call _PutS
40 D1:B37C CD F0 07 02 call _NewLine
41 D1:B380 21 57 A9 D1 ld hl, FshMotdHelp
42 D1:B384 CD C0 07 02 call _PutS
43 D1:B388 CD F0 07 02 call _NewLine
44 D1:B38C C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\fsh.inc"
6 D1:B38D - - - - #include "includes/lib/fsh/Draw.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\Draw.asm"
1 D1:B38D - - - - ;;drawstatusbar
2 D1:B38D - - - - ;;draws the FSH status bar
3 D1:B38D - - - - drawstatusbar:
4 D1:B38D - - - - ;rgbto565(84, 84, 84)
5 D1:B38D 21 AA 52 00 ld hl, $52AA
6 D1:B391 3E 00 - - ld a, 0
7 D1:B393 01 1E 00 00 ld bc, 30
8 D1:B397 CD E7 AA D1 call drawbar
9 D1:B39B - - - - ;rgbto565(0, 159, 209)
10 D1:B39B 21 FA 04 00 ld hl, $04FA
11 D1:B39F - - - - ;ld hl, %1111100000000000
12 D1:B39F EB DD 6B DD
62 EB 21 02
00 00 11 00
00 00 01 00
00 00 0E 00
3E 1E CD FC
AA D1 - - drawrectfilledM(0, 0, 2, 30)
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\Draw.asm"
13 D1:B3B9 CD 50 1A 02 call _DrawBatteryIndicator
14 D1:B3BD - - - - ;draw name
15 D1:B3BD FD CB 32 D6 set fracDrawLFont, (iy + fontFlags)
16 D1:B3C1 3E 06 - - ld a, 6
17 D1:B3C3 32 D5 08 D0 ld (penRow), a
18 D1:B3C7 3E 07 - - ld a, 7
19 D1:B3C9 32 D2 08 D0 ld (penCol), a
20 D1:B3CD 21 AA 52 00 ld hl, $52AA
21 D1:B3D1 22 AA 26 D0 ld (drawBGcolor), hl
22 D1:B3D5 21 FF FF 00 ld hl, $ffff
23 D1:B3D9 22 AC 26 D0 ld (drawFGcolor), hl
24 D1:B3DD 21 FC A8 D1 ld hl, FshName
25 D1:B3E1 CD 34 08 02 call _VPutS
26 D1:B3E5 21 FF FF 00 ld hl, $ffff
27 D1:B3E9 22 AA 26 D0 ld (drawBGcolor), hl
28 D1:B3ED 21 00 00 00 ld hl, $0000
29 D1:B3F1 22 AC 26 D0 ld (drawFGcolor), hl
30 D1:B3F5 C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\fsh.inc"
Listing for file "FSHa.asm"
73 D1:B3F6 - - - - #include "includes/lib/crypto/crypto.inc"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\crypto\crypto.inc"
1 D1:B3F6 - - - - #include "includes/lib/crypto/rot.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\crypto\rot.asm"
1 D1:B3F6 - - - - ;;rotletencrypt
2 D1:B3F6 - - - - ;;Encrypts a string in rot-x (uses $41 to $5B)
3 D1:B3F6 - - - - ;;Inputs:
4 D1:B3F6 - - - - ;; HL: string pointer
5 D1:B3F6 - - - - ;; A: x
6 D1:B3F6 - - - - ;;Notes:
7 D1:B3F6 - - - - ;; Changes string in place.
8 D1:B3F6 - - - - rotletencrypt:
9 D1:B3F6 E5 - - - push hl
10 D1:B3F7 C5 - - - push bc
11 D1:B3F8 0E 00 - - ld c, 0
12 D1:B3FA 4F - - - ld c, a
13 D1:B3FB - - - - rotletencryptLoop:
14 D1:B3FB 7E - - - ld a, (hl)
15 D1:B3FC FE 00 - - cp 0
16 D1:B3FE 28 13 - - jr z, rotletencryptEnd
17 D1:B400 81 - - - add a, c
18 D1:B401 FE 00 - - cp 0
19 D1:B403 20 01 - - jr nz, rotletencryptLd
20 D1:B405 3C - - - inc a
21 D1:B406 - - - - rotletencryptLd:
22 D1:B406 77 - - - ld (hl), a
23 D1:B407 23 - - - inc hl
24 D1:B408 FE 5C - - cp a, $5c
25 D1:B40A 38 EF - - jr c, rotletencryptLoop
26 D1:B40C 2B - - - dec hl
27 D1:B40D D6 1A - - sub a, 'Z' + 1 - 'A'
28 D1:B40F 77 - - - ld (hl), a
29 D1:B410 23 - - - inc hl
30 D1:B411 18 E8 - - jr rotletencryptLoop
31 D1:B413 - - - - rotletencryptEnd:
32 D1:B413 36 00 - - ld (hl), $00
33 D1:B415 C1 - - - pop bc
34 D1:B416 E1 - - - pop hl
35 D1:B417 C9 - - - ret
36 D1:B418 - - - -
37 D1:B418 - - - - ;;rotletdecrypt
38 D1:B418 - - - - ;;Encrypts a string in rot-x (uses $41 to $5B)
39 D1:B418 - - - - ;;Inputs:
40 D1:B418 - - - - ;; HL: string pointer
41 D1:B418 - - - - ;; A: x
42 D1:B418 - - - - ;;Notes:
43 D1:B418 - - - - ;; Changes string in place.
44 D1:B418 - - - - rotletdecrypt:
45 D1:B418 E5 - - - push hl
46 D1:B419 C5 - - - push bc
47 D1:B41A 0E 00 - - ld c, 0
48 D1:B41C 4F - - - ld c, a
49 D1:B41D - - - - rotletdecryptLoop:
50 D1:B41D 7E - - - ld a, (hl)
51 D1:B41E FE 00 - - cp 0
52 D1:B420 28 0E - - jr z, rotletdecryptEnd
53 D1:B422 91 - - - sub a, c
54 D1:B423 - - - - rotletdecryptLd:
55 D1:B423 77 - - - ld (hl), a
56 D1:B424 23 - - - inc hl
57 D1:B425 FE 5C - - cp a, $5c
58 D1:B427 38 F4 - - jr c, rotletdecryptLoop
59 D1:B429 2B - - - dec hl
60 D1:B42A C6 1A - - add a, 'Z' + 1 - 'A'
61 D1:B42C 77 - - - ld (hl), a
62 D1:B42D 23 - - - inc hl
63 D1:B42E 18 ED - - jr rotletdecryptLoop
64 D1:B430 - - - - rotletdecryptEnd:
65 D1:B430 36 00 - - ld (hl), $00
66 D1:B432 C1 - - - pop bc
67 D1:B433 E1 - - - pop hl
68 D1:B434 C9 - - - ret
69 D1:B435 - - - -
70 D1:B435 - - - - ;;rotasciiencrypt
71 D1:B435 - - - - ;;Encrypts a string in rot-x (uses $00 to $EF)
72 D1:B435 - - - - ;;Inputs:
73 D1:B435 - - - - ;; HL: string pointer
74 D1:B435 - - - - ;; A: x
75 D1:B435 - - - - ;;Notes:
76 D1:B435 - - - - ;; Changes string in place.
77 D1:B435 - - - - rotasciiencrypt:
78 D1:B435 E5 - - - push hl
79 D1:B436 C5 - - - push bc
80 D1:B437 0E 00 - - ld c, 0
81 D1:B439 4F - - - ld c, a
82 D1:B43A - - - - rotasciiencryptLoop:
83 D1:B43A 7E - - - ld a, (hl)
84 D1:B43B FE 00 - - cp 0
85 D1:B43D 28 13 - - jr z, rotasciiencryptEnd
86 D1:B43F 81 - - - add a, c
87 D1:B440 FE 00 - - cp 0
88 D1:B442 20 01 - - jr nz, rotasciiencryptLd
89 D1:B444 3C - - - inc a
90 D1:B445 - - - - rotasciiencryptLd:
91 D1:B445 77 - - - ld (hl), a
92 D1:B446 23 - - - inc hl
93 D1:B447 FE EF - - cp a, $EF
94 D1:B449 38 EF - - jr c, rotasciiencryptLoop
95 D1:B44B 2B - - - dec hl
96 D1:B44C D6 0F - - sub a, $0F
97 D1:B44E 77 - - - ld (hl), a
98 D1:B44F 23 - - - inc hl
99 D1:B450 18 E8 - - jr rotasciiencryptLoop
100 D1:B452 - - - - rotasciiencryptEnd:
101 D1:B452 36 00 - - ld (hl), $00
102 D1:B454 C1 - - - pop bc
103 D1:B455 E1 - - - pop hl
104 D1:B456 C9 - - - ret
105 D1:B457 - - - -
106 D1:B457 - - - - ;;rotasciidecrypt
107 D1:B457 - - - - ;;Encrypts a string in rot-x (uses $00 to $EF)
108 D1:B457 - - - - ;;Inputs:
109 D1:B457 - - - - ;; HL: string pointer
110 D1:B457 - - - - ;; A: x
111 D1:B457 - - - - ;;Notes:
112 D1:B457 - - - - ;; Changes string in place.
113 D1:B457 - - - - rotasciidecrypt:
114 D1:B457 E5 - - - push hl
115 D1:B458 C5 - - - push bc
116 D1:B459 0E 00 - - ld c, 0
117 D1:B45B 4F - - - ld c, a
118 D1:B45C - - - - rotasciidecryptLoop:
119 D1:B45C 7E - - - ld a, (hl)
120 D1:B45D FE 00 - - cp 0
121 D1:B45F 28 13 - - jr z, rotasciidecryptEnd
122 D1:B461 91 - - - sub a, c
123 D1:B462 FE 00 - - cp 0
124 D1:B464 20 01 - - jr nz, rotasciidecryptLd
125 D1:B466 3D - - - dec a
126 D1:B467 - - - - rotasciidecryptLd:
127 D1:B467 77 - - - ld (hl), a
128 D1:B468 23 - - - inc hl
129 D1:B469 FE EF - - cp a, $EF
130 D1:B46B 38 EF - - jr c, rotasciidecryptLoop
131 D1:B46D 2B - - - dec hl
132 D1:B46E C6 0F - - add a, $0F
133 D1:B470 77 - - - ld (hl), a
134 D1:B471 23 - - - inc hl
135 D1:B472 18 E8 - - jr rotasciidecryptLoop
136 D1:B474 - - - - rotasciidecryptEnd:
137 D1:B474 36 00 - - ld (hl), $00
138 D1:B476 C1 - - - pop bc
139 D1:B477 E1 - - - pop hl
140 D1:B478 C9 - - - ret
141 D1:B479 - - - -
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\crypto\crypto.inc"
Listing for file "FSHa.asm"
74 D1:B479 - - - -
75 D1:B479 - - - - #include "includes/man-db.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\man-db.asm"
1 D1:B479 - - - - ;;TODO: move module specific macros to diffrent file
2 D1:B479 - - - - ;;manroute
3 D1:B479 - - - - ;;routes command string to discription
4 D1:B479 - - - - ;;Inputs:
5 D1:B479 - - - - ;; HL: Command String
6 D1:B479 - - - - ;;Outputs:
7 D1:B479 - - - - ;; HL: Command Discription String
8 D1:B479 - - - - manroute:
9 D1:B479 D5 - - - push de
10 D1:B47A - - - - #macro routestrjp(cmdXs, cmdXm)
11 D1:B47A ld de, cmdXs
12 D1:B47A call strcmp
13 D1:B47A ld de, cmdXm
14 D1:B47A jp z, manrouteReturn
15 D1:B47A #endmacro
16 D1:B47A - - - -
17 D1:B47A CD 2E B6 D1 call fshcmdmanroute
18 D1:B47E CD 36 BF D1 call cryptocmdmanroute
19 D1:B482 - - - - ;Extention Point
20 D1:B482 - - - -
21 D1:B482 21 CE EA D0 ld hl, FshCmdErrCode
22 D1:B486 36 01 - - ld (hl), $01
23 D1:B488 11 00 00 00 ld de, $00
24 D1:B48C - - - - manrouteReturn:
25 D1:B48C EB - - - ex de, hl
26 D1:B48D D1 - - - pop de
27 D1:B48E C9 - - - ret
28 D1:B48F - - - -
29 D1:B48F - - - - ;;manrouteu
30 D1:B48F - - - - ;;routes command string to usage
31 D1:B48F - - - - ;;Inputs:
32 D1:B48F - - - - ;; HL: Command String
33 D1:B48F - - - - ;;Outputs:
34 D1:B48F - - - - ;; HL: Command Usage String
35 D1:B48F - - - - manrouteu:
36 D1:B48F D5 - - - push de
37 D1:B490 - - - - #macro routeustrjp(cmdXs, cmdXu)
38 D1:B490 ld de, cmdXs
39 D1:B490 call strcmp
40 D1:B490 ld de, cmdXu
41 D1:B490 jp z, manrouteuReturn
42 D1:B490 #endmacro
43 D1:B490 - - - -
44 D1:B490 CD E1 B6 D1 call fshcmdmanrouteu
45 D1:B494 CD 49 BF D1 call cryptocmdmanrouteu
46 D1:B498 - - - - ;Extention Point
47 D1:B498 - - - -
48 D1:B498 21 CE EA D0 ld hl, FshCmdErrCode
49 D1:B49C 36 01 - - ld (hl), $01
50 D1:B49E 11 00 00 00 ld de, $00
51 D1:B4A2 - - - - manrouteuReturn:
52 D1:B4A2 EB - - - ex de, hl
53 D1:B4A3 D1 - - - pop de
54 D1:B4A4 C9 - - - ret
Listing for file "FSHa.asm"
76 D1:B4A5 - - - - #include "includes/Command.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\Command.asm"
1 D1:B4A5 - - - - ;;Commanddecode
2 D1:B4A5 - - - - ;;Decodes all commands.
3 D1:B4A5 - - - - ;;Inputs:
4 D1:B4A5 - - - - ;; HL: Cmd String mem loc
5 D1:B4A5 - - - - ;; DE: Op code mem loc
6 D1:B4A5 - - - - ;;Output:
7 D1:B4A5 - - - - ;; Sets (DE) with command op code
8 D1:B4A5 - - - - commanddecode:
9 D1:B4A5 CD CA B4 D1 call fshcmddecode
10 D1:B4A9 CD 12 BF D1 call cryptocmddecode
11 D1:B4AD - - - - ;Extention Point
12 D1:B4AD - - - -
13 D1:B4AD C9 - - - ret
14 D1:B4AE - - - -
15 D1:B4AE - - - - ;;commandroute
16 D1:B4AE - - - - ;;Routes all commamds.
17 D1:B4AE - - - - ;;Inputs:
18 D1:B4AE - - - - ;; HL: Op code mem loc
19 D1:B4AE - - - - commandroute:
20 D1:B4AE CD A7 B5 D1 call fshcmdroute
21 D1:B4B2 CD 27 BF D1 call cryptocmdroute
22 D1:B4B6 - - - - ;Extention Point
23 D1:B4B6 - - - -
24 D1:B4B6 21 3A B2 D1 ld hl, ErrCmdNotFoundo
25 D1:B4BA 11 CE EA D0 ld de, FshCmdErrCode
26 D1:B4BE CD CB A9 D1 call bytecpy
27 D1:B4C2 CD 2B B2 D1 call ErrSet
28 D1:B4C6 C3 DF A8 D1 jp Err
29 D1:B4CA - - - -
30 D1:B4CA - - - - #include "includes/FshCommands/FshCommand.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommand.asm"
1 D1:B4CA - - - - fshcmddecode:
2 D1:B4CA E5 D5 11 94
B7 D1 CD 3B
AB D1 21 99
B7 D1 D1 CC
CB A9 D1 E1 decodecmdopt(fshcmdEXIT, fshcmdEXITo)
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommand.asm"
3 D1:B4DE E5 D5 11 AD
B7 D1 CD 3B
AB D1 21 B1
B7 D1 D1 CC
CB A9 D1 E1 decodecmdopt(fshcmdSET, fshcmdSETo)
4 D1:B4F2 E5 D5 11 A4
B8 D1 CD 3B
AB D1 21 A9
B8 D1 D1 CC
CB A9 D1 E1 decodecmdopt(fshcmdCOPY, fshcmdCOPYo)
5 D1:B506 E5 D5 11 B2
B9 D1 CD 3B
AB D1 21 B7
B9 D1 D1 CC
CB A9 D1 E1 decodecmdopt(fshcmdMOVE, fshcmdMOVEo)
6 D1:B51A E5 D5 11 C8
BA D1 CD 3B
AB D1 21 CC
BA D1 D1 CC
CB A9 D1 E1 decodecmdopt(fshcmdCLS, fshcmdCLSo)
7 D1:B52E E5 D5 11 F4
BA D1 CD 3B
AB D1 21 F8
BA D1 D1 CC
CB A9 D1 E1 decodecmdopt(fshcmdVAR, fshcmdVARo)
8 D1:B542 E5 D5 11 96
BB D1 CD 3B
AB D1 21 9B
BB D1 D1 CC
CB A9 D1 E1 decodecmdopt(fshcmdVARS, fshcmdVARSo)
9 D1:B556 E5 D5 11 06
BC D1 CD 3B
AB D1 21 0C
BC D1 D1 CC
CB A9 D1 E1 decodecmdopt(fshcmdSLEEP, fshcmdSLEEPo)
10 D1:B56A E5 D5 11 54
BC D1 CD 3B
AB D1 21 59
BC D1 D1 CC
CB A9 D1 E1 decodecmdopt(fshcmdINFO, fshcmdINFOo)
11 D1:B57E E5 D5 11 F6
BC D1 CD 3B
AB D1 21 FB
BC D1 D1 CC
CB A9 D1 E1 decodecmdopt(fshcmdHELP, fshcmdHELPo)
12 D1:B592 E5 D5 11 2A
BE D1 CD 3B
AB D1 21 2E
BE D1 D1 CC
CB A9 D1 E1 decodecmdopt(fshcmdMAN, fshcmdMANo)
13 D1:B5A6 C9 - - - ret
14 D1:B5A7 - - - -
15 D1:B5A7 - - - - fshcmdroute:
16 D1:B5A7 C1 - - - pop bc ;pop the ret loc from stack into bc
17 D1:B5A8 11 99 B7 D1
CD C3 A9 D1
CA A9 B7 D1 routeoptjp(fshcmdEXITo, fshcmdEXITf)
18 D1:B5B4 11 B1 B7 D1
CD C3 A9 D1
CA EF B7 D1 routeoptjp(fshcmdSETo, fshcmdSETf)
19 D1:B5C0 11 A9 B8 D1
CD C3 A9 D1
CA 04 B9 D1 routeoptjp(fshcmdCOPYo, fshcmdCOPYf)
20 D1:B5CC 11 B7 B9 D1
CD C3 A9 D1
CA 11 BA D1 routeoptjp(fshcmdMOVEo, fshcmdMOVEf)
21 D1:B5D8 11 CC BA D1
CD C3 A9 D1
CA E3 BA D1 routeoptjp(fshcmdCLSo, fshcmdCLSf)
22 D1:B5E4 11 F8 BA D1
CD C3 A9 D1
CA 2F BB D1 routeoptjp(fshcmdVARo, fshcmdVARf)
23 D1:B5F0 11 9B BB D1
CD C3 A9 D1
CA B7 BB D1 routeoptjp(fshcmdVARSo, fshcmdVARSf)
24 D1:B5FC 11 0C BC D1
CD C3 A9 D1
CA 3D BC D1 routeoptjp(fshcmdSLEEPo, fshcmdSLEEPf)
25 D1:B608 11 59 BC D1
CD C3 A9 D1
CA 85 BC D1 routeoptjp(fshcmdINFOo, fshcmdINFOf)
26 D1:B614 11 FB BC D1
CD C3 A9 D1
CA 17 BD D1 routeoptjp(fshcmdHELPo, fshcmdHELPf)
27 D1:B620 11 2E BE D1
CD C3 A9 D1
CA 5B BE D1 routeoptjp(fshcmdMANo, fshcmdMANf)
28 D1:B62C C5 - - - push bc ;put ret location back on stack
29 D1:B62D C9 - - - ret
30 D1:B62E - - - -
31 D1:B62E - - - - fshcmdmanroute:
32 D1:B62E C1 - - - pop bc
33 D1:B62F 11 94 B7 D1
CD 3B AB D1
11 9A B7 D1
CA 8C B4 D1 routestrjp(fshcmdEXIT, fshCmdEXITm)
34 D1:B63F 11 AD B7 D1
CD 3B AB D1
11 B2 B7 D1
CA 8C B4 D1 routestrjp(fshcmdSET, fshCmdSETm)
35 D1:B64F 11 A4 B8 D1
CD 3B AB D1
11 AA B8 D1
CA 8C B4 D1 routestrjp(fshcmdCOPY, fshCmdCOPYm)
36 D1:B65F 11 B2 B9 D1
CD 3B AB D1
11 B8 B9 D1
CA 8C B4 D1 routestrjp(fshcmdMOVE, fshCmdMOVEm)
37 D1:B66F 11 C8 BA D1
CD 3B AB D1
11 CD BA D1
CA 8C B4 D1 routestrjp(fshcmdCLS, fshCmdCLSm)
38 D1:B67F 11 F4 BA D1
CD 3B AB D1
11 F9 BA D1
CA 8C B4 D1 routestrjp(fshcmdVAR, fshCmdVARm)
39 D1:B68F 11 96 BB D1
CD 3B AB D1
11 9C BB D1
CA 8C B4 D1 routestrjp(fshcmdVARS, fshCmdVARSm)
40 D1:B69F 11 06 BC D1
CD 3B AB D1
11 0D BC D1
CA 8C B4 D1 routestrjp(fshcmdSLEEP, fshCmdSLEEPm)
41 D1:B6AF 11 54 BC D1
CD 3B AB D1
11 5A BC D1
CA 8C B4 D1 routestrjp(fshcmdINFO, fshCmdINFOm)
42 D1:B6BF 11 F6 BC D1
CD 3B AB D1
11 FC BC D1
CA 8C B4 D1 routestrjp(fshcmdHELP, fshCmdHELPm)
43 D1:B6CF 11 2A BE D1
CD 3B AB D1
11 2F BE D1
CA 8C B4 D1 routestrjp(fshcmdMAN, fshCmdMANm)
44 D1:B6DF C5 - - - push bc
45 D1:B6E0 C9 - - - ret
46 D1:B6E1 - - - -
47 D1:B6E1 - - - - fshcmdmanrouteu:
48 D1:B6E1 C1 - - - pop bc
49 D1:B6E2 11 94 B7 D1
CD 3B AB D1
11 A4 B7 D1
CA A2 B4 D1 routeustrjp(fshcmdEXIT, fshCmdEXITu)
50 D1:B6F2 11 AD B7 D1
CD 3B AB D1
11 CD B7 D1
CA A2 B4 D1 routeustrjp(fshcmdSET, fshCmdSETu)
51 D1:B702 11 A4 B8 D1
CD 3B AB D1
11 D8 B8 D1
CA A2 B4 D1 routeustrjp(fshcmdCOPY, fshCmdCOPYu)
52 D1:B712 11 B2 B9 D1
CD 3B AB D1
11 E5 B9 D1
CA A2 B4 D1 routeustrjp(fshcmdMOVE, fshCmdMOVEu)
53 D1:B722 11 C8 BA D1
CD 3B AB D1
11 DF BA D1
CA A2 B4 D1 routeustrjp(fshcmdCLS, fshCmdCLSu)
54 D1:B732 11 F4 BA D1
CD 3B AB D1
11 1A BB D1
CA A2 B4 D1 routeustrjp(fshcmdVAR, fshCmdVARu)
55 D1:B742 11 96 BB D1
CD 3B AB D1
11 B2 BB D1
CA A2 B4 D1 routeustrjp(fshcmdVARS, fshCmdVARSu)
56 D1:B752 11 06 BC D1
CD 3B AB D1
11 37 BC D1
CA A2 B4 D1 routeustrjp(fshcmdSLEEP, fshCmdSLEEPu)
57 D1:B762 11 54 BC D1
CD 3B AB D1
11 80 BC D1
CA A2 B4 D1 routeustrjp(fshcmdINFO, fshCmdINFOu)
58 D1:B772 11 F6 BC D1
CD 3B AB D1
11 12 BD D1
CA A2 B4 D1 routeustrjp(fshcmdHELP, fshCmdHELPu)
59 D1:B782 11 2A BE D1
CD 3B AB D1
11 4D BE D1
CA A2 B4 D1 routeustrjp(fshcmdMAN, fshCmdMANu)
60 D1:B792 C5 - - - push bc
61 D1:B793 C9 - - - ret
62 D1:B794 - - - -
63 D1:B794 - - - - #include "includes/FshCommands/FshCommands.inc"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommands.inc"
1 D1:B794 - - - - #include "includes/FshCommands/EXIT.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\EXIT.asm"
1 D1:B794 45 58 49 54
00 - - - fshcmdEXIT: .db "EXIT", 0
2 D1:B799 FF - - - fshcmdEXITo: .db $FF
3 D1:B79A 45 78 69 74
73 20 46 73
68 00 - - fshcmdEXITm: .db "Exits Fsh", 0
4 D1:B7A4 45 58 49 54
00 - - - fshcmdEXITu: .db "EXIT", 0
5 D1:B7A9 C3 E3 A8 D1 fshcmdEXITf: JP Cleanup
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommands.inc"
2 D1:B7AD - - - - #include "includes/FshCommands/SET.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\SET.asm"
1 D1:B7AD 53 45 54 00 fshcmdSET: .db "SET", 0
2 D1:B7B1 01 - - - fshcmdSETo: .db $01
3 D1:B7B2 53 65 74 73
20 61 20 76
61 6C 75 65
20 69 6E 20
46 53 48 20
6D 65 6D 6F
72 79 00 - fshcmdSETm: .db "Sets a value in FSH memory", 0
4 D1:B7CD 53 45 54 20
3C 64 65 73
74 69 6E 61
74 69 6F 6E
20 61 64 64
72 65 73 73
3E 20 3C 76
61 6C 75 65
3E 00 - - fshcmdSETu: .db "SET <destination address> <value>", 0
5 D1:B7EF - - - - fshcmdSETf:
6 D1:B7EF - - - - fshcmdSETfArg0:
7 D1:B7EF 21 CD EA D0 ld hl, FshCmdArgFlags
8 D1:B7F3 CB 4E - - bit 1, (hl)
9 D1:B7F5 20 34 - - jr nz, fshcmdSETfArg1
10 D1:B7F7 CB 46 - - bit 0, (hl)
11 D1:B7F9 28 0C - - jr z, fshcmdSETfArg0Get
12 D1:B7FB 21 C0 B2 D1 ld hl, ErrUsageo
13 D1:B7FF CD 2B B2 D1 call ErrSet
14 D1:B803 CD DE B1 D1 call ErrCatch
15 D1:B807 - - - - fshcmdSETfArg0Get:
16 D1:B807 21 8E B8 D1 ld hl, fshcmdSETfDIndex
17 D1:B80B CD 89 AA D1 call printprompt
18 D1:B80F 21 88 B8 D1 ld hl, fshcmdSETfInputBuffer
19 D1:B813 11 03 00 00 ld de, 3
20 D1:B817 CD AF AE D1 call inputnumstr
21 D1:B81B CD C5 AB D1 call strtow
22 D1:B81F 11 A8 EA D0 ld de, FshCmdArg0
23 D1:B823 EB - - - ex de, hl
24 D1:B824 73 - - - ld (hl), e
25 D1:B825 23 - - - inc hl
26 D1:B826 72 - - - ld (hl), d
27 D1:B827 CD F0 07 02 call _NewLine
28 D1:B82B - - - - fshcmdSETfArg1:
29 D1:B82B 21 CD EA D0 ld hl, FshCmdArgFlags
30 D1:B82F CB 5E - - bit 3, (hl)
31 D1:B831 20 34 - - jr nz, fshcmdSETfExe
32 D1:B833 CB 56 - - bit 2, (hl)
33 D1:B835 28 0C - - jr z, fshcmdSETfArg1Get
34 D1:B837 21 C0 B2 D1 ld hl, ErrUsageo
35 D1:B83B CD 2B B2 D1 call ErrSet
36 D1:B83F CD DE B1 D1 call ErrCatch
37 D1:B843 - - - - fshcmdSETfArg1Get:
38 D1:B843 21 9C B8 D1 ld hl, fshcmdSETfDValue
39 D1:B847 CD 89 AA D1 call printprompt
40 D1:B84B 21 88 B8 D1 ld hl, fshcmdSETfInputBuffer
41 D1:B84F 11 05 00 00 ld de, 5
42 D1:B853 CD AF AE D1 call inputnumstr
43 D1:B857 CD C5 AB D1 call strtow
44 D1:B85B EB - - - ex de, hl
45 D1:B85C 21 B1 EA D0 ld hl, FshCmdArg1
46 D1:B860 73 - - - ld (hl), e
47 D1:B861 23 - - - inc hl
48 D1:B862 72 - - - ld (hl), d
49 D1:B863 CD F0 07 02 call _NewLine
50 D1:B867 - - - - fshcmdSETfExe:
51 D1:B867 21 A8 EA D0 ld hl, FshCmdArg0
52 D1:B86B 11 00 00 00 ld de, 0
53 D1:B86F 5E - - - ld e, (hl)
54 D1:B870 23 - - - inc hl
55 D1:B871 56 - - - ld d, (hl)
56 D1:B872 D5 - - - push de
57 D1:B873 21 B1 EA D0 ld hl, FshCmdArg1
58 D1:B877 5E - - - ld e, (hl)
59 D1:B878 23 - - - inc hl
60 D1:B879 56 - - - ld d, (hl)
61 D1:B87A EB - - - ex de, hl
62 D1:B87B D1 - - - pop de
63 D1:B87C CD 2E B1 D1 call fshvarset
64 D1:B880 CD DE B1 D1 call ErrCatch
65 D1:B884 C3 DB A8 D1 jp Fin
66 D1:B888 - - - -
67 D1:B888 00 00 00 00
00 00 - - fshcmdSETfInputBuffer: .db $00, $00, $00, $00, $00, $00
68 D1:B88E 44 65 73 74
69 6E 61 74
69 6F 6E 3D
20 00 - - fshcmdSETfDIndex: .db "Destination= ", 0
69 D1:B89C 56 61 6C 75
65 3D 20 00 fshcmdSETfDValue: .db "Value= ", 0
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommands.inc"
3 D1:B8A4 - - - - #include "includes/FshCommands/COPY.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\COPY.asm"
1 D1:B8A4 43 4F 50 59
00 - - - fshcmdCOPY: .db "COPY", 0
2 D1:B8A9 02 - - - fshcmdCOPYo: .db $02
3 D1:B8AA 43 6F 70 79
73 20 61 20
76 61 6C 75
65 20 69 6E
20 46 53 48
20 6D 65 6D
6F 72 79 20
74 6F 20 61
6E 6F 74 68
65 72 20 61
64 64 65 73
73 00 - - fshcmdCOPYm: .db "Copys a value in FSH memory to another addess", 0
4 D1:B8D8 43 4F 50 59
20 3C 73 6F
75 72 63 65
20 61 64 64
72 65 73 73
3E 20 3C 64
65 73 74 69
6E 61 74 69
6F 6E 20 61
64 64 72 65
73 73 3E 00 fshcmdCOPYu: .db "COPY <source address> <destination address>", 0
5 D1:B904 - - - - fshcmdCOPYf:
6 D1:B904 - - - - fshcmdCOPYfArg0:
7 D1:B904 21 CD EA D0 ld hl, FshCmdArgFlags
8 D1:B908 CB 4E - - bit 1, (hl)
9 D1:B90A 20 31 - - jr nz, fshcmdCOPYfArg1
10 D1:B90C CB 46 - - bit 0, (hl)
11 D1:B90E 28 0C - - jr z, fshcmdCOPYfArg0Get
12 D1:B910 21 C0 B2 D1 ld hl, ErrUsageo
13 D1:B914 CD 2B B2 D1 call ErrSet
14 D1:B918 CD DE B1 D1 call ErrCatch
15 D1:B91C - - - - fshcmdCOPYfArg0Get:
16 D1:B91C 21 9B B9 D1 ld hl, fshcmdCOPYfDSource
17 D1:B920 CD 89 AA D1 call printprompt
18 D1:B924 21 97 B9 D1 ld hl, fshcmdCOPYfInputBuffer
19 D1:B928 11 03 00 00 ld de, 3
20 D1:B92C CD AF AE D1 call inputnumstr
21 D1:B930 CD 68 AB D1 call strtob
22 D1:B934 21 A8 EA D0 ld hl, FshCmdArg0
23 D1:B938 77 - - - ld (hl), a
24 D1:B939 CD F0 07 02 call _NewLine
25 D1:B93D - - - - fshcmdCOPYfArg1:
26 D1:B93D 21 CD EA D0 ld hl, FshCmdArgFlags
27 D1:B941 CB 5E - - bit 3, (hl)
28 D1:B943 20 31 - - jr nz, fshcmdCOPYfExe
29 D1:B945 CB 56 - - bit 2, (hl)
30 D1:B947 28 0C - - jr z, fshcmdCOPYfArg1Get
31 D1:B949 21 C0 B2 D1 ld hl, ErrUsageo
32 D1:B94D CD 2B B2 D1 call ErrSet
33 D1:B951 CD DE B1 D1 call ErrCatch
34 D1:B955 - - - - fshcmdCOPYfArg1Get:
35 D1:B955 21 9B B9 D1 ld hl, fshcmdCOPYfDSource
36 D1:B959 CD 89 AA D1 call printprompt
37 D1:B95D 21 97 B9 D1 ld hl, fshcmdCOPYfInputBuffer
38 D1:B961 11 03 00 00 ld de, 3
39 D1:B965 CD AF AE D1 call inputnumstr
40 D1:B969 CD 68 AB D1 call strtob
41 D1:B96D 21 B1 EA D0 ld hl, FshCmdArg1
42 D1:B971 77 - - - ld (hl), a
43 D1:B972 CD F0 07 02 call _NewLine
44 D1:B976 - - - - fshcmdCOPYfExe:
45 D1:B976 21 A8 EA D0 ld hl, FshCmdArg0
46 D1:B97A 11 00 00 00 ld de, 0
47 D1:B97E 5E - - - ld e, (hl)
48 D1:B97F EB - - - ex de, hl
49 D1:B980 E5 - - - push hl
50 D1:B981 21 B1 EA D0 ld hl, FshCmdArg1
51 D1:B985 11 00 00 00 ld de, 0
52 D1:B989 5E - - - ld e, (hl)
53 D1:B98A E1 - - - pop hl
54 D1:B98B CD 81 B1 D1 call fshvarcpy
55 D1:B98F CD DE B1 D1 call ErrCatch
56 D1:B993 C3 DB A8 D1 jp Fin
57 D1:B997 - - - -
58 D1:B997 00 00 00 00 fshcmdCOPYfInputBuffer: .db $00, $00, $00, $00
59 D1:B99B 53 6F 75 72
63 65 3D 20
00 - - - fshcmdCOPYfDSource: .db "Source= ", 0
60 D1:B9A4 44 65 73 74
69 6E 61 74
69 6F 6E 3D
20 00 - - fshcmdCOPYfDDestination: .db "Destination= ", 0
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommands.inc"
4 D1:B9B2 - - - - #include "includes/FshCommands/MOVE.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\MOVE.asm"
1 D1:B9B2 4D 4F 56 45
00 - - - fshcmdMOVE: .db "MOVE", 0
2 D1:B9B7 03 - - - fshcmdMOVEo: .db $03
3 D1:B9B8 4D 6F 76 65
20 61 20 76
61 6C 75 65
20 69 6E 20
46 53 48 20
6D 65 6D 6F
72 79 20 74
6F 20 61 6E
6F 74 68 65
72 20 61 64
64 65 73 73
00 - - - fshcmdMOVEm: .db "Move a value in FSH memory to another addess", 0
4 D1:B9E5 4D 4F 56 45
20 3C 73 6F
75 72 63 65
20 61 64 64
72 65 73 73
3E 20 3C 64
65 73 74 69
6E 61 74 69
6F 6E 20 61
64 64 72 65
73 73 3E 00 fshcmdMOVEu: .db "MOVE <source address> <destination address>", 0
5 D1:BA11 - - - - fshcmdMOVEf:
6 D1:BA11 - - - - fshcmdMOVEfArg0:
7 D1:BA11 21 CD EA D0 ld hl, FshCmdArgFlags
8 D1:BA15 CB 4E - - bit 1, (hl)
9 D1:BA17 20 31 - - jr nz, fshcmdMOVEfArg1
10 D1:BA19 CB 46 - - bit 0, (hl)
11 D1:BA1B 28 0C - - jr z, fshcmdMOVEfArg0Get
12 D1:BA1D 21 C0 B2 D1 ld hl, ErrUsageo
13 D1:BA21 CD 2B B2 D1 call ErrSet
14 D1:BA25 CD DE B1 D1 call ErrCatch
15 D1:BA29 - - - - fshcmdMOVEfArg0Get:
16 D1:BA29 21 B1 BA D1 ld hl, fshcmdMOVEfDSource
17 D1:BA2D CD 89 AA D1 call printprompt
18 D1:BA31 21 AD BA D1 ld hl, fshcmdMOVEfInputBuffer
19 D1:BA35 11 03 00 00 ld de, 3
20 D1:BA39 CD AF AE D1 call inputnumstr
21 D1:BA3D CD 68 AB D1 call strtob
22 D1:BA41 21 A8 EA D0 ld hl, FshCmdArg0
23 D1:BA45 77 - - - ld (hl), a
24 D1:BA46 CD F0 07 02 call _NewLine
25 D1:BA4A - - - - fshcmdMOVEfArg1:
26 D1:BA4A 21 CD EA D0 ld hl, FshCmdArgFlags
27 D1:BA4E CB 5E - - bit 3, (hl)
28 D1:BA50 20 31 - - jr nz, fshcmdMOVEfExe
29 D1:BA52 CB 56 - - bit 2, (hl)
30 D1:BA54 28 0C - - jr z, fshcmdMOVEfArg1Get
31 D1:BA56 21 C0 B2 D1 ld hl, ErrUsageo
32 D1:BA5A CD 2B B2 D1 call ErrSet
33 D1:BA5E CD DE B1 D1 call ErrCatch
34 D1:BA62 - - - - fshcmdMOVEfArg1Get:
35 D1:BA62 21 BA BA D1 ld hl, fshcmdMOVEfDDestination
36 D1:BA66 CD 89 AA D1 call printprompt
37 D1:BA6A 21 AD BA D1 ld hl, fshcmdMOVEfInputBuffer
38 D1:BA6E 11 03 00 00 ld de, 3
39 D1:BA72 CD AF AE D1 call inputnumstr
40 D1:BA76 CD 68 AB D1 call strtob
41 D1:BA7A 21 B1 EA D0 ld hl, FshCmdArg1
42 D1:BA7E 77 - - - ld (hl), a
43 D1:BA7F CD F0 07 02 call _NewLine
44 D1:BA83 - - - - fshcmdMOVEfExe:
45 D1:BA83 21 A8 EA D0 ld hl, FshCmdArg0
46 D1:BA87 11 00 00 00 ld de, 0
47 D1:BA8B 5E - - - ld e, (hl)
48 D1:BA8C EB - - - ex de, hl
49 D1:BA8D E5 - - - push hl
50 D1:BA8E 21 B1 EA D0 ld hl, FshCmdArg1
51 D1:BA92 11 00 00 00 ld de, 0
52 D1:BA96 5E - - - ld e, (hl)
53 D1:BA97 E1 - - - pop hl
54 D1:BA98 CD 81 B1 D1 call fshvarcpy
55 D1:BA9C EB - - - ex de, hl
56 D1:BA9D 21 00 00 00 ld hl, 0
57 D1:BAA1 CD 2E B1 D1 call fshvarset
58 D1:BAA5 CD DE B1 D1 call ErrCatch
59 D1:BAA9 C3 DB A8 D1 jp Fin
60 D1:BAAD - - - -
61 D1:BAAD 00 00 00 00 fshcmdMOVEfInputBuffer: .db $00, $00, $00, $00
62 D1:BAB1 53 6F 75 72
63 65 3D 20
00 - - - fshcmdMOVEfDSource: .db "Source= ", 0
63 D1:BABA 44 65 73 74
69 6E 61 74
69 6F 6E 3D
20 00 - - fshcmdMOVEfDDestination: .db "Destination= ", 0
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommands.inc"
5 D1:BAC8 - - - - #include "includes/FshCommands/CLS.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\CLS.asm"
1 D1:BAC8 43 4C 53 00 fshcmdCLS: .db "CLS", 0
2 D1:BACC 10 - - - fshcmdCLSo: .db $10
3 D1:BACD 43 6C 65 61
72 73 20 74
68 65 20 73
63 72 65 65
6E 00 - - fshcmdCLSm: .db "Clears the screen", 0
4 D1:BADF 43 4C 53 00 fshcmdCLSu: .db "CLS", 0
5 D1:BAE3 - - - - fshcmdCLSf:
6 D1:BAE3 CD 08 08 02 call _ClrLCDFull
7 D1:BAE7 AF - - - xor a
8 D1:BAE8 32 95 05 D0 ld (CurRow), a
9 D1:BAEC 32 96 05 D0 ld (CurCol), a
10 D1:BAF0 C3 DB A8 D1 jp Fin
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommands.inc"
6 D1:BAF4 - - - - #include "includes/FshCommands/VAR.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\VAR.asm"
1 D1:BAF4 56 41 52 00 fshcmdVAR: .db "VAR", 0
2 D1:BAF8 11 - - - fshcmdVARo: .db $11
3 D1:BAF9 44 69 73 70
6C 61 79 73
20 61 20 76
61 6C 75 65
20 66 72 6F
6D 20 46 53
48 20 6D 65
6D 6F 72 79
00 - - - fshcmdVARm: .db "Displays a value from FSH memory", 0
4 D1:BB1A 56 41 52 20
3C 73 6F 75
72 63 65 20
61 64 64 72
65 73 73 3E
00 - - - fshcmdVARu: .db "VAR <source address>", 0
5 D1:BB2F - - - - fshcmdVARf:
6 D1:BB2F - - - - fshcmdVARfArg0:
7 D1:BB2F 21 CD EA D0 ld hl, FshCmdArgFlags
8 D1:BB33 CB 4E - - bit 1, (hl)
9 D1:BB35 20 34 - - jr nz, fshcmdVARfExe
10 D1:BB37 CB 46 - - bit 0, (hl)
11 D1:BB39 28 0C - - jr z, fshcmdVARfArg0Get
12 D1:BB3B 21 C0 B2 D1 ld hl, ErrUsageo
13 D1:BB3F CD 2B B2 D1 call ErrSet
14 D1:BB43 CD DE B1 D1 call ErrCatch
15 D1:BB47 - - - - fshcmdVARfArg0Get:
16 D1:BB47 21 8E BB D1 ld hl, fshcmdVARfDIndex
17 D1:BB4B CD 89 AA D1 call printprompt
18 D1:BB4F 21 8A BB D1 ld hl, fshcmdVARfInputBuffer
19 D1:BB53 11 03 00 00 ld de, 3
20 D1:BB57 CD AF AE D1 call inputnumstr
21 D1:BB5B CD C5 AB D1 call strtow
22 D1:BB5F 11 A8 EA D0 ld de, FshCmdArg0
23 D1:BB63 EB - - - ex de, hl
24 D1:BB64 73 - - - ld (hl), e
25 D1:BB65 23 - - - inc hl
26 D1:BB66 72 - - - ld (hl), d
27 D1:BB67 CD F0 07 02 call _NewLine
28 D1:BB6B - - - - fshcmdVARfExe:
29 D1:BB6B 21 A8 EA D0 ld hl, FshCmdArg0
30 D1:BB6F 11 00 00 00 ld de, 0
31 D1:BB73 5E - - - ld e, (hl)
32 D1:BB74 23 - - - inc hl
33 D1:BB75 56 - - - ld d, (hl)
34 D1:BB76 CD 56 B1 D1 call fshvarget
35 D1:BB7A CD DE B1 D1 call ErrCatch
36 D1:BB7E CD BC 07 02 call _DispHL_s
37 D1:BB82 CD F0 07 02 call _NewLine
38 D1:BB86 C3 DB A8 D1 jp Fin
39 D1:BB8A - - - -
40 D1:BB8A 00 00 00 00 fshcmdVARfInputBuffer: .db $00, $00, $00, $00
41 D1:BB8E 49 6E 64 65
78 3D 20 00 fshcmdVARfDIndex: .db "Index= ", 0
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommands.inc"
7 D1:BB96 - - - - #include "includes/FshCommands/VARS.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\VARS.asm"
1 D1:BB96 56 41 52 53
00 - - - fshcmdVARS: .db "VARS", 0
2 D1:BB9B 12 - - - fshcmdVARSo: .db $12
3 D1:BB9C 44 69 73 70
6C 61 79 73
20 61 6C 6C
20 46 73 68
20 56 61 72
73 00 - - fshcmdVARSm: .db "Displays all Fsh Vars", 0
4 D1:BBB2 56 41 52 53
00 - - - fshcmdVARSu: .db "VARS", 0
5 D1:BBB7 - - - - fshcmdVARSf:
6 D1:BBB7 21 CD EA D0 ld hl, FshCmdArgFlags
7 D1:BBBB CB 46 - - bit 0, (hl)
8 D1:BBBD 28 0C - - jr z, fshcmdVARSfExe
9 D1:BBBF 21 C0 B2 D1 ld hl, ErrUsageo
10 D1:BBC3 CD 2B B2 D1 call ErrSet
11 D1:BBC7 CD DE B1 D1 call ErrCatch
12 D1:BBCB - - - - fshcmdVARSfExe:
13 D1:BBCB 06 00 - - ld b, 0
14 D1:BBCD 0E 00 - - ld c, 0
15 D1:BBCF 11 00 00 00 ld de, 0
16 D1:BBD3 - - - - fshcmdVARSfLoop:
17 D1:BBD3 CD 56 B1 D1 call fshvarget
18 D1:BBD7 7C - - - ld a, h
19 D1:BBD8 CD B8 07 02 call _PutC
20 D1:BBDC 7D - - - ld a, l
21 D1:BBDD CD B8 07 02 call _PutC
22 D1:BBE1 79 - - - ld a, c
23 D1:BBE2 0C - - - inc c
24 D1:BBE3 FE 07 - - cp 7
25 D1:BBE5 20 0E - - jr nz, fshcmdVARSfLoopU
26 D1:BBE7 E5 - - - push hl
27 D1:BBE8 C5 - - - push bc
28 D1:BBE9 D5 - - - push de
29 D1:BBEA CD F0 07 02 call _NewLine
30 D1:BBEE D1 - - - pop de
31 D1:BBEF C1 - - - pop bc
32 D1:BBF0 E1 - - - pop hl
33 D1:BBF1 0E 00 - - ld c, 0
34 D1:BBF3 18 06 - - jr fshcmdVARSfLoopEnd
35 D1:BBF5 - - - - fshcmdVARSfLoopU:
36 D1:BBF5 3E 5F - - ld a, '_'
37 D1:BBF7 CD B8 07 02 call _PutC
38 D1:BBFB - - - - fshcmdVARSfLoopEnd:
39 D1:BBFB 04 - - - inc b
40 D1:BBFC 13 - - - inc de
41 D1:BBFD 78 - - - ld a, b
42 D1:BBFE FE 40 - - cp FshVarsSize / 2
43 D1:BC00 38 D1 - - jr c, fshcmdVARSfLoop
44 D1:BC02 C3 DB A8 D1 jp Fin
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommands.inc"
8 D1:BC06 - - - - #include "includes/FshCommands/SLEEP.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\SLEEP.asm"
1 D1:BC06 53 4C 45 45
50 00 - - fshcmdSLEEP: .db "SLEEP", 0
2 D1:BC0C 16 - - - fshcmdSLEEPo: .db $16
3 D1:BC0D 50 75 74 73
20 74 68 65
20 63 61 6C
63 75 6C 61
74 6F 72 20
69 6E 74 6F
20 73 6C 65
65 70 20 6D
6F 64 65 20
28 41 50 44
29 00 - - fshcmdSLEEPm: .db "Puts the calculator into sleep mode (APD)", 0
4 D1:BC37 53 4C 45 45
50 00 - - fshcmdSLEEPu: .db "SLEEP", 0
5 D1:BC3D - - - - fshcmdSLEEPf:
6 D1:BC3D F3 - - - di
7 D1:BC3E CD 38 11 02 call _EnableAPD
8 D1:BC42 3E 01 - - ld a,1
9 D1:BC44 21 90 05 D0 ld hl,apdSubTimer
10 D1:BC48 77 - - - ld (hl),a
11 D1:BC49 23 - - - inc hl
12 D1:BC4A 77 - - - ld (hl),a
13 D1:BC4B FD CB 08 DE set apdRunning,(iy+apdFlags)
14 D1:BC4F FB - - - ei
15 D1:BC50 C3 DB A8 D1 jp Fin
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommands.inc"
9 D1:BC54 - - - - #include "includes/FshCommands/INFO.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\INFO.asm"
1 D1:BC54 49 4E 46 4F
00 - - - fshcmdINFO: .db "INFO", 0
2 D1:BC59 20 - - - fshcmdINFOo: .db $20
3 D1:BC5A 44 69 73 70
6C 61 79 73
20 53 79 65
74 65 6D 20
49 6E 66 6F
72 6D 61 74
69 6F 6E 20
61 6E 64 20
53 74 61 74
73 00 - - fshcmdINFOm: .db "Displays Syetem Information and Stats", 0
4 D1:BC80 49 4E 46 4F
00 - - - fshcmdINFOu: .db "INFO", 0
5 D1:BC85 - - - - fshcmdINFOf:
6 D1:BC85 21 CD EA D0 ld hl, FshCmdArgFlags
7 D1:BC89 CB 46 - - bit 0, (hl)
8 D1:BC8B 28 0C - - jr z, fshcmdINFOfExe
9 D1:BC8D 21 C0 B2 D1 ld hl, ErrUsageo
10 D1:BC91 CD 2B B2 D1 call ErrSet
11 D1:BC95 CD DE B1 D1 call ErrCatch
12 D1:BC99 - - - - fshcmdINFOfExe:
13 D1:BC99 CD 08 08 02 call _ClrLCDFull
14 D1:BC9D AF - - - xor a
15 D1:BC9E 32 95 05 D0 ld (CurRow), a
16 D1:BCA2 32 96 05 D0 ld (CurCol), a
17 D1:BCA6 - - - -
18 D1:BCA6 CD 0D B3 D1 call printfshnamelong
19 D1:BCAA CD F0 07 02 call _NewLine
20 D1:BCAE - - - -
21 D1:BCAE 21 06 A9 D1 ld hl, FshBy
22 D1:BCB2 CD C0 07 02 call _PutS
23 D1:BCB6 CD F0 07 02 call _NewLine
24 D1:BCBA - - - -
25 D1:BCBA 21 10 A9 D1 ld hl, FshSite
26 D1:BCBE CD C0 07 02 call _PutS
27 D1:BCC2 CD F0 07 02 call _NewLine
28 D1:BCC6 - - - -
29 D1:BCC6 CD F0 07 02 call _NewLine
30 D1:BCCA 21 EE BC D1 ld hl, fshcmdINFOfSPS1
31 D1:BCCE CD C0 07 02 call _PutS
32 D1:BCD2 3E 27 - - ld a, $27
33 D1:BCD4 CD B8 07 02 call _PutC
34 D1:BCD8 21 2B A9 D1 ld hl, PS1
35 D1:BCDC CD C0 07 02 call _PutS
36 D1:BCE0 3E 27 - - ld a, $27
37 D1:BCE2 CD B8 07 02 call _PutC
38 D1:BCE6 CD F0 07 02 call _NewLine
39 D1:BCEA - - - -
40 D1:BCEA C3 DB A8 D1 jp Fin
41 D1:BCEE - - - -
42 D1:BCEE 50 53 31 CE
CE CE 3A 00 fshcmdINFOfSPS1: .db "PS1", $CE, $CE, $CE, ":", 0
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommands.inc"
10 D1:BCF6 - - - - #include "includes/FshCommands/HELP.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\HELP.asm"
1 D1:BCF6 48 45 4C 50
00 - - - fshcmdHELP: .db "HELP", 0
2 D1:BCFB 21 - - - fshcmdHELPo: .db $21
3 D1:BCFC 44 69 73 70
6C 61 79 73
20 61 6C 6C
20 63 6F 6D
6D 61 6E 64
73 00 - - fshcmdHELPm: .db "Displays all commands", 0
4 D1:BD12 48 45 4C 50
00 - - - fshcmdHELPu: .db "HELP", 0
5 D1:BD17 - - - - fshcmdHELPf:
6 D1:BD17 21 CD EA D0 ld hl, FshCmdArgFlags
7 D1:BD1B CB 46 - - bit 0, (hl)
8 D1:BD1D 28 0C - - jr z, fshcmdHELPfExe
9 D1:BD1F 21 C0 B2 D1 ld hl, ErrUsageo
10 D1:BD23 CD 2B B2 D1 call ErrSet
11 D1:BD27 CD DE B1 D1 call ErrCatch
12 D1:BD2B - - - - fshcmdHELPfExe:
13 D1:BD2B 21 F1 BD D1 ld hl, fshcmdHELPfLine1
14 D1:BD2F CD C0 07 02 call _PutS
15 D1:BD33 CD F0 07 02 call _NewLine
16 D1:BD37 - - - -
17 D1:BD37 - - - - #macro fshcmdHELPmRow1(cmdXs)
18 D1:BD37 xor a
19 D1:BD37 ld (curCol), a
20 D1:BD37 ld hl, cmdXs
21 D1:BD37 call _PutS
22 D1:BD37 call _NewLine
23 D1:BD37 #endmacro
24 D1:BD37 - - - - #macro fshcmdHELPmRow2(cmdXs, cmdYs)
25 D1:BD37 xor a
26 D1:BD37 ld (curCol), a
27 D1:BD37 ld hl, cmdXs
28 D1:BD37 call _PutS
29 D1:BD37 ld a, 9
30 D1:BD37 ld (curcol), a
31 D1:BD37 ld hl, cmdYs
32 D1:BD37 call _PutS
33 D1:BD37 call _NewLine
34 D1:BD37 #endmacro
35 D1:BD37 - - - - #macro fshcmdHELPmRow3(cmdXs, cmdYs, cmdZs)
36 D1:BD37 xor a
37 D1:BD37 ld (curCol), a
38 D1:BD37 ld hl, cmdXs
39 D1:BD37 call _PutS
40 D1:BD37 ld a, 9
41 D1:BD37 ld (curcol), a
42 D1:BD37 ld hl, cmdYs
43 D1:BD37 call _PutS
44 D1:BD37 ld a, 19
45 D1:BD37 ld (curcol), a
46 D1:BD37 ld hl, cmdZs
47 D1:BD37 call _PutS
48 D1:BD37 call _NewLine
49 D1:BD37 #endmacro
50 D1:BD37 - - - -
51 D1:BD37 AF 32 96 05
D0 21 94 B7
D1 CD C0 07
02 3E 09 32
96 05 D0 21
AD B7 D1 CD
C0 07 02 3E
13 32 96 05
D0 21 A4 B8
D1 CD C0 07
02 CD F0 07
02 - - - fshcmdHELPmRow3(fshcmdEXIT, fshcmdSET, fshcmdCOPY)
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\HELP.asm"
52 D1:BD64 AF 32 96 05
D0 21 B2 B9
D1 CD C0 07
02 3E 09 32
96 05 D0 21
C8 BA D1 CD
C0 07 02 3E
13 32 96 05
D0 21 F4 BA
D1 CD C0 07
02 CD F0 07
02 - - - fshcmdHELPmRow3(fshcmdMOVE, fshcmdCLS, fshcmdVAR)
53 D1:BD91 AF 32 96 05
D0 21 96 BB
D1 CD C0 07
02 3E 09 32
96 05 D0 21
06 BC D1 CD
C0 07 02 3E
13 32 96 05
D0 21 54 BC
D1 CD C0 07
02 CD F0 07
02 - - - fshcmdHELPmRow3(fshcmdVARS, fshcmdSLEEP, fshcmdINFO)
54 D1:BDBE AF 32 96 05
D0 21 F6 BC
D1 CD C0 07
02 3E 09 32
96 05 D0 21
2A BE D1 CD
C0 07 02 CD
F0 07 02 - fshcmdHELPmRow2(fshcmdHELP, fshcmdMAN)
55 D1:BDDD - - - - ; Extention Point
56 D1:BDDD - - - -
57 D1:BDDD CD F0 07 02 call _NewLine
58 D1:BDE1 21 05 BE D1 ld hl, fshcmdHELPfLine2
59 D1:BDE5 CD C0 07 02 call _PutS
60 D1:BDE9 CD F0 07 02 call _NewLine
61 D1:BDED C3 DB A8 D1 jp Fin
62 D1:BDF1 - - - -
63 D1:BDF1 41 76 61 69
6C 61 62 6C
65 20 43 6F
6D 6D 61 6E
64 73 3A 00 fshcmdHELPfLine1: .db "Available Commands:", 0
64 D1:BE05 54 79 70 65
20 27 4D 41
4E 27 20 61
6E 64 20 63
6F 6D 6D 61
6E 64 20 66
6F 72 20 6D
6F 72 65 20
69 6E 66 6F
00 - - - fshcmdHELPfLine2: .db "Type 'MAN' and command for more info", 0
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommands.inc"
11 D1:BE2A - - - - #include "includes/FshCommands/MAN.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\MAN.asm"
1 D1:BE2A 4D 41 4E 00 fshcmdMAN: .db "MAN", 0
2 D1:BE2E 22 - - - fshcmdMANo: .db $22
3 D1:BE2F 44 69 73 70
6C 61 79 73
20 4D 41 4E
20 74 65 78
74 20 66 6F
72 20 63 6F
6D 6D 61 6E
64 00 - - fshcmdMANm: .db "Displays MAN text for command", 0
4 D1:BE4D 4D 41 4E 20
3C 63 6F 6D
6D 61 6E 64
3E 00 - - fshcmdMANu: .db "MAN <command>", 0
5 D1:BE5B - - - - fshcmdMANf:
6 D1:BE5B - - - - fshcmdMANfCheckArgs:
7 D1:BE5B 21 CD EA D0 ld hl, FshCmdArgFlags
8 D1:BE5F CB 46 - - bit 0, (hl)
9 D1:BE61 28 10 - - jr z, fshcmdMANfArg0Get
10 D1:BE63 CB 4E - - bit 1, (hl)
11 D1:BE65 28 24 - - jr z, fshcmdMANfExe
12 D1:BE67 21 C0 B2 D1 ld hl, ErrUsageo
13 D1:BE6B CD 2B B2 D1 call ErrSet
14 D1:BE6F CD DE B1 D1 call ErrCatch
15 D1:BE73 - - - - fshcmdMANfArg0Get:
16 D1:BE73 21 08 BF D1 ld hl, fshcmdMANfPrompt
17 D1:BE77 CD 89 AA D1 call printprompt
18 D1:BE7B - - - -
19 D1:BE7B 21 A8 EA D0 ld hl, FshCmdArg0
20 D1:BE7F 11 08 00 00 ld de, FshCmdCmdSize
21 D1:BE83 CD 77 AC D1 call inputstr
22 D1:BE87 CD F0 07 02 call _NewLine
23 D1:BE8B - - - -
24 D1:BE8B - - - - fshcmdMANfExe:
25 D1:BE8B 21 A8 EA D0 ld hl, FshCmdArg0
26 D1:BE8F 11 9F EA D0 ld de, FshCmd
27 D1:BE93 CD 4E AB D1 call strcpy
28 D1:BE97 - - - -
29 D1:BE97 21 F7 BE D1 ld hl, fshcmdMANfPrefix
30 D1:BE9B CD C0 07 02 call _PutS
31 D1:BE9F - - - -
32 D1:BE9F 21 9F EA D0 ld hl, FshCmd
33 D1:BEA3 CD C0 07 02 call _PutS
34 D1:BEA7 CD F0 07 02 call _NewLine
35 D1:BEAB CD F0 07 02 call _NewLine
36 D1:BEAF - - - -
37 D1:BEAF 21 9F EA D0 ld hl, FshCmd
38 D1:BEB3 CD 79 B4 D1 call manroute
39 D1:BEB7 11 00 00 00 ld de, $00
40 D1:BEBB CD 6D A9 D1 call cpHLDE
41 D1:BEBF CA DF A8 D1 jp z, Err
42 D1:BEC3 - - - -
43 D1:BEC3 CD C0 07 02 call _PutS
44 D1:BEC7 CD F0 07 02 call _NewLine
45 D1:BECB CD F0 07 02 call _NewLine
46 D1:BECF - - - -
47 D1:BECF 21 00 BF D1 ld hl, fshcmdMANfUsage
48 D1:BED3 CD C0 07 02 call _PutS
49 D1:BED7 - - - -
50 D1:BED7 21 9F EA D0 ld hl, FshCmd
51 D1:BEDB CD 8F B4 D1 call manrouteu
52 D1:BEDF 11 00 00 00 ld de, $00
53 D1:BEE3 CD 6D A9 D1 call cpHLDE
54 D1:BEE7 CA DF A8 D1 jp z, Err
55 D1:BEEB CD C0 07 02 call _PutS
56 D1:BEEF CD F0 07 02 call _NewLine
57 D1:BEF3 - - - -
58 D1:BEF3 C3 DB A8 D1 jp Fin
59 D1:BEF7 - - - -
60 D1:BEF7 4D 41 4E 2D
44 42 DF 20
00 - - - fshcmdMANfPrefix: .db "MAN-DB", $DF, ' ', 0
61 D1:BF00 55 73 61 67
65 3A 20 00 fshcmdMANfUsage: .db "Usage: ",0
62 D1:BF08 43 6F 6D 6D
61 6E 64 3D
20 00 - - fshcmdMANfPrompt: .db "Command= ", 0
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommands.inc"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommand.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\Command.asm"
31 D1:BF12 - - - - #include "includes/CryptoCommands/CryptoCommand.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\CryptoCommands\CryptoCommand.asm"
1 D1:BF12 - - - - cryptocmddecode:
2 D1:BF12 E5 D5 11 5C
BF D1 CD 3B
AB D1 21 60
BF D1 D1 CC
CB A9 D1 E1 decodecmdopt(cryptocmdROT, cryptocmdROTo)
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\CryptoCommands\CryptoCommand.asm"
3 D1:BF26 C9 - - - ret
4 D1:BF27 - - - -
5 D1:BF27 - - - - cryptocmdroute:
6 D1:BF27 C1 - - - pop bc
7 D1:BF28 11 60 BF D1
CD C3 A9 D1
CA A4 BF D1 routeoptjp(cryptocmdROTo, cryptocmdROTf)
8 D1:BF34 C5 - - - push bc
9 D1:BF35 C9 - - - ret
10 D1:BF36 - - - -
11 D1:BF36 - - - - cryptocmdmanroute:
12 D1:BF36 C1 - - - pop bc
13 D1:BF37 11 5C BF D1
CD 3B AB D1
11 61 BF D1
CA 8C B4 D1 routestrjp(cryptocmdROT, cryptocmdROTm)
14 D1:BF47 C5 - - - push bc
15 D1:BF48 C9 - - - ret
16 D1:BF49 - - - -
17 D1:BF49 - - - - cryptocmdmanrouteu:
18 D1:BF49 C1 - - - pop bc
19 D1:BF4A 11 5C BF D1
CD 3B AB D1
11 97 BF D1
CA A2 B4 D1 routeustrjp(cryptocmdROT, cryptocmdROTu)
20 D1:BF5A C5 - - - push bc
21 D1:BF5B C9 - - - ret
22 D1:BF5C - - - -
23 D1:BF5C - - - - #include "includes/CryptoCommands/CryptoCommands.inc"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\CryptoCommands\CryptoCommands.inc"
1 D1:BF5C - - - - #include "includes/CryptoCommands/ROT.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\CryptoCommands\ROT.asm"
1 D1:BF5C 52 4F 54 00 cryptocmdROT: .db "ROT", 0
2 D1:BF60 40 - - - cryptocmdROTo: .db $40
3 D1:BF61 52 4F 54 20
43 79 70 68
65 72 2C 20
72 6F 74 61
74 65 73 20
74 68 65 20
61 6C 70 68
61 62 65 74
20 61 6E 64
20 65 6E 63
6F 64 65 73
20 61 20 73
74 72 69 6E
67 00 - - cryptocmdROTm: .db "ROT Cypher, rotates the alphabet and encodes a string", 0
4 D1:BF97 52 4F 54 20
3C 73 68 69
66 74 23 3E
00 - - - cryptocmdROTu: .db "ROT <shift#>", 0
5 D1:BFA4 - - - - cryptocmdROTf:
6 D1:BFA4 - - - - cryptocmdROTfArg0:
7 D1:BFA4 21 CD EA D0 ld hl, FshCmdArgFlags
8 D1:BFA8 CB 4E - - bit 1, (hl)
9 D1:BFAA 20 32 - - jr nz, cryptocmdROTfArg1
10 D1:BFAC CB 46 - - bit 0, (hl)
11 D1:BFAE 28 0C - - jr z, cryptocmdROTfArg0Get
12 D1:BFB0 21 C0 B2 D1 ld hl, ErrUsageo
13 D1:BFB4 CD 2B B2 D1 call ErrSet
14 D1:BFB8 CD DE B1 D1 call ErrCatch
15 D1:BFBC - - - - cryptocmdROTfArg0Get:
16 D1:BFBC 21 35 C0 D1 ld hl, cryptocmdROTfDShift
17 D1:BFC0 CD 89 AA D1 call printprompt
18 D1:BFC4 21 A8 EA D0 ld hl, FshCmdArg0
19 D1:BFC8 11 03 00 00 ld de, 3
20 D1:BFCC CD AF AE D1 call inputnumstr
21 D1:BFD0 CD C5 AB D1 call strtow
22 D1:BFD4 11 A8 EA D0 ld de, FshCmdArg0
23 D1:BFD8 EB - - - ex de, hl
24 D1:BFD9 73 - - - ld (hl), e
25 D1:BFDA CD F0 07 02 call _NewLine
26 D1:BFDE - - - - cryptocmdROTfArg1:
27 D1:BFDE 18 24 - - jr cryptocmdROTfArg1Get
28 D1:BFE0 21 B1 EA D0 ld hl, FshCmdArg1
29 D1:BFE4 11 CF EA D0 ld de, FshScratch
30 D1:BFE8 CD 4E AB D1 call strcpy
31 D1:BFEC 21 CD EA D0 ld hl, FshCmdArgFlags
32 D1:BFF0 CB 5E - - bit 3, (hl)
33 D1:BFF2 28 28 - - jr z, cryptocmdROTfExe
34 D1:BFF4 CB 56 - - bit 2, (hl)
35 D1:BFF6 28 0C - - jr z, cryptocmdROTfArg1Get
36 D1:BFF8 21 C0 B2 D1 ld hl, ErrUsageo
37 D1:BFFC CD 2B B2 D1 call ErrSet
38 D1:C000 CD DE B1 D1 call ErrCatch
39 D1:C004 - - - - cryptocmdROTfArg1Get:
40 D1:C004 21 3D C0 D1 ld hl, cryptocmdROTfDMessage
41 D1:C008 CD 89 AA D1 call printprompt
42 D1:C00C 21 CF EA D0 ld hl, FshScratch
43 D1:C010 11 10 00 00 ld de, FshScratchSize - 4
44 D1:C014 CD 77 AC D1 call inputstr
45 D1:C018 CD F0 07 02 call _NewLine
46 D1:C01C - - - - cryptocmdROTfExe:
47 D1:C01C 21 A8 EA D0 ld hl, FshCmdArg0
48 D1:C020 7E - - - ld a, (hl)
49 D1:C021 21 CF EA D0 ld hl, FshScratch
50 D1:C025 CD F6 B3 D1 call rotletencrypt
51 D1:C029 CD C0 07 02 call _PutS
52 D1:C02D CD F0 07 02 call _NewLine
53 D1:C031 C3 DB A8 D1 jp Fin
54 D1:C035 - - - -
55 D1:C035 53 68 69 66
74 3D 20 00 cryptocmdROTfDShift: .db "Shift= ", 0
56 D1:C03D 4D 65 73 73
61 67 65 3D
20 00 - - cryptocmdROTfDMessage: .db "Message= ", 0
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\CryptoCommands\CryptoCommands.inc"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\CryptoCommands\CryptoCommand.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\Command.asm"
Listing for file "FSHa.asm"
77 D1:C047 - - - -
78 D1:C047 - - - - .end