fsh-shell/bin/FSHa.lst

3557 lines
146 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 9C B3 D1 CALL drawstatusbar
17 D1:A899 - - - -
18 D1:A899 CD D1 B1 D1 CALL fshvarreset
19 D1:A89D - - - -
20 D1:A89D CD 77 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 C2 AF D1 CALL commandfill
26 D1:A8A7 - - - -
27 D1:A8A7 21 2B A9 D1 LD HL, PS1
28 D1:A8AB CD 98 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 86 AC D1 CALL inputstr
33 D1:A8BB - - - -
34 D1:A8BB 21 9F EA D0 LD HL, FshCmd
35 D1:A8BF CD DD 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 BF 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 C8 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 FC 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 - - - - ;;modHL
75 D1:A999 - - - - ;;H % L => H
76 D1:A999 - - - - ;;Inputs:
77 D1:A999 - - - - ;; H:
78 D1:A999 - - - - ;; L:
79 D1:A999 - - - - modHL:
80 D1:A999 C5 - - - push bc
81 D1:A99A 44 - - - ld b, h
82 D1:A99B 3E 00 - - ld a, 0
83 D1:A99D - - - - modHLLoop:
84 D1:A99D 3C - - - inc a
85 D1:A99E BD - - - cp a, l
86 D1:A99F 20 02 - - jr nz, modHLLoopEnd
87 D1:A9A1 3E 00 - - ld a, 0
88 D1:A9A3 - - - - modHLLoopEnd:
89 D1:A9A3 10 F8 - - djnz modHLLoop
90 D1:A9A5 67 - - - ld h, a
91 D1:A9A6 C1 - - - pop bc
92 D1:A9A7 C9 - - - ret
93 D1:A9A8 - - - -
94 D1:A9A8 - - - -
95 D1:A9A8 - - - -
96 D1:A9A8 - - - - ;;mul32By8
97 D1:A9A8 - - - - ;;Performs an unsigned multiplication of DEHL and A.
98 D1:A9A8 - - - - ;;Outputs:
99 D1:A9A8 - - - - ;; DEHL: product of DEHL and A
100 D1:A9A8 - - - - mul32By8:
101 D1:A9A8 C5 DD E5 - push bc \ push ix
102 D1:A9AB DD 2E 08 - ld ixl, 8
103 D1:A9AE D5 - - - push de
104 D1:A9AF E5 - - - push hl
105 D1:A9B0 21 00 00 00 ld hl, 0
106 D1:A9B4 54 - - - ld d, h
107 D1:A9B5 5D - - - ld e, l
108 D1:A9B6 - - - - mul32by8loop:
109 D1:A9B6 29 - - - add hl, hl
110 D1:A9B7 CB 13 - - rl e
111 D1:A9B9 CB 12 - - rl d
112 D1:A9BB 17 - - - rla
113 D1:A9BC 30 0A - - jr nc, mul32by8noAdd
114 D1:A9BE C1 - - - pop bc
115 D1:A9BF 09 - - - add hl, bc
116 D1:A9C0 E3 - - - ex (sp), hl
117 D1:A9C1 E5 - - - push hl
118 D1:A9C2 ED 5A - - adc hl, de
119 D1:A9C4 D1 - - - pop de
120 D1:A9C5 EB - - - ex de, hl
121 D1:A9C6 E3 - - - ex (sp), hl
122 D1:A9C7 C5 - - - push bc
123 D1:A9C8 - - - - mul32by8noAdd:
124 D1:A9C8 DD 2D - - dec ixl
125 D1:A9CA 20 EA - - jr nz, mul32by8loop
126 D1:A9CC C1 - - - pop bc
127 D1:A9CD C1 - - - pop bc
128 D1:A9CE DD E1 C1 - pop ix \ pop bc
129 D1:A9D1 C9 - - - ret
130 D1:A9D2 - - - -
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
2 D1:A9D2 - - - - #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:A9D2 - - - - ;;bytecmp
2 D1:A9D2 - - - - ;;Determines if two bytes are equal.
3 D1:A9D2 - - - - ;;Inputs:
4 D1:A9D2 - - - - ;; HL: Byte pointer
5 D1:A9D2 - - - - ;; DE: Byte pointer
6 D1:A9D2 - - - - ;;Outputs:
7 D1:A9D2 - - - - ;; Z: Set if equal, reset if not equal
8 D1:A9D2 - - - - bytecmp:
9 D1:A9D2 E5 - - - push hl
10 D1:A9D3 D5 - - - push de
11 D1:A9D4 1A - - - ld a, (de)
12 D1:A9D5 B7 - - - or a
13 D1:A9D6 BE - - - cp (hl)
14 D1:A9D7 D1 - - - pop de
15 D1:A9D8 E1 - - - pop hl
16 D1:A9D9 C9 - - - ret
17 D1:A9DA - - - -
18 D1:A9DA - - - - ;;bytecpy
19 D1:A9DA - - - - ;; Copies a byte.
20 D1:A9DA - - - - ;;Inputs:
21 D1:A9DA - - - - ;; HL: Byte pointer
22 D1:A9DA - - - - ;; DE: Destination
23 D1:A9DA - - - - bytecpy:
24 D1:A9DA D5 - - - push de
25 D1:A9DB E5 - - - push hl
26 D1:A9DC EB - - - ex de, hl
27 D1:A9DD 1A - - - ld a, (de)
28 D1:A9DE 77 - - - ld (hl), a
29 D1:A9DF E1 - - - pop hl
30 D1:A9E0 D1 - - - pop de
31 D1:A9E1 C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
3 D1:A9E2 - - - - #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:A9E2 - - - - ;;memset
2 D1:A9E2 - - - - ;;Fills B amount of bytes from hl with a
3 D1:A9E2 - - - - ;;Inputs:
4 D1:A9E2 - - - - ;; HL: start
5 D1:A9E2 - - - - ;; B: how many bytes
6 D1:A9E2 - - - - ;; A: Byte
7 D1:A9E2 - - - - memset:
8 D1:A9E2 E5 - - - push hl
9 D1:A9E3 C5 - - - push bc
10 D1:A9E4 - - - - memsetLoop:
11 D1:A9E4 77 - - - ld (hl), a
12 D1:A9E5 23 - - - inc hl
13 D1:A9E6 10 FC - - djnz memsetLoop
14 D1:A9E8 C1 - - - pop bc
15 D1:A9E9 E1 - - - pop hl
16 D1:A9EA C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
4 D1:A9EB - - - - #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:A9EB - - - - #include "includes/tables/CSC.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\tables\CSC.asm"
1 D1:A9EB - - - - charMapCSC:
2 D1:A9EB 22 57 52 4D
48 FF FF - .DB "\"WRMH", $FF, $FF
3 D1:A9F2 3F 5B 56 51
4C 47 FF FF .DB Lquestion, Ltheta, "VQLG", $FF, $FF
4 D1:A9FA 3A 5A 55 50
4B 46 43 FF .DB ":ZUPKFC", $FF
5 D1:AA02 20 59 54 4F
4A 45 42 FF .DB " YTOJEB", $FF
6 D1:AA0A FF 58 53 4E
49 44 41 - .DB $FF, "XSNIDA"
7 D1:AA11 - - - -
8 D1:AA11 - - - - numsymMapCSC
9 D1:AA11 2B 2D 2A 2F
5E FF FF - .DB "+-*/^", $FF, $FF
10 D1:AA18 5F 33 36 39
29 C1 5D FF .DB "_369)", $C1, "]", $FF
11 D1:AA20 2E 32 35 38
28 7B 7D 3B .DB ".258({};"
12 D1:AA28 30 31 34 37
2C 20 3C 3E
7C FF - - .DB "0147, <>|", $FF
13 D1:AA32 05 21 40 23
25 26 - - .DB $05, "!@#%&"
14 D1:AA38 - - - -
15 D1:AA38 - - - - numMapCSC
16 D1:AA38 FF FF FF FF
FF FF FF - .DB $FF, $FF, $FF, $FF, $FF, $FF, $FF
17 D1:AA3F FF 33 36 39
FF FF FF FF .DB $FF, "369", $FF, $FF, $FF, $FF
18 D1:AA47 FF 32 35 38
FF FF FF FF .DB $FF, "258", $FF, $FF, $FF, $FF
19 D1:AA4F 30 31 34 37
FF FF FF FF
FF FF - - .DB "0147", $FF, $FF, $FF, $FF, $FF, $FF
20 D1:AA59 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:AA5F - - - - ;;chartoascii
3 D1:AA5F - - - - ;;Converts a char to "ascii"
4 D1:AA5F - - - - ;;Inputs:
5 D1:AA5F - - - - ;; A: char code (csc)
6 D1:AA5F - - - - ;;Outputs:
7 D1:AA5F - - - - ;; A: ascii char
8 D1:AA5F - - - - chartoascii:
9 D1:AA5F E5 - - - push hl
10 D1:AA60 21 00 00 00 ld hl, 0
11 D1:AA64 26 00 - - ld h, 0
12 D1:AA66 6F - - - ld l, a
13 D1:AA67 11 EB A9 D1 ld de, charMapCSC
14 D1:AA6B 19 - - - add hl, de
15 D1:AA6C 7E - - - ld a, (hl)
16 D1:AA6D E1 - - - pop hl
17 D1:AA6E C9 - - - ret
18 D1:AA6F - - - -
19 D1:AA6F - - - - ;;Charnumtoascii
20 D1:AA6F - - - - ;;Converts a char to "ascii"
21 D1:AA6F - - - - ;;Inputs:
22 D1:AA6F - - - - ;; A: char code (csc)
23 D1:AA6F - - - - ;;Outputs:
24 D1:AA6F - - - - ;; A: ascii char
25 D1:AA6F - - - - charnumtoascii:
26 D1:AA6F E5 - - - push hl
27 D1:AA70 21 00 00 00 ld hl, 0
28 D1:AA74 26 00 - - ld h, 0
29 D1:AA76 6F - - - ld l, a
30 D1:AA77 11 38 AA D1 ld de, numMapCSC
31 D1:AA7B 19 - - - add hl, de
32 D1:AA7C 7E - - - ld a, (hl)
33 D1:AA7D E1 - - - pop hl
34 D1:AA7E C9 - - - ret
35 D1:AA7F - - - -
36 D1:AA7F - - - - ;;charnumsymtoascii
37 D1:AA7F - - - - ;;Converts a char to "ascii"
38 D1:AA7F - - - - ;;Inputs:
39 D1:AA7F - - - - ;; A: char code (csc)
40 D1:AA7F - - - - ;;Outputs:
41 D1:AA7F - - - - ;; A: ascii char
42 D1:AA7F - - - - charnumsymtoascii:
43 D1:AA7F E5 - - - push hl
44 D1:AA80 21 00 00 00 ld hl, 0
45 D1:AA84 26 00 - - ld h, 0
46 D1:AA86 6F - - - ld l, a
47 D1:AA87 11 11 AA D1 ld de, numsymMapCSC
48 D1:AA8B 19 - - - add hl, de
49 D1:AA8C 7E - - - ld a, (hl)
50 D1:AA8D E1 - - - pop hl
51 D1:AA8E C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
5 D1:AA8F - - - - #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:AA8F - - - - ;;cursorcharunderreset
2 D1:AA8F - - - - ;;Sets curUnder to 0
3 D1:AA8F - - - - cursorcurunderreset:
4 D1:AA8F E5 - - - push hl
5 D1:AA90 21 99 05 D0 ld hl, curUnder
6 D1:AA94 36 20 - - ld (hl), ' '
7 D1:AA96 E1 - - - pop hl
8 D1:AA97 C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
6 D1:AA98 - - - - #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:AA98 - - - - ;;printprompt
2 D1:AA98 - - - - ;;Sets curcol to 0 and prints prompt
3 D1:AA98 - - - - ;;Inputs:
4 D1:AA98 - - - - ;; HL: Prompt String Location
5 D1:AA98 - - - - printprompt:
6 D1:AA98 E5 - - - push hl
7 D1:AA99 AF - - - xor a
8 D1:AA9A 32 96 05 D0 ld (CurCol), a
9 D1:AA9E CD C0 07 02 call _PutS
10 D1:AAA2 E1 - - - pop hl
11 D1:AAA3 C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
7 D1:AAA4 - - - - #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:AAA4 - - - - ;;drawpixel
2 D1:AAA4 - - - - ;;Sets a pixel to specified color (565)
3 D1:AAA4 - - - - ;;Inputs:
4 D1:AAA4 - - - - ;; HL: color
5 D1:AAA4 - - - - ;; DE: vRam location
6 D1:AAA4 - - - - drawpixel:
7 D1:AAA4 E5 - - - push hl
8 D1:AAA5 D5 - - - push de
9 D1:AAA6 EB - - - ex de, hl
10 D1:AAA7 73 - - - ld (hl), e
11 D1:AAA8 23 - - - inc hl
12 D1:AAA9 72 - - - ld (hl), d
13 D1:AAAA D1 - - - pop de
14 D1:AAAB E1 - - - pop hl
15 D1:AAAC C9 - - - ret
16 D1:AAAD - - - -
17 D1:AAAD - - - - ;;drawpixelxy
18 D1:AAAD - - - - ;;Sets a pixel to specified color
19 D1:AAAD - - - - ;;Inputs:
20 D1:AAAD - - - - ;; HL: color
21 D1:AAAD - - - - ;; DE: x
22 D1:AAAD - - - - ;; A: y
23 D1:AAAD - - - - drawpixelxy
24 D1:AAAD D5 - - - push de
25 D1:AAAE E5 - - - push hl
26 D1:AAAF EB - - - ex de, hl
27 D1:AAB0 29 - - - add hl, hl
28 D1:AAB1 E5 - - - push hl
29 D1:AAB2 21 80 02 00 ld hl, 640
30 D1:AAB6 CD 87 A9 D1 call mulAbyHL
31 D1:AABA EB - - - ex de, hl
32 D1:AABB E1 - - - pop hl
33 D1:AABC 19 - - - add hl, de
34 D1:AABD 11 00 00 D4 ld de, vRam
35 D1:AAC1 19 - - - add hl, de
36 D1:AAC2 EB - - - ex de, hl
37 D1:AAC3 E1 - - - pop hl
38 D1:AAC4 CD A4 AA D1 call drawpixel
39 D1:AAC8 D1 - - - pop de
40 D1:AAC9 C9 - - - ret
41 D1:AACA - - - -
42 D1:AACA - - - - ;;drawrow
43 D1:AACA - - - - ;;Draws a row on lcd
44 D1:AACA - - - - ;;Inputs:
45 D1:AACA - - - - ;; A: y
46 D1:AACA - - - - ;; HL: color
47 D1:AACA - - - - drawrow:
48 D1:AACA E5 - - - push hl
49 D1:AACB C5 - - - push bc
50 D1:AACC E5 - - - push hl
51 D1:AACD 21 E0 01 00 ld hl, lcdHeight * 2
52 D1:AAD1 CD 87 A9 D1 call mulAbyHL
53 D1:AAD5 11 00 00 D4 ld de, vRam
54 D1:AAD9 19 - - - add hl, de
55 D1:AADA EB - - - ex de, hl
56 D1:AADB E1 - - - pop hl
57 D1:AADC 01 40 01 00 ld bc, lcdWidth
58 D1:AAE0 - - - - drawrowLoop:
59 D1:AAE0 CD A4 AA D1 call drawpixel
60 D1:AAE4 13 - - - inc de
61 D1:AAE5 13 - - - inc de
62 D1:AAE6 0B - - - dec bc
63 D1:AAE7 E5 - - - push hl
64 D1:AAE8 21 00 00 00 ld hl, 0
65 D1:AAEC CD 72 A9 D1 call cpHLBC
66 D1:AAF0 E1 - - - pop hl
67 D1:AAF1 20 ED - - jr nz, drawrowLoop
68 D1:AAF3 C1 - - - pop bc
69 D1:AAF4 E1 - - - pop hl
70 D1:AAF5 C9 - - - ret
71 D1:AAF6 - - - -
72 D1:AAF6 - - - - ;;drawbar
73 D1:AAF6 - - - - ;;Loops drawing row
74 D1:AAF6 - - - - ;;Inputs:
75 D1:AAF6 - - - - ;; A: y
76 D1:AAF6 - - - - ;; [B]C: height
77 D1:AAF6 - - - - ;; HL: color
78 D1:AAF6 - - - - drawbar:
79 D1:AAF6 C5 - - - push bc
80 D1:AAF7 - - - - drawbarLoop:
81 D1:AAF7 CD CA AA D1 call drawrow
82 D1:AAFB 0B - - - dec bc
83 D1:AAFC 3C - - - inc a
84 D1:AAFD E5 - - - push hl
85 D1:AAFE 21 00 00 00 ld hl, 0
86 D1:AB02 CD 72 A9 D1 call cpHLBC
87 D1:AB06 E1 - - - pop hl
88 D1:AB07 20 EE - - jr nz, drawbarLoop
89 D1:AB09 C1 - - - pop bc
90 D1:AB0A C9 - - - ret
91 D1:AB0B - - - -
92 D1:AB0B - - - - ;;drawrectfilled
93 D1:AB0B - - - - ;;Draws a rectangle from coordinates (Slow)
94 D1:AB0B - - - - ;;Inputs:
95 D1:AB0B - - - - ;; DE: x
96 D1:AB0B - - - - ;; C: y
97 D1:AB0B - - - - ;; HL: width
98 D1:AB0B - - - - ;; A: height
99 D1:AB0B - - - - ;; IXH+IXL: color
100 D1:AB0B - - - - drawrectfilled:
101 D1:AB0B 19 - - - add hl, de
102 D1:AB0C 81 - - - add a, c
103 D1:AB0D 47 - - - ld b, a
104 D1:AB0E - - - - drawrectfilledLoopY:
105 D1:AB0E D5 - - - push de
106 D1:AB0F - - - - drawrectfilledLoopX:
107 D1:AB0F E5 - - - push hl
108 D1:AB10 C5 - - - push bc
109 D1:AB11 EB - - - ex de, hl
110 D1:AB12 DD 54 - - ld d, ixh
111 D1:AB14 DD 5D - - ld e, ixl
112 D1:AB16 EB - - - ex de, hl
113 D1:AB17 79 - - - ld a, c
114 D1:AB18 CD AD AA D1 call drawpixelxy
115 D1:AB1C C1 - - - pop bc
116 D1:AB1D E1 - - - pop hl
117 D1:AB1E 13 - - - inc de
118 D1:AB1F CD 6D A9 D1 call cpHLDE
119 D1:AB23 20 EA - - jr nz, drawrectfilledLoopX
120 D1:AB25 D1 - - - pop de
121 D1:AB26 0C - - - inc c
122 D1:AB27 78 - - - ld a, b
123 D1:AB28 B9 - - - cp c
124 D1:AB29 20 E3 - - jr nz, drawrectfilledLoopY
125 D1:AB2B C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
8 D1:AB2C - - - - #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:AB2C - - - - ;;array2d
2 D1:AB2C - - - - ;;gets the address of 2d array
3 D1:AB2C - - - - ;;Inputs:
4 D1:AB2C - - - - ;; H: y
5 D1:AB2C - - - - ;; L: x width
6 D1:AB2C - - - - ;; B: x
7 D1:AB2C - - - - ;; DE: Array start
8 D1:AB2C - - - - ;;Outputs:
9 D1:AB2C - - - - ;; DE: Array loc address
10 D1:AB2C - - - - array2d:
11 D1:AB2C E5 - - - push hl
12 D1:AB2D ED 6C - - mlt hl
13 D1:AB2F 19 - - - add hl, de
14 D1:AB30 11 00 00 00 ld de, 0
15 D1:AB34 58 - - - ld e, b
16 D1:AB35 19 - - - add hl, de
17 D1:AB36 EB - - - ex de, hl
18 D1:AB37 E1 - - - pop hl
19 D1:AB38 C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
9 D1:AB39 - - - -
10 D1:AB39 - - - - #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:AB39 - - - - ;;strlen
2 D1:AB39 - - - - ;;Determines the length of a zero delimited string.
3 D1:AB39 - - - - ;;Inputs:
4 D1:AB39 - - - - ;; HL: String pointer
5 D1:AB39 - - - - ;;Outputs:
6 D1:AB39 - - - - ;; BC: String length
7 D1:AB39 - - - - strlen:
8 D1:AB39 F5 - - - push af
9 D1:AB3A E5 - - - push hl
10 D1:AB3B AF - - - xor a
11 D1:AB3C 47 - - - ld b, a
12 D1:AB3D 4F - - - ld c, a
13 D1:AB3E ED B1 - - cpir
14 D1:AB40 - - - - ; bc = -bc
15 D1:AB40 AF 91 4F 9F
90 47 - - xor a \ sub c \ ld c, a \ sbc a, a \ sub b \ ld b, a
16 D1:AB46 0B - - - dec bc
17 D1:AB47 E1 - - - pop hl
18 D1:AB48 F1 - - - pop af
19 D1:AB49 C9 - - - ret
20 D1:AB4A - - - -
21 D1:AB4A - - - - ;;strcmp
22 D1:AB4A - - - - ;;Determines if two strings are equal, and checks alphabetical sort order.
23 D1:AB4A - - - - ;;Inputs:
24 D1:AB4A - - - - ;; HL: String pointer
25 D1:AB4A - - - - ;; DE: String pointer
26 D1:AB4A - - - - ;;Outputs:
27 D1:AB4A - - - - ;; Z: Set if equal, reset if not equal
28 D1:AB4A - - - - ;; C: Set if string HL is alphabetically earlier than string DE
29 D1:AB4A - - - - strcmp:
30 D1:AB4A E5 - - - push hl
31 D1:AB4B D5 - - - push de
32 D1:AB4C - - - - strcmpLoop:
33 D1:AB4C 1A - - - ld a, (de)
34 D1:AB4D B7 - - - or a
35 D1:AB4E 28 07 - - jr z, strCmpEnd
36 D1:AB50 BE - - - cp (hl)
37 D1:AB51 20 06 - - jr nz, strcmpExit
38 D1:AB53 23 - - - inc hl
39 D1:AB54 13 - - - inc de
40 D1:AB55 18 F5 - - jr strcmpLoop
41 D1:AB57 - - - - strcmpEnd:
42 D1:AB57 7E - - - ld a, (hl)
43 D1:AB58 B7 - - - or a
44 D1:AB59 - - - - strcmpExit:
45 D1:AB59 3F - - - ccf
46 D1:AB5A D1 - - - pop de
47 D1:AB5B E1 - - - pop hl
48 D1:AB5C C9 - - - ret
49 D1:AB5D - - - -
50 D1:AB5D - - - - ;;strcpy
51 D1:AB5D - - - - ;;Copies a string.
52 D1:AB5D - - - - ;;Inputs:
53 D1:AB5D - - - - ;; HL: String pointer
54 D1:AB5D - - - - ;; DE: Destination
55 D1:AB5D - - - - ;;Notes:
56 D1:AB5D - - - - ;; This will trample into undefined territory if you try to copy a string into some
57 D1:AB5D - - - - ;;allocated memory it won't fit in.
58 D1:AB5D - - - - strcpy:
59 D1:AB5D D5 - - - push de
60 D1:AB5E E5 - - - push hl
61 D1:AB5F EB - - - ex de, hl
62 D1:AB60 1A - - - _: ld a, (de)
63 D1:AB61 77 - - - ld (hl), a
64 D1:AB62 B7 - - - or a
65 D1:AB63 28 04 - - jr z, _
66 D1:AB65 23 13 - - inc hl \ inc de
67 D1:AB67 18 F7 - - jr -_
68 D1:AB69 E1 - - - _: pop hl
69 D1:AB6A D1 - - - pop de
70 D1:AB6B C9 - - - ret
71 D1:AB6C - - - -
72 D1:AB6C - - - - ;;strchr
73 D1:AB6C - - - - ;;Returns a pointer on the first occurence of a character in a string.
74 D1:AB6C - - - - ;;Inputs:
75 D1:AB6C - - - - ;; HL: Haystack
76 D1:AB6C - - - - ;; B: Needle
77 D1:AB6C - - - - ;;Outputs:
78 D1:AB6C - - - - ;; HL: Pointer to first occurence of character
79 D1:AB6C - - - - ;; Z: Set if character found
80 D1:AB6C - - - - ;; A: Destroyed
81 D1:AB6C - - - - strchr:
82 D1:AB6C - - - - strchrLoop:
83 D1:AB6C 7E - - - ld a, (hl)
84 D1:AB6D B7 - - - or a
85 D1:AB6E 28 05 - - jr z, strchrNoCharFound
86 D1:AB70 B8 - - - cp b
87 D1:AB71 C8 - - - ret z
88 D1:AB72 23 - - - inc hl
89 D1:AB73 18 F7 - - jr strchrLoop
90 D1:AB75 - - - - strchrNoCharFound:
91 D1:AB75 3C - - - inc a
92 D1:AB76 C9 - - - ret
93 D1:AB77 - - - -
94 D1:AB77 - - - - ;;strtob
95 D1:AB77 - - - - ;;Converts a string to a byte
96 D1:AB77 - - - - ;;Inputs:
97 D1:AB77 - - - - ;; HL: string pointer
98 D1:AB77 - - - - ;;Outputs:
99 D1:AB77 - - - - ;; A: byte
100 D1:AB77 - - - - strtob:
101 D1:AB77 C5 - - - push bc
102 D1:AB78 D5 - - - push de
103 D1:AB79 0E 00 - - ld c, 0
104 D1:AB7B - - - - strtobNumFind:
105 D1:AB7B 7E - - - ld a, (hl)
106 D1:AB7C FE 00 - - cp $00
107 D1:AB7E CA D0 AB D1 jp z, strtobEXIT
108 D1:AB82 0E 00 - - ld c, 0
109 D1:AB84 D6 31 - - sub '1'
110 D1:AB86 FE 3A - - cp '9' + 1
111 D1:AB88 38 03 - - jr c, strtobNumWhile
112 D1:AB8A 23 - - - inc hl
113 D1:AB8B 18 EE - - jr strtobNumFind
114 D1:AB8D - - - - strtobNumWhile:
115 D1:AB8D E5 - - - push hl
116 D1:AB8E - - - - strtobNumWhileLoop:
117 D1:AB8E 79 - - - ld a, c
118 D1:AB8F FE 03 - - cp 3
119 D1:AB91 D2 A2 AB D1 jp nc, strtobConvert
120 D1:AB95 7E - - - ld a, (hl)
121 D1:AB96 D6 2F - - sub '0' - 1
122 D1:AB98 38 08 - - jr c, strtobConvert
123 D1:AB9A FE 3A - - cp '9' + 1
124 D1:AB9C 30 04 - - jr nc, strtobConvert
125 D1:AB9E 23 - - - inc hl
126 D1:AB9F 0C - - - inc c
127 D1:ABA0 18 EC - - jr strtobNumWhileLoop
128 D1:ABA2 - - - - strtobConvert:
129 D1:ABA2 2B - - - dec hl
130 D1:ABA3 7E - - - ld a, (hl)
131 D1:ABA4 D6 30 - - sub '0'
132 D1:ABA6 4F - - - ld c, a
133 D1:ABA7 2B - - - dec hl
134 D1:ABA8 D1 - - - pop de
135 D1:ABA9 CD 6D A9 D1 call cpHLDE
136 D1:ABAD DA D0 AB D1 jp c, strtobExit
137 D1:ABB1 7E - - - ld a, (hl)
138 D1:ABB2 D6 30 - - sub '0'
139 D1:ABB4 06 0A - - ld b, 10
140 D1:ABB6 CD 7F A9 D1 call mulAbyB
141 D1:ABBA 81 - - - add a, c
142 D1:ABBB 4F - - - ld c, a
143 D1:ABBC 2B - - - dec hl
144 D1:ABBD CD 6D A9 D1 call cpHLDE
145 D1:ABC1 DA D0 AB D1 jp c, strtobExit
146 D1:ABC5 7E - - - ld a, (hl)
147 D1:ABC6 D6 30 - - sub '0'
148 D1:ABC8 06 64 - - ld b, 100
149 D1:ABCA CD 7F A9 D1 call mulAbyB
150 D1:ABCE 81 - - - add a, c
151 D1:ABCF 4F - - - ld c, a
152 D1:ABD0 - - - - strtobExit:
153 D1:ABD0 79 - - - ld a, c
154 D1:ABD1 D1 - - - pop de
155 D1:ABD2 C1 - - - pop bc
156 D1:ABD3 C9 - - - ret
157 D1:ABD4 - - - -
158 D1:ABD4 - - - - ;;strtow
159 D1:ABD4 - - - - ;;Converts a string to a byte
160 D1:ABD4 - - - - ;;Inputs:
161 D1:ABD4 - - - - ;; HL: string pointer
162 D1:ABD4 - - - - ;;Outputs:
163 D1:ABD4 - - - - ;; HL: byte
164 D1:ABD4 - - - - strtow:
165 D1:ABD4 C5 - - - push bc
166 D1:ABD5 D5 - - - push de
167 D1:ABD6 01 00 00 00 ld bc, 0
168 D1:ABDA - - - - strtowNumFind:
169 D1:ABDA 7E - - - ld a, (hl)
170 D1:ABDB FE 00 - - cp $00
171 D1:ABDD CA 73 AC D1 jp z, strtowEXIT
172 D1:ABE1 0E 00 - - ld c, 0
173 D1:ABE3 D6 31 - - sub '1'
174 D1:ABE5 FE 3A - - cp '9' + 1
175 D1:ABE7 38 03 - - jr c, strtowNumWhile
176 D1:ABE9 23 - - - inc hl
177 D1:ABEA 18 EE - - jr strtowNumFind
178 D1:ABEC - - - - strtowNumWhile:
179 D1:ABEC E5 - - - push hl
180 D1:ABED - - - - strtowNumWhileLoop:
181 D1:ABED 79 - - - ld a, c
182 D1:ABEE FE 05 - - cp 5
183 D1:ABF0 D2 01 AC D1 jp nc, strtowConvert
184 D1:ABF4 7E - - - ld a, (hl)
185 D1:ABF5 D6 2F - - sub '0' - 1
186 D1:ABF7 38 08 - - jr c, strtowConvert
187 D1:ABF9 FE 3A - - cp '9' + 1
188 D1:ABFB 30 04 - - jr nc, strtowConvert
189 D1:ABFD 23 - - - inc hl
190 D1:ABFE 0C - - - inc c
191 D1:ABFF 18 EC - - jr strtowNumWhileLoop
192 D1:AC01 - - - - strtowConvert:
193 D1:AC01 01 00 00 00 ld bc, 0
194 D1:AC05 2B - - - dec hl
195 D1:AC06 7E - - - ld a, (hl)
196 D1:AC07 D6 30 - - sub '0'
197 D1:AC09 01 00 00 00 ld bc, 0
198 D1:AC0D 4F - - - ld c, a
199 D1:AC0E 2B - - - dec hl
200 D1:AC0F - - - -
201 D1:AC0F D1 - - - pop de
202 D1:AC10 CD 6D A9 D1 call cpHLDE
203 D1:AC14 DA 73 AC D1 jp c, strtowExit
204 D1:AC18 7E - - - ld a, (hl)
205 D1:AC19 D6 30 - - sub '0'
206 D1:AC1B E5 - - - push hl
207 D1:AC1C 21 0A 00 00 ld hl, 10
208 D1:AC20 CD 87 A9 D1 call mulAbyHL
209 D1:AC24 09 - - - add hl, bc
210 D1:AC25 44 - - - ld b, h
211 D1:AC26 4D - - - ld c, l
212 D1:AC27 E1 - - - pop hl
213 D1:AC28 2B - - - dec hl
214 D1:AC29 - - - -
215 D1:AC29 CD 6D A9 D1 call cpHLDE
216 D1:AC2D DA 73 AC D1 jp c, strtowExit
217 D1:AC31 7E - - - ld a, (hl)
218 D1:AC32 D6 30 - - sub '0'
219 D1:AC34 E5 - - - push hl
220 D1:AC35 21 64 00 00 ld hl, 100
221 D1:AC39 CD 87 A9 D1 call mulAbyHL
222 D1:AC3D 09 - - - add hl, bc
223 D1:AC3E 44 - - - ld b, h
224 D1:AC3F 4D - - - ld c, l
225 D1:AC40 E1 - - - pop hl
226 D1:AC41 2B - - - dec hl
227 D1:AC42 - - - -
228 D1:AC42 CD 6D A9 D1 call cpHLDE
229 D1:AC46 DA 73 AC D1 jp c, strtowExit
230 D1:AC4A 7E - - - ld a, (hl)
231 D1:AC4B D6 30 - - sub '0'
232 D1:AC4D E5 - - - push hl
233 D1:AC4E 21 E8 03 00 ld hl, 1000
234 D1:AC52 CD 87 A9 D1 call mulAbyHL
235 D1:AC56 09 - - - add hl, bc
236 D1:AC57 44 - - - ld b, h
237 D1:AC58 4D - - - ld c, l
238 D1:AC59 E1 - - - pop hl
239 D1:AC5A 2B - - - dec hl
240 D1:AC5B - - - -
241 D1:AC5B CD 6D A9 D1 call cpHLDE
242 D1:AC5F DA 73 AC D1 jp c, strtowExit
243 D1:AC63 7E - - - ld a, (hl)
244 D1:AC64 D6 30 - - sub '0'
245 D1:AC66 E5 - - - push hl
246 D1:AC67 21 10 27 00 ld hl, 10000
247 D1:AC6B CD 87 A9 D1 call mulAbyHL
248 D1:AC6F 09 - - - add hl, bc
249 D1:AC70 44 - - - ld b, h
250 D1:AC71 4D - - - ld c, l
251 D1:AC72 E1 - - - pop hl
252 D1:AC73 - - - -
253 D1:AC73 - - - - strtowExit:
254 D1:AC73 21 00 00 00 ld hl, 0
255 D1:AC77 60 - - - ld h, b
256 D1:AC78 69 - - - ld l, c
257 D1:AC79 D1 - - - pop de
258 D1:AC7A C1 - - - pop bc
259 D1:AC7B C9 - - - ret
260 D1:AC7C - - - -
261 D1:AC7C - - - - ;;toLower [Strings]
262 D1:AC7C - - - - ;;Converts every alpha character of a string to lowercase.
263 D1:AC7C - - - - ;;Inputs:
264 D1:AC7C - - - - ;; HL: Pointer to string
265 D1:AC7C - - - - ;;Notes:
266 D1:AC7C - - - - ;; This modifies the string in-place.
267 D1:AC7C - - - - ;toLower:
268 D1:AC7C - - - - ; push af \ push hl
269 D1:AC7C - - - - ; ld a, (hl)
270 D1:AC7C - - - - ; or a
271 D1:AC7C - - - - ; jr z, toLowerExit
272 D1:AC7C - - - - ; call isAlphaNum
273 D1:AC7C - - - - ; jr nc, toLowerNotUpperAlpha
274 D1:AC7C - - - - ; cp 'a'
275 D1:AC7C - - - - ; jr nc, toLowerNotUpperAlpha
276 D1:AC7C - - - - ; add a, 'a' - 'A'
277 D1:AC7C - - - - ; ld (hl), a
278 D1:AC7C - - - - ;toLowerNotUpperAlpha:
279 D1:AC7C - - - - ; inc hl
280 D1:AC7C - - - - ; jr toLower + 2
281 D1:AC7C - - - - ;toLowerExit:
282 D1:AC7C - - - - ; pop hl \ pop af
283 D1:AC7C - - - - ; ret
284 D1:AC7C - - - -
285 D1:AC7C - - - - ;;toUpper [Strings]
286 D1:AC7C - - - - ;;Converts every alpha character of a string to uppercase.
287 D1:AC7C - - - - ;;Inputs:
288 D1:AC7C - - - - ;; HL: Pointer to string
289 D1:AC7C - - - - ;;Notes:
290 D1:AC7C - - - - ;; This modifies the string in-place.
291 D1:AC7C - - - - ;toUpper:
292 D1:AC7C - - - - ; push af \ push hl
293 D1:AC7C - - - - ; ld a, (hl)
294 D1:AC7C - - - - ; or a
295 D1:AC7C - - - - ; jr z, toUpperExit
296 D1:AC7C - - - - ; call isAlphaNum
297 D1:AC7C - - - - ; jr nc, toUpperNotLowerAlpha
298 D1:AC7C - - - - ; cp 'a'
299 D1:AC7C - - - - ; jr c, toUpperNotLowerAlpha
300 D1:AC7C - - - - ; sub 'a' - 'A'
301 D1:AC7C - - - - ; ld (hl), a
302 D1:AC7C - - - - ;toUpperNotLowerAlpha:
303 D1:AC7C - - - - ; inc hl
304 D1:AC7C - - - - ; jr toUpper + 2
305 D1:AC7C - - - - ;toUpperExit:
306 D1:AC7C - - - - ; pop hl \ pop af
307 D1:AC7C - - - - ; ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\std\std.inc"
11 D1:AC7C - - - -
12 D1:AC7C - - - - #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:AC7C - - - - ;;inputgetkey
2 D1:AC7C - - - - ;;Gets keycode
3 D1:AC7C - - - - ;;Outputs:
4 D1:AC7C - - - - ;; A: keycode
5 D1:AC7C - - - - ;;Destroys:
6 D1:AC7C - - - - ;; DE
7 D1:AC7C - - - - inputgetkey:
8 D1:AC7C EB - - - ex de, hl
9 D1:AC7D CD 4C 01 02 call _GetCSC
10 D1:AC81 EB - - - ex de, hl
11 D1:AC82 B7 - - - or a
12 D1:AC83 28 F7 - - jr z, inputgetkey
13 D1:AC85 C9 - - - ret
14 D1:AC86 - - - -
15 D1:AC86 - - - - ;;inputstr
16 D1:AC86 - - - - ;;Inputs string of length [Buffer Size] and puts it in (Destination)
17 D1:AC86 - - - - ;;Inputs:
18 D1:AC86 - - - - ;; HL: Destination
19 D1:AC86 - - - - ;; D[E]: Buffer Size
20 D1:AC86 - - - - ;;Ouptuts:
21 D1:AC86 - - - - ;; (HL): String
22 D1:AC86 - - - - inputstr:
23 D1:AC86 D5 - - - push de
24 D1:AC87 E5 - - - push hl
25 D1:AC88 ED 53 A6 AD
D1 - - - ld (inputstrSizeBuf), de
26 D1:AC8D E5 - - - push hl
27 D1:AC8E D5 - - - push de
28 D1:AC8F 21 96 05 D0 ld hl, CurCol
29 D1:AC93 11 A8 AD D1 ld de, inputstrCurColBuf
30 D1:AC97 CD DA A9 D1 call bytecpy
31 D1:AC9B 21 95 05 D0 ld hl, CurRow
32 D1:AC9F 11 A9 AD D1 ld de, inputstrCurRowBuf
33 D1:ACA3 CD DA A9 D1 call bytecpy
34 D1:ACA7 D1 - - - pop de
35 D1:ACA8 E1 - - - pop hl
36 D1:ACA9 - - - -
37 D1:ACA9 FD CB 12 9E res Shift2nd, (IY + ShiftFlags)
38 D1:ACAD CD B0 08 02 call _CursorOn
39 D1:ACB1 - - - -
40 D1:ACB1 AF - - - xor a
41 D1:ACB2 47 - - - ld b, a
42 D1:ACB3 - - - - inputstrKeyInput:
43 D1:ACB3 CD 8F AA D1 call cursorcurunderreset
44 D1:ACB7 CD 7C AC D1 call inputgetkey
45 D1:ACBB - - - -
46 D1:ACBB FE 36 - - cp sk2nd
47 D1:ACBD CA 14 AD D1 jp z, inputstrKey2nd
48 D1:ACC1 FE 38 - - cp skDel
49 D1:ACC3 CA 22 AD D1 jp z, inputstrKeyDel
50 D1:ACC7 FE 0F - - cp skClear
51 D1:ACC9 CA 42 AD D1 jp z, inputstrKeyClear
52 D1:ACCD FE 09 - - cp skEnter
53 D1:ACCF CA 92 AD D1 jp z, inputstrKeyEnter
54 D1:ACD3 - - - -
55 D1:ACD3 4F - - - ld c, a
56 D1:ACD4 78 - - - ld a, b
57 D1:ACD5 D5 - - - push de
58 D1:ACD6 ED 5B A6 AD
D1 - - - ld de, (inputstrSizeBuf)
59 D1:ACDB BB - - - cp e
60 D1:ACDC D1 - - - pop de
61 D1:ACDD 28 D4 - - jr z, inputstrKeyInput
62 D1:ACDF 79 - - - ld a, c
63 D1:ACE0 - - - -
64 D1:ACE0 D6 0A - - sub skAdd
65 D1:ACE2 38 CF - - jr c, inputstrKeyInput
66 D1:ACE4 FE 26 - - cp skMath - skAdd + 1
67 D1:ACE6 30 CB - - jr nc, inputstrKeyInput
68 D1:ACE8 - - - -
69 D1:ACE8 FD CB 12 5E bit Shift2nd, (IY + ShiftFlags) ; TIOS BASED
70 D1:ACEC CC 5F AA D1 call z, chartoascii
71 D1:ACF0 C4 7F AA D1 call nz, charnumsymtoascii
72 D1:ACF4 - - - -
73 D1:ACF4 FE FF - - cp $FF
74 D1:ACF6 28 BB - - jr z, inputstrKeyInput
75 D1:ACF8 - - - -
76 D1:ACF8 FD CB 05 96 res textScrolled, (iy+textFlags)
77 D1:ACFC - - - -
78 D1:ACFC CD B8 07 02 call _PutC
79 D1:AD00 - - - -
80 D1:AD00 77 - - - ld (hl), a
81 D1:AD01 23 - - - inc hl
82 D1:AD02 04 - - - inc b
83 D1:AD03 - - - -
84 D1:AD03 FD CB 05 56 bit textScrolled, (iy+textFlags)
85 D1:AD07 28 AA - - jr z, inputstrKeyInput
86 D1:AD09 E5 - - - push hl
87 D1:AD0A 21 A9 AD D1 ld hl, inputstrCurRowBuf
88 D1:AD0E 7E - - - ld a, (hl)
89 D1:AD0F 3D - - - dec a
90 D1:AD10 77 - - - ld (hl), a
91 D1:AD11 E1 - - - pop hl
92 D1:AD12 18 9F - - jr inputstrKeyInput
93 D1:AD14 - - - - inputstrKey2nd:
94 D1:AD14 E5 - - - push hl
95 D1:AD15 21 92 00 D0 ld hl, Flags + ShiftFlags
96 D1:AD19 7E - - - ld a, (hl)
97 D1:AD1A EE 08 - - xor 1 << Shift2nd ; Toggle state of Shift2nd flag
98 D1:AD1C 77 - - - ld (hl), a
99 D1:AD1D E1 - - - pop hl
100 D1:AD1E C3 B3 AC D1 jp inputstrKeyInput
101 D1:AD22 - - - - inputstrKeyDel:
102 D1:AD22 78 - - - ld a, b
103 D1:AD23 FE 00 - - cp 0
104 D1:AD25 CA B3 AC D1 jp z, inputstrKeyInput
105 D1:AD29 - - - -
106 D1:AD29 3E 20 - - ld a, ' '
107 D1:AD2B CD B4 07 02 call _PutMap
108 D1:AD2F - - - -
109 D1:AD2F E5 - - - push hl
110 D1:AD30 21 96 05 D0 ld hl, CurCol
111 D1:AD34 35 - - - dec (hl)
112 D1:AD35 E1 - - - pop hl
113 D1:AD36 - - - -
114 D1:AD36 3E 20 - - ld a, ' '
115 D1:AD38 CD B4 07 02 call _PutMap
116 D1:AD3C - - - -
117 D1:AD3C 2B - - - dec hl
118 D1:AD3D 05 - - - dec b
119 D1:AD3E C3 B3 AC D1 jp inputstrKeyInput
120 D1:AD42 - - - -
121 D1:AD42 - - - - inputstrKeyClear:
122 D1:AD42 78 - - - ld a, b
123 D1:AD43 FE 00 - - cp 0
124 D1:AD45 CA B3 AC D1 jp z, inputstrKeyInput
125 D1:AD49 - - - -
126 D1:AD49 E5 - - - push hl
127 D1:AD4A D5 - - - push de
128 D1:AD4B 21 A8 AD D1 ld hl, inputstrCurColBuf
129 D1:AD4F 11 96 05 D0 ld de, CurCol
130 D1:AD53 CD DA A9 D1 call bytecpy
131 D1:AD57 21 A9 AD D1 ld hl, inputstrCurRowBuf
132 D1:AD5B 11 95 05 D0 ld de, CurRow
133 D1:AD5F CD DA A9 D1 call bytecpy
134 D1:AD63 D1 - - - pop de
135 D1:AD64 E1 - - - pop hl
136 D1:AD65 - - - -
137 D1:AD65 3E 20 - - ld a, ' '
138 D1:AD67 04 - - - inc b
139 D1:AD68 - - - - inputstrKeyClearLoop:
140 D1:AD68 CD B8 07 02 call _PutC
141 D1:AD6C 10 FA - - djnz inputstrKeyClearLoop
142 D1:AD6E 06 00 - - ld b, 0
143 D1:AD70 - - - -
144 D1:AD70 D5 - - - push de
145 D1:AD71 E5 - - - push hl
146 D1:AD72 21 A8 AD D1 ld hl, inputstrCurColBuf
147 D1:AD76 11 96 05 D0 ld de, CurCol
148 D1:AD7A CD DA A9 D1 call bytecpy
149 D1:AD7E 21 A9 AD D1 ld hl, inputstrCurRowBuf
150 D1:AD82 11 95 05 D0 ld de, CurRow
151 D1:AD86 CD DA A9 D1 call bytecpy
152 D1:AD8A E1 - - - pop hl
153 D1:AD8B D1 - - - pop de
154 D1:AD8C E1 - - - pop hl
155 D1:AD8D E5 - - - push hl
156 D1:AD8E C3 B3 AC D1 jp inputstrKeyInput
157 D1:AD92 - - - -
158 D1:AD92 - - - - inputstrKeyEnter:
159 D1:AD92 36 00 - - ld (hl), 0
160 D1:AD94 CD A8 08 02 call _CursorOff
161 D1:AD98 3E 20 - - ld a, ' '
162 D1:AD9A CD B4 07 02 call _PutMap
163 D1:AD9E E1 - - - pop hl
164 D1:AD9F D1 - - - pop de
165 D1:ADA0 FD CB 12 9E res Shift2nd, (IY + ShiftFlags)
166 D1:ADA4 C9 - - - ret
167 D1:ADA5 - - - -
168 D1:ADA5 00 - - - inputstrFlags: .db %00000000
169 D1:ADA6 - - - - ; 0: num Flag
170 D1:ADA6 00 00 - - inputstrSizeBuf: .dw $0000
171 D1:ADA8 00 - - - inputstrCurColBuf: .db $00
172 D1:ADA9 00 - - - inputstrCurRowBuf: .db $00
173 D1:ADAA - - - -
174 D1:ADAA - - - - ;;inputcharstr
175 D1:ADAA - - - - ;;Inputs string of (only letters) of length [Buffer Size] and puts it in (Destination)
176 D1:ADAA - - - - ;;Inputs:
177 D1:ADAA - - - - ;; HL: Destination
178 D1:ADAA - - - - ;; D[E]: Buffer Size
179 D1:ADAA - - - - ;;Ouptuts:
180 D1:ADAA - - - - ;; (HL): String
181 D1:ADAA - - - - inputcharstr:
182 D1:ADAA D5 - - - push de
183 D1:ADAB E5 - - - push hl
184 D1:ADAC ED 53 BA AE
D1 - - - ld (inputcharstrSizeBuf), de
185 D1:ADB1 E5 - - - push hl
186 D1:ADB2 D5 - - - push de
187 D1:ADB3 21 96 05 D0 ld hl, CurCol
188 D1:ADB7 11 BC AE D1 ld de, inputcharstrCurColBuf
189 D1:ADBB CD DA A9 D1 call bytecpy
190 D1:ADBF 21 95 05 D0 ld hl, CurRow
191 D1:ADC3 11 BD AE D1 ld de, inputcharstrCurRowBuf
192 D1:ADC7 CD DA A9 D1 call bytecpy
193 D1:ADCB D1 - - - pop de
194 D1:ADCC E1 - - - pop hl
195 D1:ADCD - - - -
196 D1:ADCD CD B0 08 02 call _CursorOn
197 D1:ADD1 - - - -
198 D1:ADD1 AF - - - xor a
199 D1:ADD2 47 - - - ld b, a
200 D1:ADD3 - - - - inputcharstrKeyInput:
201 D1:ADD3 CD 8F AA D1 call cursorcurunderreset
202 D1:ADD7 CD 7C AC D1 call inputgetkey
203 D1:ADDB - - - -
204 D1:ADDB FE 38 - - cp skDel
205 D1:ADDD CA 26 AE D1 jp z, inputcharstrKeyDel
206 D1:ADE1 FE 0F - - cp skClear
207 D1:ADE3 CA 46 AE D1 jp z, inputcharstrKeyClear
208 D1:ADE7 FE 09 - - cp skEnter
209 D1:ADE9 CA AB AE D1 jp z, inputcharstrKeyEnter
210 D1:ADED - - - -
211 D1:ADED 4F - - - ld c, a
212 D1:ADEE 78 - - - ld a, b
213 D1:ADEF D5 - - - push de
214 D1:ADF0 ED 5B BA AE
D1 - - - ld de, (inputcharstrSizeBuf)
215 D1:ADF5 BB - - - cp e
216 D1:ADF6 D1 - - - pop de
217 D1:ADF7 28 DA - - jr z, inputcharstrKeyInput
218 D1:ADF9 79 - - - ld a, c
219 D1:ADFA - - - -
220 D1:ADFA D6 0A - - sub skAdd
221 D1:ADFC 38 D5 - - jr c, inputcharstrKeyInput
222 D1:ADFE FE 26 - - cp skMath - skAdd + 1
223 D1:AE00 30 D1 - - jr nc, inputcharstrKeyInput
224 D1:AE02 - - - -
225 D1:AE02 CD 5F AA D1 call chartoascii
226 D1:AE06 - - - -
227 D1:AE06 FE FF - - cp $FF
228 D1:AE08 28 C9 - - jr z, inputcharstrKeyInput
229 D1:AE0A - - - -
230 D1:AE0A FD CB 05 96 res textScrolled, (iy+textFlags)
231 D1:AE0E - - - -
232 D1:AE0E CD B8 07 02 call _PutC
233 D1:AE12 - - - -
234 D1:AE12 77 - - - ld (hl), a
235 D1:AE13 23 - - - inc hl
236 D1:AE14 04 - - - inc b
237 D1:AE15 - - - -
238 D1:AE15 FD CB 05 56 bit textScrolled, (iy+textFlags)
239 D1:AE19 28 B8 - - jr z, inputcharstrKeyInput
240 D1:AE1B E5 - - - push hl
241 D1:AE1C 21 BD AE D1 ld hl, inputcharstrCurRowBuf
242 D1:AE20 7E - - - ld a, (hl)
243 D1:AE21 3D - - - dec a
244 D1:AE22 77 - - - ld (hl), a
245 D1:AE23 E1 - - - pop hl
246 D1:AE24 18 AD - - jr inputcharstrKeyInput
247 D1:AE26 - - - - inputcharstrKeyDel:
248 D1:AE26 78 - - - ld a, b
249 D1:AE27 FE 00 - - cp 0
250 D1:AE29 CA D3 AD D1 jp z, inputcharstrKeyInput
251 D1:AE2D - - - -
252 D1:AE2D 3E 20 - - ld a, ' '
253 D1:AE2F CD B4 07 02 call _PutMap
254 D1:AE33 - - - -
255 D1:AE33 E5 - - - push hl
256 D1:AE34 21 96 05 D0 ld hl, CurCol
257 D1:AE38 35 - - - dec (hl)
258 D1:AE39 E1 - - - pop hl
259 D1:AE3A - - - -
260 D1:AE3A 3E 20 - - ld a, ' '
261 D1:AE3C CD B4 07 02 call _PutMap
262 D1:AE40 - - - -
263 D1:AE40 2B - - - dec hl
264 D1:AE41 05 - - - dec b
265 D1:AE42 C3 D3 AD D1 jp inputcharstrKeyInput
266 D1:AE46 - - - -
267 D1:AE46 - - - - inputcharstrKeyClear:
268 D1:AE46 78 - - - ld a, b
269 D1:AE47 FE 00 - - cp 0
270 D1:AE49 CA D3 AD D1 jp z, inputcharstrKeyInput
271 D1:AE4D - - - -
272 D1:AE4D E5 - - - push hl
273 D1:AE4E 21 95 05 D0 ld hl, CurRow
274 D1:AE52 4E - - - ld c, (hl)
275 D1:AE53 E1 - - - pop hl
276 D1:AE54 - - - -
277 D1:AE54 E5 - - - push hl
278 D1:AE55 D5 - - - push de
279 D1:AE56 21 BC AE D1 ld hl, inputcharstrCurColBuf
280 D1:AE5A 11 96 05 D0 ld de, CurCol
281 D1:AE5E CD DA A9 D1 call bytecpy
282 D1:AE62 21 BD AE D1 ld hl, inputcharstrCurRowBuf
283 D1:AE66 11 95 05 D0 ld de, CurRow
284 D1:AE6A CD DA A9 D1 call bytecpy
285 D1:AE6E D1 - - - pop de
286 D1:AE6F E1 - - - pop hl
287 D1:AE70 - - - -
288 D1:AE70 3E 20 - - ld a, ' '
289 D1:AE72 04 - - - inc b
290 D1:AE73 - - - - inputcharstrKeyClearLoop:
291 D1:AE73 CD B8 07 02 call _PutC
292 D1:AE77 10 FA - - djnz inputcharstrKeyClearLoop
293 D1:AE79 - - - -
294 D1:AE79 E5 - - - push hl
295 D1:AE7A D5 - - - push de
296 D1:AE7B 21 BC AE D1 ld hl, inputcharstrCurColBuf
297 D1:AE7F 11 96 05 D0 ld de, CurCol
298 D1:AE83 CD DA A9 D1 call bytecpy
299 D1:AE87 D1 - - - pop de
300 D1:AE88 E1 - - - pop hl
301 D1:AE89 - - - -
302 D1:AE89 D5 - - - push de
303 D1:AE8A E5 - - - push hl
304 D1:AE8B 21 BC AE D1 ld hl, inputcharstrCurColBuf
305 D1:AE8F 11 96 05 D0 ld de, CurCol
306 D1:AE93 CD DA A9 D1 call bytecpy
307 D1:AE97 21 BD AE D1 ld hl, inputcharstrCurRowBuf
308 D1:AE9B 11 95 05 D0 ld de, CurRow
309 D1:AE9F CD DA A9 D1 call bytecpy
310 D1:AEA3 E1 - - - pop hl
311 D1:AEA4 D1 - - - pop de
312 D1:AEA5 E1 - - - pop hl
313 D1:AEA6 E5 - - - push hl
314 D1:AEA7 C3 D3 AD D1 jp inputcharstrKeyInput
315 D1:AEAB - - - -
316 D1:AEAB - - - - inputcharstrKeyEnter:
317 D1:AEAB 36 00 - - ld (hl), 0
318 D1:AEAD CD A8 08 02 call _CursorOff
319 D1:AEB1 3E 20 - - ld a, ' '
320 D1:AEB3 CD B4 07 02 call _PutMap
321 D1:AEB7 E1 - - - pop hl
322 D1:AEB8 D1 - - - pop de
323 D1:AEB9 C9 - - - ret
324 D1:AEBA - - - -
325 D1:AEBA 00 00 - - inputcharstrSizeBuf: .dw $0000
326 D1:AEBC 00 - - - inputcharstrCurColBuf: .db $00
327 D1:AEBD 00 - - - inputcharstrCurRowBuf: .db $00
328 D1:AEBE - - - -
329 D1:AEBE - - - - ;;inputnumstr
330 D1:AEBE - - - - ;;Inputs string of (only numbers) of length [Buffer Size] and puts it in (Destination)
331 D1:AEBE - - - - ;;Inputs:
332 D1:AEBE - - - - ;; HL: Destination
333 D1:AEBE - - - - ;; D[E]: Buffer Size
334 D1:AEBE - - - - ;;Ouptuts:
335 D1:AEBE - - - - ;; (HL): String
336 D1:AEBE - - - - inputnumstr:
337 D1:AEBE D5 - - - push de
338 D1:AEBF E5 - - - push hl
339 D1:AEC0 ED 53 BE AF
D1 - - - ld (inputnumstrSizeBuf), de
340 D1:AEC5 E5 - - - push hl
341 D1:AEC6 D5 - - - push de
342 D1:AEC7 21 96 05 D0 ld hl, CurCol
343 D1:AECB 11 C0 AF D1 ld de, inputnumstrCurColBuf
344 D1:AECF CD DA A9 D1 call bytecpy
345 D1:AED3 21 95 05 D0 ld hl, CurRow
346 D1:AED7 11 C1 AF D1 ld de, inputnumstrCurRowBuf
347 D1:AEDB CD DA A9 D1 call bytecpy
348 D1:AEDF D1 - - - pop de
349 D1:AEE0 E1 - - - pop hl
350 D1:AEE1 - - - -
351 D1:AEE1 CD B0 08 02 call _CursorOn
352 D1:AEE5 - - - -
353 D1:AEE5 AF - - - xor a
354 D1:AEE6 47 - - - ld b, a
355 D1:AEE7 - - - -
356 D1:AEE7 - - - - inputnumstrKeyInput:
357 D1:AEE7 CD 8F AA D1 call cursorcurunderreset
358 D1:AEEB CD 7C AC D1 call inputgetkey
359 D1:AEEF - - - -
360 D1:AEEF FE 38 - - cp skDel
361 D1:AEF1 CA 3A AF D1 jp z, inputnumstrKeyDel
362 D1:AEF5 FE 0F - - cp skClear
363 D1:AEF7 CA 5A AF D1 jp z, inputnumstrKeyClear
364 D1:AEFB FE 09 - - cp skEnter
365 D1:AEFD CA AF AF D1 jp z, inputnumstrKeyEnter
366 D1:AF01 - - - -
367 D1:AF01 4F - - - ld c, a
368 D1:AF02 78 - - - ld a, b
369 D1:AF03 D5 - - - push de
370 D1:AF04 ED 5B BE AF
D1 - - - ld de, (inputnumstrSizeBuf)
371 D1:AF09 BB - - - cp e
372 D1:AF0A D1 - - - pop de
373 D1:AF0B 28 DA - - jr z, inputnumstrKeyInput
374 D1:AF0D 79 - - - ld a, c
375 D1:AF0E - - - -
376 D1:AF0E D6 0A - - sub skAdd
377 D1:AF10 38 D5 - - jr c, inputnumstrKeyInput
378 D1:AF12 FE 26 - - cp skMath - skAdd + 1
379 D1:AF14 30 D1 - - jr nc, inputnumstrKeyInput
380 D1:AF16 - - - -
381 D1:AF16 CD 6F AA D1 call charnumtoascii
382 D1:AF1A FE FF - - cp $FF
383 D1:AF1C 28 C9 - - jr z, inputnumstrKeyInput
384 D1:AF1E - - - -
385 D1:AF1E FD CB 05 96 res textScrolled, (iy+textFlags)
386 D1:AF22 - - - -
387 D1:AF22 CD B8 07 02 call _PutC
388 D1:AF26 - - - -
389 D1:AF26 77 - - - ld (hl), a
390 D1:AF27 23 - - - inc hl
391 D1:AF28 04 - - - inc b
392 D1:AF29 - - - -
393 D1:AF29 FD CB 05 56 bit textScrolled, (iy+textFlags)
394 D1:AF2D 28 B8 - - jr z, inputnumstrKeyInput
395 D1:AF2F E5 - - - push hl
396 D1:AF30 21 C1 AF D1 ld hl, inputnumstrCurRowBuf
397 D1:AF34 7E - - - ld a, (hl)
398 D1:AF35 3D - - - dec a
399 D1:AF36 77 - - - ld (hl), a
400 D1:AF37 E1 - - - pop hl
401 D1:AF38 18 AD - - jr inputnumstrKeyInput
402 D1:AF3A - - - - inputnumstrkeydel:
403 D1:AF3A 78 - - - ld a, b
404 D1:AF3B FE 00 - - cp 0
405 D1:AF3D CA E7 AE D1 jp z, inputnumstrKeyInput
406 D1:AF41 - - - -
407 D1:AF41 3E 20 - - ld a, ' '
408 D1:AF43 CD B4 07 02 call _PutMap
409 D1:AF47 - - - -
410 D1:AF47 E5 - - - push hl
411 D1:AF48 21 96 05 D0 ld hl, CurCol
412 D1:AF4C 35 - - - dec (hl)
413 D1:AF4D E1 - - - pop hl
414 D1:AF4E - - - -
415 D1:AF4E 3E 20 - - ld a, ' '
416 D1:AF50 CD B4 07 02 call _PutMap
417 D1:AF54 - - - -
418 D1:AF54 2B - - - dec hl
419 D1:AF55 05 - - - dec b
420 D1:AF56 C3 E7 AE D1 jp inputnumstrKeyInput
421 D1:AF5A - - - -
422 D1:AF5A - - - - inputnumstrKeyClear:
423 D1:AF5A 78 - - - ld a, b
424 D1:AF5B FE 00 - - cp 0
425 D1:AF5D CA E7 AE D1 jp z, inputnumstrKeyInput
426 D1:AF61 - - - -
427 D1:AF61 E5 - - - push hl
428 D1:AF62 21 95 05 D0 ld hl, CurRow
429 D1:AF66 4E - - - ld c, (hl)
430 D1:AF67 E1 - - - pop hl
431 D1:AF68 - - - -
432 D1:AF68 E5 - - - push hl
433 D1:AF69 D5 - - - push de
434 D1:AF6A 21 C0 AF D1 ld hl, inputnumstrCurColBuf
435 D1:AF6E 11 96 05 D0 ld de, CurCol
436 D1:AF72 CD DA A9 D1 call bytecpy
437 D1:AF76 21 C1 AF D1 ld hl, inputnumstrCurRowBuf
438 D1:AF7A 11 95 05 D0 ld de, CurRow
439 D1:AF7E CD DA A9 D1 call bytecpy
440 D1:AF82 D1 - - - pop de
441 D1:AF83 E1 - - - pop hl
442 D1:AF84 - - - -
443 D1:AF84 3E 20 - - ld a, ' '
444 D1:AF86 04 - - - inc b
445 D1:AF87 - - - - inputnumstrKeyClearLoop:
446 D1:AF87 CD B8 07 02 call _PutC
447 D1:AF8B 10 FA - - djnz inputnumstrKeyClearLoop
448 D1:AF8D - - - -
449 D1:AF8D D5 - - - push de
450 D1:AF8E E5 - - - push hl
451 D1:AF8F 21 C0 AF D1 ld hl, inputnumstrCurColBuf
452 D1:AF93 11 96 05 D0 ld de, CurCol
453 D1:AF97 CD DA A9 D1 call bytecpy
454 D1:AF9B 21 C1 AF D1 ld hl, inputnumstrCurRowBuf
455 D1:AF9F 11 95 05 D0 ld de, CurRow
456 D1:AFA3 CD DA A9 D1 call bytecpy
457 D1:AFA7 E1 - - - pop hl
458 D1:AFA8 D1 - - - pop de
459 D1:AFA9 E1 - - - pop hl
460 D1:AFAA E5 - - - push hl
461 D1:AFAB C3 E7 AE D1 jp inputnumstrKeyInput
462 D1:AFAF - - - -
463 D1:AFAF - - - - inputnumstrKeyEnter:
464 D1:AFAF 36 00 - - ld (hl), 0
465 D1:AFB1 CD A8 08 02 call _CursorOff
466 D1:AFB5 3E 20 - - ld a, ' '
467 D1:AFB7 CD B4 07 02 call _PutMap
468 D1:AFBB E1 - - - pop hl
469 D1:AFBC D1 - - - pop de
470 D1:AFBD C9 - - - ret
471 D1:AFBE - - - -
472 D1:AFBE 00 00 - - inputnumstrSizeBuf: .dw $0000
473 D1:AFC0 00 - - - inputnumstrCurColBuf: .db $00
474 D1:AFC1 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:AFC2 - - - - #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:AFC2 - - - - #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:AFC2 - - - - ;;commandfill
2 D1:AFC2 - - - - ;;Fills command mem with byte a
3 D1:AFC2 - - - - ;;Inputs:
4 D1:AFC2 - - - - ;; A: byte
5 D1:AFC2 - - - - commandfill:
6 D1:AFC2 E5 - - - push hl
7 D1:AFC3 C5 - - - push bc
8 D1:AFC4 D5 - - - push de
9 D1:AFC5 06 00 - - ld b, 0
10 D1:AFC7 11 00 00 00 ld de, 0
11 D1:AFCB 4F - - - ld c, a
12 D1:AFCC 21 9F EA D0 ld hl, FshCmd
13 D1:AFD0 - - - - commandfillLoop:
14 D1:AFD0 71 - - - ld (hl), c
15 D1:AFD1 23 - - - inc hl
16 D1:AFD2 04 - - - inc b
17 D1:AFD3 13 - - - inc de
18 D1:AFD4 78 - - - ld a, b
19 D1:AFD5 FE 40 - - cp FshCmdSize
20 D1:AFD7 38 F7 - - jr c, commandfillLoop
21 D1:AFD9 D1 - - - pop de
22 D1:AFDA C1 - - - pop bc
23 D1:AFDB E1 - - - pop hl
24 D1:AFDC C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\fsh.inc"
2 D1:AFDD - - - - #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:AFDD - - - - ;;fshparsecommand
2 D1:AFDD - - - - ;;Inputs:
3 D1:AFDD - - - - ;; HL: FshCmd
4 D1:AFDD - - - - ;;b = buf row
5 D1:AFDD - - - - ;;c = char in row
6 D1:AFDD - - - - ;de = scratch
7 D1:AFDD - - - - fshparsecommand:
8 D1:AFDD E5 - - - push hl
9 D1:AFDE C5 - - - push bc
10 D1:AFDF D5 - - - push de
11 D1:AFE0 E5 - - - push hl
12 D1:AFE1 E5 - - - push hl
13 D1:AFE2 21 F4 B0 D1 ld hl, fshparsecommandCmd
14 D1:AFE6 06 2D - - ld b, 45
15 D1:AFE8 3E 00 - - ld a, $00
16 D1:AFEA CD E2 A9 D1 call memset
17 D1:AFEE E1 - - - pop hl
18 D1:AFEF - - - -
19 D1:AFEF 01 00 00 00 ld bc, 0
20 D1:AFF3 11 00 00 00 ld de, 0
21 D1:AFF7 - - - - fshparsecommandLoop:
22 D1:AFF7 7E - - - ld a, (hl)
23 D1:AFF8 - - - - fshparsecommandCheckSpace:
24 D1:AFF8 FE 20 - - cp ' ' ;end of word
25 D1:AFFA 20 0C - - jr nz, fshparsecommandCheckEnd
26 D1:AFFC 3E 00 - - ld a, $00
27 D1:AFFE CD 27 B1 D1 call fshparsecommandCopyChar
28 D1:B002 0E 00 - - ld c, 0
29 D1:B004 04 - - - inc b
30 D1:B005 23 - - - inc hl
31 D1:B006 18 EF - - jr fshparsecommandLoop
32 D1:B008 - - - -
33 D1:B008 - - - - fshparsecommandCheckEnd:
34 D1:B008 FE 00 - - cp $00 ;end of string
35 D1:B00A 28 13 - - jr z, fshparsecommandCheckArgStatus
36 D1:B00C - - - -
37 D1:B00C - - - - fshparsecommandLoopEnd:
38 D1:B00C CD 27 B1 D1 call fshparsecommandCopyChar
39 D1:B010 23 - - - inc hl
40 D1:B011 0C - - - inc c
41 D1:B012 - - - -
42 D1:B012 79 - - - ld a, c
43 D1:B013 FE 08 - - cp FshCmdCmdSize
44 D1:B015 20 E0 - - jr nz, fshparsecommandLoop
45 D1:B017 - - - - ;inc hl
46 D1:B017 0E 00 - - ld c, 0
47 D1:B019 04 - - - inc b
48 D1:B01A 78 - - - ld a, b
49 D1:B01B FE 05 - - cp 5
50 D1:B01D 20 D8 - - jr nz, fshparsecommandLoop
51 D1:B01F - - - - ; ld bc, 0
52 D1:B01F - - - -
53 D1:B01F - - - - fshparsecommandCheckArgStatus:
54 D1:B01F AF - - - xor a
55 D1:B020 21 CD EA D0 ld hl, FshCmdArgFlags
56 D1:B024 77 - - - ld (hl), a
57 D1:B025 - - - - fshparsecommandCheckArg0:
58 D1:B025 21 FD B0 D1 ld hl, fshparsecommandArg0
59 D1:B029 7E - - - ld a, (hl)
60 D1:B02A FE 00 - - cp $00
61 D1:B02C 28 27 - - jr z, fshparsecommandCheckArg1
62 D1:B02E 21 CD EA D0 ld hl, FshCmdArgFlags
63 D1:B032 CB C6 - - set 0, (hl)
64 D1:B034 7E - - - ld a, (hl)
65 D1:B035 21 FD B0 D1 ld hl, fshparsecommandArg0
66 D1:B039 7E - - - ld a, (hl)
67 D1:B03A D6 30 - - sub '0'
68 D1:B03C FE 0A - - cp '9' - '0' + 1
69 D1:B03E 30 15 - - jr nc, fshparsecommandCheckArg1
70 D1:B040 CD D4 AB D1 call strtow
71 D1:B044 11 FD B0 D1 ld de, fshparsecommandArg0
72 D1:B048 EB - - - ex de, hl
73 D1:B049 73 - - - ld (hl), e
74 D1:B04A 23 - - - inc hl
75 D1:B04B 72 - - - ld (hl), d
76 D1:B04C 34 - - - inc (hl)
77 D1:B04D 36 00 - - ld (hl), $00
78 D1:B04F 21 CD EA D0 ld hl, FshCmdArgFlags
79 D1:B053 CB CE - - set 1, (hl)
80 D1:B055 - - - - fshparsecommandCheckArg1:
81 D1:B055 21 06 B1 D1 ld hl, fshparsecommandArg1
82 D1:B059 7E - - - ld a, (hl)
83 D1:B05A FE 00 - - cp $00
84 D1:B05C 28 26 - - jr z, fshparsecommandCheckArg2
85 D1:B05E 21 CD EA D0 ld hl, FshCmdArgFlags
86 D1:B062 CB D6 - - set 2, (hl)
87 D1:B064 21 06 B1 D1 ld hl, fshparsecommandArg1
88 D1:B068 7E - - - ld a, (hl)
89 D1:B069 D6 30 - - sub '0'
90 D1:B06B FE 0A - - cp '9' - '0' + 1
91 D1:B06D 30 15 - - jr nc, fshparsecommandCheckArg2
92 D1:B06F CD D4 AB D1 call strtow
93 D1:B073 11 06 B1 D1 ld de, fshparsecommandArg1
94 D1:B077 EB - - - ex de, hl
95 D1:B078 73 - - - ld (hl), e
96 D1:B079 23 - - - inc hl
97 D1:B07A 72 - - - ld (hl), d
98 D1:B07B 23 - - - inc hl
99 D1:B07C 36 00 - - ld (hl), $00
100 D1:B07E 21 CD EA D0 ld hl, FshCmdArgFlags
101 D1:B082 CB DE - - set 3, (hl)
102 D1:B084 - - - - fshparsecommandCheckArg2:
103 D1:B084 21 0F B1 D1 ld hl, fshparsecommandArg2
104 D1:B088 7E - - - ld a, (hl)
105 D1:B089 FE 00 - - cp $00
106 D1:B08B 28 26 - - jr z, fshparsecommandCheckArg3
107 D1:B08D 21 CD EA D0 ld hl, FshCmdArgFlags
108 D1:B091 CB E6 - - set 4, (hl)
109 D1:B093 21 0F B1 D1 ld hl, fshparsecommandArg2
110 D1:B097 7E - - - ld a, (hl)
111 D1:B098 D6 30 - - sub '0'
112 D1:B09A FE 0A - - cp '9' - '0' + 1
113 D1:B09C 30 15 - - jr nc, fshparsecommandCheckArg3
114 D1:B09E CD D4 AB D1 call strtow
115 D1:B0A2 11 0F B1 D1 ld de, fshparsecommandArg2
116 D1:B0A6 EB - - - ex de, hl
117 D1:B0A7 73 - - - ld (hl), e
118 D1:B0A8 23 - - - inc hl
119 D1:B0A9 72 - - - ld (hl), d
120 D1:B0AA 23 - - - inc hl
121 D1:B0AB 36 00 - - ld (hl), $00
122 D1:B0AD 21 CD EA D0 ld hl, FshCmdArgFlags
123 D1:B0B1 CB EE - - set 5, (hl)
124 D1:B0B3 - - - - fshparsecommandCheckArg3:
125 D1:B0B3 21 18 B1 D1 ld hl, fshparsecommandArg3
126 D1:B0B7 7E - - - ld a, (hl)
127 D1:B0B8 FE 00 - - cp $00
128 D1:B0BA 28 26 - - jr z, fshparsecommandCopyBack
129 D1:B0BC 21 CD EA D0 ld hl, FshCmdArgFlags
130 D1:B0C0 CB F6 - - set 6, (hl)
131 D1:B0C2 21 18 B1 D1 ld hl, fshparsecommandArg3
132 D1:B0C6 7E - - - ld a, (hl)
133 D1:B0C7 D6 30 - - sub '0'
134 D1:B0C9 FE 0A - - cp '9' - '0' + 1
135 D1:B0CB 30 15 - - jr nc, fshparsecommandCopyBack
136 D1:B0CD CD D4 AB D1 call strtow
137 D1:B0D1 11 18 B1 D1 ld de, fshparsecommandArg3
138 D1:B0D5 EB - - - ex de, hl
139 D1:B0D6 73 - - - ld (hl), e
140 D1:B0D7 23 - - - inc hl
141 D1:B0D8 72 - - - ld (hl), d
142 D1:B0D9 23 - - - inc hl
143 D1:B0DA 36 00 - - ld (hl), $00
144 D1:B0DC 21 CD EA D0 ld hl, FshCmdArgFlags
145 D1:B0E0 CB FE - - set 7, (hl)
146 D1:B0E2 - - - - fshparsecommandCopyBack:
147 D1:B0E2 E1 - - - pop hl
148 D1:B0E3 C5 - - - push bc
149 D1:B0E4 EB - - - ex de, hl
150 D1:B0E5 21 F4 B0 D1 ld hl, fshparsecommandCmd
151 D1:B0E9 01 2D 00 00 ld bc, 45
152 D1:B0ED ED B0 - - ldir
153 D1:B0EF C1 - - - pop bc
154 D1:B0F0 - - - -
155 D1:B0F0 D1 - - - pop de
156 D1:B0F1 C1 - - - pop bc
157 D1:B0F2 E1 - - - pop hl
158 D1:B0F3 C9 - - - ret
159 D1:B0F4 - - - -
160 D1:B0F4 00 00 00 00
00 00 00 00
00 - - - fshparsecommandCmd: .db $00, $00, $00, $00, $00, $00, $00, $00, $00
161 D1:B0FD 00 00 00 00
00 00 00 00
00 - - - fshparsecommandArg0: .db $00, $00, $00, $00, $00, $00, $00, $00, $00
162 D1:B106 00 00 00 00
00 00 00 00
00 - - - fshparsecommandArg1: .db $00, $00, $00, $00, $00, $00, $00, $00, $00
163 D1:B10F 00 00 00 00
00 00 00 00
00 - - - fshparsecommandArg2: .db $00, $00, $00, $00, $00, $00, $00, $00, $00
164 D1:B118 00 00 00 00
00 00 00 00
00 - - - fshparsecommandArg3: .db $00, $00, $00, $00, $00, $00, $00, $00, $00
165 D1:B121 00 00 00 00
00 00 - - fshparsecommandOverB: .db $00, $00, $00, $00, $00, $00
166 D1:B127 - - - -
167 D1:B127 - - - - fshparsecommandCopyChar:
168 D1:B127 - - - - ;Copy
169 D1:B127 E5 - - - push hl
170 D1:B128 C5 - - - push bc
171 D1:B129 21 00 00 00 ld hl, 0
172 D1:B12D 60 - - - ld h, b
173 D1:B12E 2E 09 - - ld l, 9
174 D1:B130 41 - - - ld b, c
175 D1:B131 11 F4 B0 D1 ld de, fshparsecommandCmd
176 D1:B135 CD 2C AB D1 call array2d
177 D1:B139 C1 - - - pop bc
178 D1:B13A E1 - - - pop hl
179 D1:B13B - - - - ;push hl
180 D1:B13B - - - - ; ld hl, fshparsecommandCmd+45+1
181 D1:B13B - - - - ; call cpHLDE
182 D1:B13B - - - - ;pop hl
183 D1:B13B - - - - ;pop de
184 D1:B13B - - - - ;ret c
185 D1:B13B - - - - ;push de
186 D1:B13B 12 - - - ld (de), a ;ld buffer
187 D1:B13C C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\fsh.inc"
3 D1:B13D - - - - #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:B13D - - - - ;;fshvarset
2 D1:B13D - - - - ;;Sets a Word in FshVars.
3 D1:B13D - - - - ;;Inputs:
4 D1:B13D - - - - ;; HL: 16b
5 D1:B13D - - - - ;; DE: Destination Word Relitive to FshVars
6 D1:B13D - - - - fshvarset:
7 D1:B13D C5 - - - push bc
8 D1:B13E 01 3F 00 00 ld bc, FshVarsSize / 2 - 1
9 D1:B142 CD 77 A9 D1 call cpBCDE
10 D1:B146 C1 - - - pop bc
11 D1:B147 38 11 - - jr c, fshvarsetOOBException
12 D1:B149 C5 - - - push bc
13 D1:B14A D5 - - - push de
14 D1:B14B E5 - - - push hl
15 D1:B14C 01 1F EA D0 ld bc, FshVars
16 D1:B150 EB - - - ex de, hl
17 D1:B151 29 - - - add hl, hl
18 D1:B152 09 - - - add hl, bc
19 D1:B153 73 - - - ld (hl), e
20 D1:B154 23 - - - inc hl
21 D1:B155 72 - - - ld (hl), d
22 D1:B156 E1 - - - pop hl
23 D1:B157 D1 - - - pop de
24 D1:B158 C1 - - - pop bc
25 D1:B159 C9 - - - ret
26 D1:B15A - - - - fshvarsetOOBException:
27 D1:B15A E5 - - - push hl
28 D1:B15B 21 7F B2 D1 ld hl, ErrOutOfBoundso
29 D1:B15F CD 3A B2 D1 call ErrSet
30 D1:B163 E1 - - - pop hl
31 D1:B164 C9 - - - ret
32 D1:B165 - - - -
33 D1:B165 - - - - ;;fshvarget
34 D1:B165 - - - - ;;Gets a Word in FshVars.
35 D1:B165 - - - - ;;Inputs:
36 D1:B165 - - - - ;; DE: Destination Word Relitive to FshVars
37 D1:B165 - - - - ;;Outputs:
38 D1:B165 - - - - ;; HL: Word in (DE)
39 D1:B165 - - - - fshvarget:
40 D1:B165 C5 - - - push bc
41 D1:B166 01 3F 00 00 ld bc, FshVarsSize / 2 - 1
42 D1:B16A CD 77 A9 D1 call cpBCDE
43 D1:B16E C1 - - - pop bc
44 D1:B16F 38 14 - - jr c, fshvargetOOBException
45 D1:B171 C5 - - - push bc
46 D1:B172 D5 - - - push de
47 D1:B173 21 00 00 00 ld hl, 0
48 D1:B177 01 1F EA D0 ld bc, FshVars
49 D1:B17B EB - - - ex de, hl
50 D1:B17C 29 - - - add hl, hl
51 D1:B17D 09 - - - add hl, bc
52 D1:B17E 5E - - - ld e, (hl)
53 D1:B17F 23 - - - inc hl
54 D1:B180 56 - - - ld d, (hl)
55 D1:B181 EB - - - ex de, hl
56 D1:B182 D1 - - - pop de
57 D1:B183 C1 - - - pop bc
58 D1:B184 C9 - - - ret
59 D1:B185 - - - - fshvargetOOBException:
60 D1:B185 E5 - - - push hl
61 D1:B186 21 7F B2 D1 ld hl, ErrOutOfBoundso
62 D1:B18A CD 3A B2 D1 call ErrSet
63 D1:B18E E1 - - - pop hl
64 D1:B18F C9 - - - ret
65 D1:B190 - - - - ;;fshvarcpy
66 D1:B190 - - - - ;;Copies a word.
67 D1:B190 - - - - ;;Inputs:
68 D1:B190 - - - - ;; HL: Byte pointer
69 D1:B190 - - - - ;; DE: Destination
70 D1:B190 - - - - fshvarcpy:
71 D1:B190 C5 - - - push bc
72 D1:B191 01 3F 00 00 ld bc, FshVarsSize / 2 - 1
73 D1:B195 CD 77 A9 D1 call cpBCDE
74 D1:B199 C1 - - - pop bc
75 D1:B19A 38 2A - - jr c, fshvarcpyOOBException
76 D1:B19C C5 - - - push bc
77 D1:B19D 01 40 00 00 ld bc, FshVarsSize / 2
78 D1:B1A1 CD 72 A9 D1 call cpHLBC
79 D1:B1A5 C1 - - - pop bc
80 D1:B1A6 30 1E - - jr nc, fshvarcpyOOBException
81 D1:B1A8 D5 - - - push de
82 D1:B1A9 E5 - - - push hl
83 D1:B1AA 01 40 00 00 ld bc, FshVarsSize / 2
84 D1:B1AE CD 77 A9 D1 call cpBCDE
85 D1:B1B2 38 12 - - jr c, fshvarcpyOOBException
86 D1:B1B4 01 1F EA D0 ld bc, FshVars
87 D1:B1B8 29 - - - add hl, hl
88 D1:B1B9 09 - - - add hl, bc
89 D1:B1BA EB - - - ex de, hl
90 D1:B1BB 29 - - - add hl, hl
91 D1:B1BC 09 - - - add hl, bc
92 D1:B1BD 1A - - - ld a, (de)
93 D1:B1BE 77 - - - ld (hl), a
94 D1:B1BF 13 - - - inc de
95 D1:B1C0 23 - - - inc hl
96 D1:B1C1 1A - - - ld a, (de)
97 D1:B1C2 77 - - - ld (hl), a
98 D1:B1C3 E1 - - - pop hl
99 D1:B1C4 D1 - - - pop de
100 D1:B1C5 C9 - - - ret
101 D1:B1C6 - - - -
102 D1:B1C6 - - - - fshvarcpyOOBException:
103 D1:B1C6 E5 - - - push hl
104 D1:B1C7 21 7F B2 D1 ld hl, ErrOutOfBoundso
105 D1:B1CB CD 3A B2 D1 call ErrSet
106 D1:B1CF E1 - - - pop hl
107 D1:B1D0 C9 - - - ret
108 D1:B1D1 - - - -
109 D1:B1D1 - - - - ;;fshvarreset
110 D1:B1D1 - - - - ;;Fills fshvars with $00
111 D1:B1D1 - - - - fshvarreset:
112 D1:B1D1 E5 - - - push hl
113 D1:B1D2 C5 - - - push bc
114 D1:B1D3 D5 - - - push de
115 D1:B1D4 06 00 - - ld b, 0
116 D1:B1D6 11 00 00 00 ld de, 0
117 D1:B1DA 21 00 00 00 ld hl, 0
118 D1:B1DE - - - - fshvarfillLoop:
119 D1:B1DE CD 3D B1 D1 call fshvarset
120 D1:B1E2 04 - - - inc b
121 D1:B1E3 13 - - - inc de
122 D1:B1E4 78 - - - ld a, b
123 D1:B1E5 FE 40 - - cp FshVarsSize / 2
124 D1:B1E7 38 F5 - - jr c, fshvarfillLoop
125 D1:B1E9 D1 - - - pop de
126 D1:B1EA C1 - - - pop bc
127 D1:B1EB E1 - - - pop hl
128 D1:B1EC C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\fsh.inc"
4 D1:B1ED - - - - #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:B1ED - - - - ;;ErrCatch
2 D1:B1ED - - - - ;;Checks err bit and jp to err route
3 D1:B1ED - - - - ErrCatch:
4 D1:B1ED C1 - - - pop bc
5 D1:B1EE E5 - - - push hl
6 D1:B1EF 21 6C A9 D1 ld hl, FshFlags
7 D1:B1F3 CB 4E - - bit 1, (hl)
8 D1:B1F5 E1 - - - pop hl
9 D1:B1F6 C2 FC B1 D1 jp nz, ErrRoute
10 D1:B1FA C5 - - - push bc
11 D1:B1FB C9 - - - ret
12 D1:B1FC - - - -
13 D1:B1FC - - - - ;;ErrRoute
14 D1:B1FC - - - - ;;Routes err codes.
15 D1:B1FC - - - - ErrRoute:
16 D1:B1FC - - - -
17 D1:B1FC 21 6C A9 D1 ld hl, FshFlags
18 D1:B200 CB 8E - - res 1, (hl)
19 D1:B202 - - - -
20 D1:B202 21 CE EA D0 ld hl, FshCmdErrCode
21 D1:B206 - - - -
22 D1:B206 11 49 B2 D1 ld de, ErrCmdNotFoundo
23 D1:B20A CD D2 A9 D1 call bytecmp
24 D1:B20E CA 4A B2 D1 jp z, ErrCmdNotFoundf
25 D1:B212 - - - -
26 D1:B212 11 7F B2 D1 ld de, ErrOutOfBoundso
27 D1:B216 CD D2 A9 D1 call bytecmp
28 D1:B21A CA 80 B2 D1 jp z, ErrOutOfBoundsf
29 D1:B21E - - - -
30 D1:B21E 11 A5 B2 D1 ld de, ErrArgso
31 D1:B222 CD D2 A9 D1 call bytecmp
32 D1:B226 CA A6 B2 D1 jp z, ErrArgsf
33 D1:B22A - - - -
34 D1:B22A 11 CF B2 D1 ld de, ErrUsageo
35 D1:B22E CD D2 A9 D1 call bytecmp
36 D1:B232 CA D0 B2 D1 jp z, ErrUsagef
37 D1:B236 - - - -
38 D1:B236 C3 FB B2 D1 jp ErrDefault
39 D1:B23A - - - -
40 D1:B23A - - - -
41 D1:B23A - - - - ;;ErrSet
42 D1:B23A - - - - ;;Sets all things relating to Err codes
43 D1:B23A - - - - ;;Inputs:
44 D1:B23A - - - - ;; HL: Err_____o
45 D1:B23A - - - - ErrSet:
46 D1:B23A E5 - - - push hl
47 D1:B23B 7E - - - ld a, (hl)
48 D1:B23C 21 CE EA D0 ld hl, FshCmdErrCode
49 D1:B240 77 - - - ld (hl), a
50 D1:B241 21 6C A9 D1 ld hl, FshFlags
51 D1:B245 CB CE - - set 1, (hl)
52 D1:B247 E1 - - - pop hl
53 D1:B248 C9 - - - ret
54 D1:B249 - - - -
55 D1:B249 - - - - ;;ERR FUNCS-------------------
56 D1:B249 - - - -
57 D1:B249 01 - - - ErrCmdNotFoundo: .db $01
58 D1:B24A - - - - ErrCmdNotFoundf:
59 D1:B24A 21 9F EA D0 ld hl, FshCmd
60 D1:B24E 7E - - - ld a, (hl)
61 D1:B24F FE 00 - - cp $00
62 D1:B251 CA DB A8 D1 jp z, Fin
63 D1:B255 21 6D B2 D1 ld hl, ErrCmdNotFoundt
64 D1:B259 CD C0 07 02 call _PutS
65 D1:B25D 21 9F EA D0 ld hl, FshCmd
66 D1:B261 CD C0 07 02 call _PutS
67 D1:B265 CD F0 07 02 call _NewLine
68 D1:B269 C3 DB A8 D1 jp Fin
69 D1:B26D 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:B27F - - - -
71 D1:B27F 02 - - - ErrOutOfBoundso: .db $02
72 D1:B280 - - - - ErrOutOfBoundsf:
73 D1:B280 21 90 B2 D1 ld hl, ErrOutOfBoundst
74 D1:B284 CD C0 07 02 call _PutS
75 D1:B288 CD F0 07 02 call _NewLine
76 D1:B28C C3 DB A8 D1 jp Fin
77 D1:B290 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:B2A5 - - - -
79 D1:B2A5 03 - - - ErrArgso: .db $03
80 D1:B2A6 - - - - ErrArgsf:
81 D1:B2A6 21 B6 B2 D1 ld hl, ErrArgst
82 D1:B2AA CD C0 07 02 call _PutS
83 D1:B2AE CD F0 07 02 call _NewLine
84 D1:B2B2 C3 DB A8 D1 jp Fin
85 D1:B2B6 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:B2CF - - - -
87 D1:B2CF 04 - - - ErrUsageo: .db $04
88 D1:B2D0 - - - - ErrUsagef:
89 D1:B2D0 21 EC B2 D1 ld hl, ErrUsaget
90 D1:B2D4 CD C0 07 02 call _PutS
91 D1:B2D8 21 9F EA D0 ld hl, FshCmd
92 D1:B2DC CD A9 B4 D1 call manrouteu
93 D1:B2E0 CD C0 07 02 call _PutS
94 D1:B2E4 CD F0 07 02 call _NewLine
95 D1:B2E8 C3 DB A8 D1 jp Fin
96 D1:B2EC 65 72 72 6F
72 3A 20 55
73 61 67 65
3A 20 00 - ErrUsaget: .db "error: Usage: ", 0
97 D1:B2FB - - - -
98 D1:B2FB - - - - ErrDefault:
99 D1:B2FB 21 07 B3 D1 ld hl, ErrDefaultt
100 D1:B2FF CD C0 07 02 call _PutS
101 D1:B303 C3 F7 A8 D1 jp Exit
102 D1:B307 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:B31C - - - - #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:B31C - - - - ;;printfshnamelong
2 D1:B31C - - - - ;;prints Name + Varsv + Version to screen
3 D1:B31C - - - - printfshnamelong:
4 D1:B31C E5 - - - push hl
5 D1:B31D 21 FC A8 D1 ld hl, FshName
6 D1:B321 CD C0 07 02 call _PutS
7 D1:B325 3E 20 - - ld a, ' '
8 D1:B327 CD B8 07 02 call _PutC
9 D1:B32B 21 31 A9 D1 ld hl, FshVVars
10 D1:B32F CD C0 07 02 call _PutS
11 D1:B333 3E 20 - - ld a, ' '
12 D1:B335 CD B8 07 02 call _PutC
13 D1:B339 3E 76 - - ld a, 'v'
14 D1:B33B CD B8 07 02 call _PutC
15 D1:B33F 21 35 A9 D1 ld hl, FshVMajor
16 D1:B343 CD C0 07 02 call _PutS
17 D1:B347 21 3F A9 D1 ld hl, FshVSeparator
18 D1:B34B CD C0 07 02 call _PutS
19 D1:B34F 21 37 A9 D1 ld hl, FshVMinor
20 D1:B353 CD C0 07 02 call _PutS
21 D1:B357 21 3F A9 D1 ld hl, FshVSeparator
22 D1:B35B CD C0 07 02 call _PutS
23 D1:B35F 21 39 A9 D1 ld hl, FshVPatch
24 D1:B363 CD C0 07 02 call _PutS
25 D1:B367 3E 20 - - ld a, ' '
26 D1:B369 CD B8 07 02 call _PutC
27 D1:B36D 21 3B A9 D1 ld hl, FshVBuild
28 D1:B371 CD C0 07 02 call _PutS
29 D1:B375 E1 - - - pop hl
30 D1:B376 C9 - - - ret
31 D1:B377 - - - -
32 D1:B377 - - - - ;;printmotd
33 D1:B377 - - - - ;;prints the motd to screen
34 D1:B377 - - - - printmotd:
35 D1:B377 CD 1C B3 D1 call printfshnamelong
36 D1:B37B CD F0 07 02 call _NewLine
37 D1:B37F CD F0 07 02 call _NewLine
38 D1:B383 21 41 A9 D1 ld hl, FshMotd2nd
39 D1:B387 CD C0 07 02 call _PutS
40 D1:B38B CD F0 07 02 call _NewLine
41 D1:B38F 21 57 A9 D1 ld hl, FshMotdHelp
42 D1:B393 CD C0 07 02 call _PutS
43 D1:B397 CD F0 07 02 call _NewLine
44 D1:B39B C9 - - - ret
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\fsh\fsh.inc"
6 D1:B39C - - - - #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:B39C - - - - ;;drawstatusbar
2 D1:B39C - - - - ;;draws the FSH status bar
3 D1:B39C - - - - drawstatusbar:
4 D1:B39C - - - - ;rgbto565(84, 84, 84)
5 D1:B39C 21 AA 52 00 ld hl, $52AA
6 D1:B3A0 3E 00 - - ld a, 0
7 D1:B3A2 01 1E 00 00 ld bc, 30
8 D1:B3A6 CD F6 AA D1 call drawbar
9 D1:B3AA - - - - ;rgbto565(0, 159, 209)
10 D1:B3AA 21 FA 04 00 ld hl, $04FA
11 D1:B3AE - - - - ;ld hl, %1111100000000000
12 D1:B3AE EB DD 6B DD
62 EB 21 02
00 00 11 00
00 00 01 00
00 00 0E 00
3E 1E CD 0B
AB 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:B3C8 CD 50 1A 02 call _DrawBatteryIndicator
14 D1:B3CC - - - - ;draw name
15 D1:B3CC FD CB 32 D6 set fracDrawLFont, (iy + fontFlags)
16 D1:B3D0 3E 06 - - ld a, 6
17 D1:B3D2 32 D5 08 D0 ld (penRow), a
18 D1:B3D6 3E 07 - - ld a, 7
19 D1:B3D8 32 D2 08 D0 ld (penCol), a
20 D1:B3DC 21 AA 52 00 ld hl, $52AA
21 D1:B3E0 22 AA 26 D0 ld (drawBGcolor), hl
22 D1:B3E4 21 FF FF 00 ld hl, $ffff
23 D1:B3E8 22 AC 26 D0 ld (drawFGcolor), hl
24 D1:B3EC 21 FC A8 D1 ld hl, FshName
25 D1:B3F0 CD 34 08 02 call _VPutS
26 D1:B3F4 21 FF FF 00 ld hl, $ffff
27 D1:B3F8 22 AA 26 D0 ld (drawBGcolor), hl
28 D1:B3FC 21 00 00 00 ld hl, $0000
29 D1:B400 22 AC 26 D0 ld (drawFGcolor), hl
30 D1:B404 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:B405 - - - - #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:B405 - - - - #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:B405 - - - - ;;rotletencrypt
2 D1:B405 - - - - ;;Encrypts a string in rot-n (uses $41 to $5B)
3 D1:B405 - - - - ;;Inputs:
4 D1:B405 - - - - ;; HL: string pointer
5 D1:B405 - - - - ;; A: rot-n
6 D1:B405 - - - - ;;Notes:
7 D1:B405 - - - - ;; Changes string in place.
8 D1:B405 - - - - rotletencrypt:
9 D1:B405 E5 - - - push hl
10 D1:B406 C5 - - - push bc
11 D1:B407 - - - - rotletencryptMod:
12 D1:B407 E5 - - - push hl
13 D1:B408 67 - - - ld h, a
14 D1:B409 2E 19 - - ld l, 'Z' + 1 - 'A' - 1
15 D1:B40B CD 99 A9 D1 call modHL
16 D1:B40F 44 - - - ld b, h
17 D1:B410 E1 - - - pop hl
18 D1:B411 - - - - rotletencryptLoop:
19 D1:B411 7E - - - ld a, (hl)
20 D1:B412 FE 00 - - cp a, $00
21 D1:B414 28 0F - - jr z, rotletencryptEnd
22 D1:B416 FE 20 - - cp a, ' '
23 D1:B418 28 07 - - jr z, rotletencryptLD
24 D1:B41A 80 - - - add a, b
25 D1:B41B FE 5C - - cp a, 'Z' + 2
26 D1:B41D 38 02 - - jr c , rotletencryptLD
27 D1:B41F D6 1B - - sub a, 'Z' + 2 - 'A'
28 D1:B421 - - - - rotletencryptLD:
29 D1:B421 77 - - - ld (hl), a
30 D1:B422 23 - - - inc hl
31 D1:B423 18 EC - - jr rotletencryptLoop
32 D1:B425 - - - - rotletencryptEnd:
33 D1:B425 36 00 - - ld (hl), $00
34 D1:B427 C1 - - - pop bc
35 D1:B428 E1 - - - pop hl
36 D1:B429 C9 - - - ret
37 D1:B42A - - - -
38 D1:B42A - - - - ;;rotletdecrypt
39 D1:B42A - - - - ;;Decrypts a string in rot-n (uses $41 to $5B)
40 D1:B42A - - - - ;;Inputs:
41 D1:B42A - - - - ;; HL: string pointer
42 D1:B42A - - - - ;; A: rot-n
43 D1:B42A - - - - ;;Notes:
44 D1:B42A - - - - ;; Changes string in place.
45 D1:B42A - - - - rotletdecrypt:
46 D1:B42A E5 - - - push hl
47 D1:B42B C5 - - - push bc
48 D1:B42C - - - - rotletdecryptMod:
49 D1:B42C E5 - - - push hl
50 D1:B42D 67 - - - ld h, a
51 D1:B42E 2E 19 - - ld l, 'Z' + 1 - 'A' - 1
52 D1:B430 CD 99 A9 D1 call modHL
53 D1:B434 44 - - - ld b, h
54 D1:B435 E1 - - - pop hl
55 D1:B436 - - - - rotletdecryptLoop:
56 D1:B436 7E - - - ld a, (hl)
57 D1:B437 FE 00 - - cp a, $00
58 D1:B439 28 0F - - jr z, rotletdecryptEnd
59 D1:B43B FE 20 - - cp a, ' '
60 D1:B43D 28 07 - - jr z, rotletdecryptLD
61 D1:B43F 90 - - - sub a, b
62 D1:B440 FE 41 - - cp a, 'A'
63 D1:B442 30 02 - - jr nc , rotletdecryptLD
64 D1:B444 C6 1B - - add a, 'Z' + 2 - 'A'
65 D1:B446 - - - - rotletdecryptLD:
66 D1:B446 77 - - - ld (hl), a
67 D1:B447 23 - - - inc hl
68 D1:B448 18 EC - - jr rotletdecryptLoop
69 D1:B44A - - - - rotletdecryptEnd:
70 D1:B44A 36 00 - - ld (hl), $00
71 D1:B44C C1 - - - pop bc
72 D1:B44D E1 - - - pop hl
73 D1:B44E C9 - - - ret
74 D1:B44F - - - -
75 D1:B44F - - - - ;;rotasciiencrypt
76 D1:B44F - - - - ;;Encrypts a string in rot-x (uses $00 to $EF)
77 D1:B44F - - - - ;;Inputs:
78 D1:B44F - - - - ;; HL: string pointer
79 D1:B44F - - - - ;; A: x
80 D1:B44F - - - - ;;Notes:
81 D1:B44F - - - - ;; Changes string in place.
82 D1:B44F - - - - rotasciiencrypt:
83 D1:B44F E5 - - - push hl
84 D1:B450 C5 - - - push bc
85 D1:B451 0E 00 - - ld c, 0
86 D1:B453 4F - - - ld c, a
87 D1:B454 - - - - rotasciiencryptLoop:
88 D1:B454 7E - - - ld a, (hl)
89 D1:B455 FE 00 - - cp 0
90 D1:B457 28 13 - - jr z, rotasciiencryptEnd
91 D1:B459 81 - - - add a, c
92 D1:B45A FE 00 - - cp 0
93 D1:B45C 20 01 - - jr nz, rotasciiencryptLd
94 D1:B45E 3C - - - inc a
95 D1:B45F - - - - rotasciiencryptLd:
96 D1:B45F 77 - - - ld (hl), a
97 D1:B460 23 - - - inc hl
98 D1:B461 FE EF - - cp a, $EF
99 D1:B463 38 EF - - jr c, rotasciiencryptLoop
100 D1:B465 2B - - - dec hl
101 D1:B466 D6 0F - - sub a, $0F
102 D1:B468 77 - - - ld (hl), a
103 D1:B469 23 - - - inc hl
104 D1:B46A 18 E8 - - jr rotasciiencryptLoop
105 D1:B46C - - - - rotasciiencryptEnd:
106 D1:B46C 36 00 - - ld (hl), $00
107 D1:B46E C1 - - - pop bc
108 D1:B46F E1 - - - pop hl
109 D1:B470 C9 - - - ret
110 D1:B471 - - - -
111 D1:B471 - - - - ;;rotasciidecrypt
112 D1:B471 - - - - ;;Encrypts a string in rot-x (uses $00 to $EF)
113 D1:B471 - - - - ;;Inputs:
114 D1:B471 - - - - ;; HL: string pointer
115 D1:B471 - - - - ;; A: x
116 D1:B471 - - - - ;;Notes:
117 D1:B471 - - - - ;; Changes string in place.
118 D1:B471 - - - - rotasciidecrypt:
119 D1:B471 E5 - - - push hl
120 D1:B472 C5 - - - push bc
121 D1:B473 0E 00 - - ld c, 0
122 D1:B475 4F - - - ld c, a
123 D1:B476 - - - - rotasciidecryptLoop:
124 D1:B476 7E - - - ld a, (hl)
125 D1:B477 FE 00 - - cp 0
126 D1:B479 28 13 - - jr z, rotasciidecryptEnd
127 D1:B47B 91 - - - sub a, c
128 D1:B47C FE 00 - - cp 0
129 D1:B47E 20 01 - - jr nz, rotasciidecryptLd
130 D1:B480 3D - - - dec a
131 D1:B481 - - - - rotasciidecryptLd:
132 D1:B481 77 - - - ld (hl), a
133 D1:B482 23 - - - inc hl
134 D1:B483 FE EF - - cp a, $EF
135 D1:B485 38 EF - - jr c, rotasciidecryptLoop
136 D1:B487 2B - - - dec hl
137 D1:B488 C6 0F - - add a, $0F
138 D1:B48A 77 - - - ld (hl), a
139 D1:B48B 23 - - - inc hl
140 D1:B48C 18 E8 - - jr rotasciidecryptLoop
141 D1:B48E - - - - rotasciidecryptEnd:
142 D1:B48E 36 00 - - ld (hl), $00
143 D1:B490 C1 - - - pop bc
144 D1:B491 E1 - - - pop hl
145 D1:B492 C9 - - - ret
146 D1:B493 - - - -
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\lib\crypto\crypto.inc"
Listing for file "FSHa.asm"
74 D1:B493 - - - -
75 D1:B493 - - - - #include "includes/man-db.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\man-db.asm"
1 D1:B493 - - - - ;;TODO: move module specific macros to diffrent file
2 D1:B493 - - - - ;;manroute
3 D1:B493 - - - - ;;routes command string to discription
4 D1:B493 - - - - ;;Inputs:
5 D1:B493 - - - - ;; HL: Command String
6 D1:B493 - - - - ;;Outputs:
7 D1:B493 - - - - ;; HL: Command Discription String
8 D1:B493 - - - - manroute:
9 D1:B493 D5 - - - push de
10 D1:B494 - - - - #macro routestrjp(cmdXs, cmdXm)
11 D1:B494 ld de, cmdXs
12 D1:B494 call strcmp
13 D1:B494 ld de, cmdXm
14 D1:B494 jp z, manrouteReturn
15 D1:B494 #endmacro
16 D1:B494 - - - -
17 D1:B494 CD 48 B6 D1 call fshcmdmanroute
18 D1:B498 CD 70 BF D1 call cryptocmdmanroute
19 D1:B49C - - - - ;Extention Point
20 D1:B49C - - - -
21 D1:B49C 21 CE EA D0 ld hl, FshCmdErrCode
22 D1:B4A0 36 01 - - ld (hl), $01
23 D1:B4A2 11 00 00 00 ld de, $00
24 D1:B4A6 - - - - manrouteReturn:
25 D1:B4A6 EB - - - ex de, hl
26 D1:B4A7 D1 - - - pop de
27 D1:B4A8 C9 - - - ret
28 D1:B4A9 - - - -
29 D1:B4A9 - - - - ;;manrouteu
30 D1:B4A9 - - - - ;;routes command string to usage
31 D1:B4A9 - - - - ;;Inputs:
32 D1:B4A9 - - - - ;; HL: Command String
33 D1:B4A9 - - - - ;;Outputs:
34 D1:B4A9 - - - - ;; HL: Command Usage String
35 D1:B4A9 - - - - manrouteu:
36 D1:B4A9 D5 - - - push de
37 D1:B4AA - - - - #macro routeustrjp(cmdXs, cmdXu)
38 D1:B4AA ld de, cmdXs
39 D1:B4AA call strcmp
40 D1:B4AA ld de, cmdXu
41 D1:B4AA jp z, manrouteuReturn
42 D1:B4AA #endmacro
43 D1:B4AA - - - -
44 D1:B4AA CD FB B6 D1 call fshcmdmanrouteu
45 D1:B4AE CD 8F BF D1 call cryptocmdmanrouteu
46 D1:B4B2 - - - - ;Extention Point
47 D1:B4B2 - - - -
48 D1:B4B2 21 CE EA D0 ld hl, FshCmdErrCode
49 D1:B4B6 36 01 - - ld (hl), $01
50 D1:B4B8 11 00 00 00 ld de, $00
51 D1:B4BC - - - - manrouteuReturn:
52 D1:B4BC EB - - - ex de, hl
53 D1:B4BD D1 - - - pop de
54 D1:B4BE C9 - - - ret
Listing for file "FSHa.asm"
76 D1:B4BF - - - - #include "includes/Command.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\Command.asm"
1 D1:B4BF - - - - ;;Commanddecode
2 D1:B4BF - - - - ;;Decodes all commands.
3 D1:B4BF - - - - ;;Inputs:
4 D1:B4BF - - - - ;; HL: Cmd String mem loc
5 D1:B4BF - - - - ;; DE: Op code mem loc
6 D1:B4BF - - - - ;;Output:
7 D1:B4BF - - - - ;; Sets (DE) with command op code
8 D1:B4BF - - - - commanddecode:
9 D1:B4BF CD E4 B4 D1 call fshcmddecode
10 D1:B4C3 CD 2C BF D1 call cryptocmddecode
11 D1:B4C7 - - - - ;Extention Point
12 D1:B4C7 - - - -
13 D1:B4C7 C9 - - - ret
14 D1:B4C8 - - - -
15 D1:B4C8 - - - - ;;commandroute
16 D1:B4C8 - - - - ;;Routes all commamds.
17 D1:B4C8 - - - - ;;Inputs:
18 D1:B4C8 - - - - ;; HL: Op code mem loc
19 D1:B4C8 - - - - commandroute:
20 D1:B4C8 CD C1 B5 D1 call fshcmdroute
21 D1:B4CC CD 55 BF D1 call cryptocmdroute
22 D1:B4D0 - - - - ;Extention Point
23 D1:B4D0 - - - -
24 D1:B4D0 21 49 B2 D1 ld hl, ErrCmdNotFoundo
25 D1:B4D4 11 CE EA D0 ld de, FshCmdErrCode
26 D1:B4D8 CD DA A9 D1 call bytecpy
27 D1:B4DC CD 3A B2 D1 call ErrSet
28 D1:B4E0 C3 DF A8 D1 jp Err
29 D1:B4E4 - - - -
30 D1:B4E4 - - - - #include "includes/FshCommands/FshCommand.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommand.asm"
1 D1:B4E4 - - - - fshcmddecode:
2 D1:B4E4 E5 D5 11 AE
B7 D1 CD 4A
AB D1 21 B3
B7 D1 D1 CC
DA A9 D1 E1 decodecmdopt(fshcmdEXIT, fshcmdEXITo)
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommand.asm"
3 D1:B4F8 E5 D5 11 C7
B7 D1 CD 4A
AB D1 21 CB
B7 D1 D1 CC
DA A9 D1 E1 decodecmdopt(fshcmdSET, fshcmdSETo)
4 D1:B50C E5 D5 11 BE
B8 D1 CD 4A
AB D1 21 C3
B8 D1 D1 CC
DA A9 D1 E1 decodecmdopt(fshcmdCOPY, fshcmdCOPYo)
5 D1:B520 E5 D5 11 CC
B9 D1 CD 4A
AB D1 21 D1
B9 D1 D1 CC
DA A9 D1 E1 decodecmdopt(fshcmdMOVE, fshcmdMOVEo)
6 D1:B534 E5 D5 11 E2
BA D1 CD 4A
AB D1 21 E6
BA D1 D1 CC
DA A9 D1 E1 decodecmdopt(fshcmdCLS, fshcmdCLSo)
7 D1:B548 E5 D5 11 0E
BB D1 CD 4A
AB D1 21 12
BB D1 D1 CC
DA A9 D1 E1 decodecmdopt(fshcmdVAR, fshcmdVARo)
8 D1:B55C E5 D5 11 B0
BB D1 CD 4A
AB D1 21 B5
BB D1 D1 CC
DA A9 D1 E1 decodecmdopt(fshcmdVARS, fshcmdVARSo)
9 D1:B570 E5 D5 11 20
BC D1 CD 4A
AB D1 21 26
BC D1 D1 CC
DA A9 D1 E1 decodecmdopt(fshcmdSLEEP, fshcmdSLEEPo)
10 D1:B584 E5 D5 11 6E
BC D1 CD 4A
AB D1 21 73
BC D1 D1 CC
DA A9 D1 E1 decodecmdopt(fshcmdINFO, fshcmdINFOo)
11 D1:B598 E5 D5 11 10
BD D1 CD 4A
AB D1 21 15
BD D1 D1 CC
DA A9 D1 E1 decodecmdopt(fshcmdHELP, fshcmdHELPo)
12 D1:B5AC E5 D5 11 44
BE D1 CD 4A
AB D1 21 48
BE D1 D1 CC
DA A9 D1 E1 decodecmdopt(fshcmdMAN, fshcmdMANo)
13 D1:B5C0 C9 - - - ret
14 D1:B5C1 - - - -
15 D1:B5C1 - - - - fshcmdroute:
16 D1:B5C1 C1 - - - pop bc ;pop the ret loc from stack into bc
17 D1:B5C2 11 B3 B7 D1
CD D2 A9 D1
CA C3 B7 D1 routeoptjp(fshcmdEXITo, fshcmdEXITf)
18 D1:B5CE 11 CB B7 D1
CD D2 A9 D1
CA 09 B8 D1 routeoptjp(fshcmdSETo, fshcmdSETf)
19 D1:B5DA 11 C3 B8 D1
CD D2 A9 D1
CA 1E B9 D1 routeoptjp(fshcmdCOPYo, fshcmdCOPYf)
20 D1:B5E6 11 D1 B9 D1
CD D2 A9 D1
CA 2B BA D1 routeoptjp(fshcmdMOVEo, fshcmdMOVEf)
21 D1:B5F2 11 E6 BA D1
CD D2 A9 D1
CA FD BA D1 routeoptjp(fshcmdCLSo, fshcmdCLSf)
22 D1:B5FE 11 12 BB D1
CD D2 A9 D1
CA 49 BB D1 routeoptjp(fshcmdVARo, fshcmdVARf)
23 D1:B60A 11 B5 BB D1
CD D2 A9 D1
CA D1 BB D1 routeoptjp(fshcmdVARSo, fshcmdVARSf)
24 D1:B616 11 26 BC D1
CD D2 A9 D1
CA 57 BC D1 routeoptjp(fshcmdSLEEPo, fshcmdSLEEPf)
25 D1:B622 11 73 BC D1
CD D2 A9 D1
CA 9F BC D1 routeoptjp(fshcmdINFOo, fshcmdINFOf)
26 D1:B62E 11 15 BD D1
CD D2 A9 D1
CA 31 BD D1 routeoptjp(fshcmdHELPo, fshcmdHELPf)
27 D1:B63A 11 48 BE D1
CD D2 A9 D1
CA 75 BE D1 routeoptjp(fshcmdMANo, fshcmdMANf)
28 D1:B646 C5 - - - push bc ;put ret location back on stack
29 D1:B647 C9 - - - ret
30 D1:B648 - - - -
31 D1:B648 - - - - fshcmdmanroute:
32 D1:B648 C1 - - - pop bc
33 D1:B649 11 AE B7 D1
CD 4A AB D1
11 B4 B7 D1
CA A6 B4 D1 routestrjp(fshcmdEXIT, fshCmdEXITm)
34 D1:B659 11 C7 B7 D1
CD 4A AB D1
11 CC B7 D1
CA A6 B4 D1 routestrjp(fshcmdSET, fshCmdSETm)
35 D1:B669 11 BE B8 D1
CD 4A AB D1
11 C4 B8 D1
CA A6 B4 D1 routestrjp(fshcmdCOPY, fshCmdCOPYm)
36 D1:B679 11 CC B9 D1
CD 4A AB D1
11 D2 B9 D1
CA A6 B4 D1 routestrjp(fshcmdMOVE, fshCmdMOVEm)
37 D1:B689 11 E2 BA D1
CD 4A AB D1
11 E7 BA D1
CA A6 B4 D1 routestrjp(fshcmdCLS, fshCmdCLSm)
38 D1:B699 11 0E BB D1
CD 4A AB D1
11 13 BB D1
CA A6 B4 D1 routestrjp(fshcmdVAR, fshCmdVARm)
39 D1:B6A9 11 B0 BB D1
CD 4A AB D1
11 B6 BB D1
CA A6 B4 D1 routestrjp(fshcmdVARS, fshCmdVARSm)
40 D1:B6B9 11 20 BC D1
CD 4A AB D1
11 27 BC D1
CA A6 B4 D1 routestrjp(fshcmdSLEEP, fshCmdSLEEPm)
41 D1:B6C9 11 6E BC D1
CD 4A AB D1
11 74 BC D1
CA A6 B4 D1 routestrjp(fshcmdINFO, fshCmdINFOm)
42 D1:B6D9 11 10 BD D1
CD 4A AB D1
11 16 BD D1
CA A6 B4 D1 routestrjp(fshcmdHELP, fshCmdHELPm)
43 D1:B6E9 11 44 BE D1
CD 4A AB D1
11 49 BE D1
CA A6 B4 D1 routestrjp(fshcmdMAN, fshCmdMANm)
44 D1:B6F9 C5 - - - push bc
45 D1:B6FA C9 - - - ret
46 D1:B6FB - - - -
47 D1:B6FB - - - - fshcmdmanrouteu:
48 D1:B6FB C1 - - - pop bc
49 D1:B6FC 11 AE B7 D1
CD 4A AB D1
11 BE B7 D1
CA BC B4 D1 routeustrjp(fshcmdEXIT, fshCmdEXITu)
50 D1:B70C 11 C7 B7 D1
CD 4A AB D1
11 E7 B7 D1
CA BC B4 D1 routeustrjp(fshcmdSET, fshCmdSETu)
51 D1:B71C 11 BE B8 D1
CD 4A AB D1
11 F2 B8 D1
CA BC B4 D1 routeustrjp(fshcmdCOPY, fshCmdCOPYu)
52 D1:B72C 11 CC B9 D1
CD 4A AB D1
11 FF B9 D1
CA BC B4 D1 routeustrjp(fshcmdMOVE, fshCmdMOVEu)
53 D1:B73C 11 E2 BA D1
CD 4A AB D1
11 F9 BA D1
CA BC B4 D1 routeustrjp(fshcmdCLS, fshCmdCLSu)
54 D1:B74C 11 0E BB D1
CD 4A AB D1
11 34 BB D1
CA BC B4 D1 routeustrjp(fshcmdVAR, fshCmdVARu)
55 D1:B75C 11 B0 BB D1
CD 4A AB D1
11 CC BB D1
CA BC B4 D1 routeustrjp(fshcmdVARS, fshCmdVARSu)
56 D1:B76C 11 20 BC D1
CD 4A AB D1
11 51 BC D1
CA BC B4 D1 routeustrjp(fshcmdSLEEP, fshCmdSLEEPu)
57 D1:B77C 11 6E BC D1
CD 4A AB D1
11 9A BC D1
CA BC B4 D1 routeustrjp(fshcmdINFO, fshCmdINFOu)
58 D1:B78C 11 10 BD D1
CD 4A AB D1
11 2C BD D1
CA BC B4 D1 routeustrjp(fshcmdHELP, fshCmdHELPu)
59 D1:B79C 11 44 BE D1
CD 4A AB D1
11 67 BE D1
CA BC B4 D1 routeustrjp(fshcmdMAN, fshCmdMANu)
60 D1:B7AC C5 - - - push bc
61 D1:B7AD C9 - - - ret
62 D1:B7AE - - - -
63 D1:B7AE - - - - #include "includes/FshCommands/FshCommands.inc"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommands.inc"
1 D1:B7AE - - - - #include "includes/FshCommands/EXIT.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\EXIT.asm"
1 D1:B7AE 45 58 49 54
00 - - - fshcmdEXIT: .db "EXIT", 0
2 D1:B7B3 FF - - - fshcmdEXITo: .db $FF
3 D1:B7B4 45 78 69 74
73 20 46 73
68 00 - - fshcmdEXITm: .db "Exits Fsh", 0
4 D1:B7BE 45 58 49 54
00 - - - fshcmdEXITu: .db "EXIT", 0
5 D1:B7C3 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:B7C7 - - - - #include "includes/FshCommands/SET.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\SET.asm"
1 D1:B7C7 53 45 54 00 fshcmdSET: .db "SET", 0
2 D1:B7CB 01 - - - fshcmdSETo: .db $01
3 D1:B7CC 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:B7E7 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:B809 - - - - fshcmdSETf:
6 D1:B809 - - - - fshcmdSETfArg0:
7 D1:B809 21 CD EA D0 ld hl, FshCmdArgFlags
8 D1:B80D CB 4E - - bit 1, (hl)
9 D1:B80F 20 34 - - jr nz, fshcmdSETfArg1
10 D1:B811 CB 46 - - bit 0, (hl)
11 D1:B813 28 0C - - jr z, fshcmdSETfArg0Get
12 D1:B815 21 CF B2 D1 ld hl, ErrUsageo
13 D1:B819 CD 3A B2 D1 call ErrSet
14 D1:B81D CD ED B1 D1 call ErrCatch
15 D1:B821 - - - - fshcmdSETfArg0Get:
16 D1:B821 21 A8 B8 D1 ld hl, fshcmdSETfDIndex
17 D1:B825 CD 98 AA D1 call printprompt
18 D1:B829 21 A2 B8 D1 ld hl, fshcmdSETfInputBuffer
19 D1:B82D 11 03 00 00 ld de, 3
20 D1:B831 CD BE AE D1 call inputnumstr
21 D1:B835 CD D4 AB D1 call strtow
22 D1:B839 11 A8 EA D0 ld de, FshCmdArg0
23 D1:B83D EB - - - ex de, hl
24 D1:B83E 73 - - - ld (hl), e
25 D1:B83F 23 - - - inc hl
26 D1:B840 72 - - - ld (hl), d
27 D1:B841 CD F0 07 02 call _NewLine
28 D1:B845 - - - - fshcmdSETfArg1:
29 D1:B845 21 CD EA D0 ld hl, FshCmdArgFlags
30 D1:B849 CB 5E - - bit 3, (hl)
31 D1:B84B 20 34 - - jr nz, fshcmdSETfExe
32 D1:B84D CB 56 - - bit 2, (hl)
33 D1:B84F 28 0C - - jr z, fshcmdSETfArg1Get
34 D1:B851 21 CF B2 D1 ld hl, ErrUsageo
35 D1:B855 CD 3A B2 D1 call ErrSet
36 D1:B859 CD ED B1 D1 call ErrCatch
37 D1:B85D - - - - fshcmdSETfArg1Get:
38 D1:B85D 21 B6 B8 D1 ld hl, fshcmdSETfDValue
39 D1:B861 CD 98 AA D1 call printprompt
40 D1:B865 21 A2 B8 D1 ld hl, fshcmdSETfInputBuffer
41 D1:B869 11 05 00 00 ld de, 5
42 D1:B86D CD BE AE D1 call inputnumstr
43 D1:B871 CD D4 AB D1 call strtow
44 D1:B875 EB - - - ex de, hl
45 D1:B876 21 B1 EA D0 ld hl, FshCmdArg1
46 D1:B87A 73 - - - ld (hl), e
47 D1:B87B 23 - - - inc hl
48 D1:B87C 72 - - - ld (hl), d
49 D1:B87D CD F0 07 02 call _NewLine
50 D1:B881 - - - - fshcmdSETfExe:
51 D1:B881 21 A8 EA D0 ld hl, FshCmdArg0
52 D1:B885 11 00 00 00 ld de, 0
53 D1:B889 5E - - - ld e, (hl)
54 D1:B88A 23 - - - inc hl
55 D1:B88B 56 - - - ld d, (hl)
56 D1:B88C D5 - - - push de
57 D1:B88D 21 B1 EA D0 ld hl, FshCmdArg1
58 D1:B891 5E - - - ld e, (hl)
59 D1:B892 23 - - - inc hl
60 D1:B893 56 - - - ld d, (hl)
61 D1:B894 EB - - - ex de, hl
62 D1:B895 D1 - - - pop de
63 D1:B896 CD 3D B1 D1 call fshvarset
64 D1:B89A CD ED B1 D1 call ErrCatch
65 D1:B89E C3 DB A8 D1 jp Fin
66 D1:B8A2 - - - -
67 D1:B8A2 00 00 00 00
00 00 - - fshcmdSETfInputBuffer: .db $00, $00, $00, $00, $00, $00
68 D1:B8A8 44 65 73 74
69 6E 61 74
69 6F 6E 3D
20 00 - - fshcmdSETfDIndex: .db "Destination= ", 0
69 D1:B8B6 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:B8BE - - - - #include "includes/FshCommands/COPY.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\COPY.asm"
1 D1:B8BE 43 4F 50 59
00 - - - fshcmdCOPY: .db "COPY", 0
2 D1:B8C3 02 - - - fshcmdCOPYo: .db $02
3 D1:B8C4 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:B8F2 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:B91E - - - - fshcmdCOPYf:
6 D1:B91E - - - - fshcmdCOPYfArg0:
7 D1:B91E 21 CD EA D0 ld hl, FshCmdArgFlags
8 D1:B922 CB 4E - - bit 1, (hl)
9 D1:B924 20 31 - - jr nz, fshcmdCOPYfArg1
10 D1:B926 CB 46 - - bit 0, (hl)
11 D1:B928 28 0C - - jr z, fshcmdCOPYfArg0Get
12 D1:B92A 21 CF B2 D1 ld hl, ErrUsageo
13 D1:B92E CD 3A B2 D1 call ErrSet
14 D1:B932 CD ED B1 D1 call ErrCatch
15 D1:B936 - - - - fshcmdCOPYfArg0Get:
16 D1:B936 21 B5 B9 D1 ld hl, fshcmdCOPYfDSource
17 D1:B93A CD 98 AA D1 call printprompt
18 D1:B93E 21 B1 B9 D1 ld hl, fshcmdCOPYfInputBuffer
19 D1:B942 11 03 00 00 ld de, 3
20 D1:B946 CD BE AE D1 call inputnumstr
21 D1:B94A CD 77 AB D1 call strtob
22 D1:B94E 21 A8 EA D0 ld hl, FshCmdArg0
23 D1:B952 77 - - - ld (hl), a
24 D1:B953 CD F0 07 02 call _NewLine
25 D1:B957 - - - - fshcmdCOPYfArg1:
26 D1:B957 21 CD EA D0 ld hl, FshCmdArgFlags
27 D1:B95B CB 5E - - bit 3, (hl)
28 D1:B95D 20 31 - - jr nz, fshcmdCOPYfExe
29 D1:B95F CB 56 - - bit 2, (hl)
30 D1:B961 28 0C - - jr z, fshcmdCOPYfArg1Get
31 D1:B963 21 CF B2 D1 ld hl, ErrUsageo
32 D1:B967 CD 3A B2 D1 call ErrSet
33 D1:B96B CD ED B1 D1 call ErrCatch
34 D1:B96F - - - - fshcmdCOPYfArg1Get:
35 D1:B96F 21 B5 B9 D1 ld hl, fshcmdCOPYfDSource
36 D1:B973 CD 98 AA D1 call printprompt
37 D1:B977 21 B1 B9 D1 ld hl, fshcmdCOPYfInputBuffer
38 D1:B97B 11 03 00 00 ld de, 3
39 D1:B97F CD BE AE D1 call inputnumstr
40 D1:B983 CD 77 AB D1 call strtob
41 D1:B987 21 B1 EA D0 ld hl, FshCmdArg1
42 D1:B98B 77 - - - ld (hl), a
43 D1:B98C CD F0 07 02 call _NewLine
44 D1:B990 - - - - fshcmdCOPYfExe:
45 D1:B990 21 A8 EA D0 ld hl, FshCmdArg0
46 D1:B994 11 00 00 00 ld de, 0
47 D1:B998 5E - - - ld e, (hl)
48 D1:B999 EB - - - ex de, hl
49 D1:B99A E5 - - - push hl
50 D1:B99B 21 B1 EA D0 ld hl, FshCmdArg1
51 D1:B99F 11 00 00 00 ld de, 0
52 D1:B9A3 5E - - - ld e, (hl)
53 D1:B9A4 E1 - - - pop hl
54 D1:B9A5 CD 90 B1 D1 call fshvarcpy
55 D1:B9A9 CD ED B1 D1 call ErrCatch
56 D1:B9AD C3 DB A8 D1 jp Fin
57 D1:B9B1 - - - -
58 D1:B9B1 00 00 00 00 fshcmdCOPYfInputBuffer: .db $00, $00, $00, $00
59 D1:B9B5 53 6F 75 72
63 65 3D 20
00 - - - fshcmdCOPYfDSource: .db "Source= ", 0
60 D1:B9BE 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:B9CC - - - - #include "includes/FshCommands/MOVE.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\MOVE.asm"
1 D1:B9CC 4D 4F 56 45
00 - - - fshcmdMOVE: .db "MOVE", 0
2 D1:B9D1 03 - - - fshcmdMOVEo: .db $03
3 D1:B9D2 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:B9FF 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:BA2B - - - - fshcmdMOVEf:
6 D1:BA2B - - - - fshcmdMOVEfArg0:
7 D1:BA2B 21 CD EA D0 ld hl, FshCmdArgFlags
8 D1:BA2F CB 4E - - bit 1, (hl)
9 D1:BA31 20 31 - - jr nz, fshcmdMOVEfArg1
10 D1:BA33 CB 46 - - bit 0, (hl)
11 D1:BA35 28 0C - - jr z, fshcmdMOVEfArg0Get
12 D1:BA37 21 CF B2 D1 ld hl, ErrUsageo
13 D1:BA3B CD 3A B2 D1 call ErrSet
14 D1:BA3F CD ED B1 D1 call ErrCatch
15 D1:BA43 - - - - fshcmdMOVEfArg0Get:
16 D1:BA43 21 CB BA D1 ld hl, fshcmdMOVEfDSource
17 D1:BA47 CD 98 AA D1 call printprompt
18 D1:BA4B 21 C7 BA D1 ld hl, fshcmdMOVEfInputBuffer
19 D1:BA4F 11 03 00 00 ld de, 3
20 D1:BA53 CD BE AE D1 call inputnumstr
21 D1:BA57 CD 77 AB D1 call strtob
22 D1:BA5B 21 A8 EA D0 ld hl, FshCmdArg0
23 D1:BA5F 77 - - - ld (hl), a
24 D1:BA60 CD F0 07 02 call _NewLine
25 D1:BA64 - - - - fshcmdMOVEfArg1:
26 D1:BA64 21 CD EA D0 ld hl, FshCmdArgFlags
27 D1:BA68 CB 5E - - bit 3, (hl)
28 D1:BA6A 20 31 - - jr nz, fshcmdMOVEfExe
29 D1:BA6C CB 56 - - bit 2, (hl)
30 D1:BA6E 28 0C - - jr z, fshcmdMOVEfArg1Get
31 D1:BA70 21 CF B2 D1 ld hl, ErrUsageo
32 D1:BA74 CD 3A B2 D1 call ErrSet
33 D1:BA78 CD ED B1 D1 call ErrCatch
34 D1:BA7C - - - - fshcmdMOVEfArg1Get:
35 D1:BA7C 21 D4 BA D1 ld hl, fshcmdMOVEfDDestination
36 D1:BA80 CD 98 AA D1 call printprompt
37 D1:BA84 21 C7 BA D1 ld hl, fshcmdMOVEfInputBuffer
38 D1:BA88 11 03 00 00 ld de, 3
39 D1:BA8C CD BE AE D1 call inputnumstr
40 D1:BA90 CD 77 AB D1 call strtob
41 D1:BA94 21 B1 EA D0 ld hl, FshCmdArg1
42 D1:BA98 77 - - - ld (hl), a
43 D1:BA99 CD F0 07 02 call _NewLine
44 D1:BA9D - - - - fshcmdMOVEfExe:
45 D1:BA9D 21 A8 EA D0 ld hl, FshCmdArg0
46 D1:BAA1 11 00 00 00 ld de, 0
47 D1:BAA5 5E - - - ld e, (hl)
48 D1:BAA6 EB - - - ex de, hl
49 D1:BAA7 E5 - - - push hl
50 D1:BAA8 21 B1 EA D0 ld hl, FshCmdArg1
51 D1:BAAC 11 00 00 00 ld de, 0
52 D1:BAB0 5E - - - ld e, (hl)
53 D1:BAB1 E1 - - - pop hl
54 D1:BAB2 CD 90 B1 D1 call fshvarcpy
55 D1:BAB6 EB - - - ex de, hl
56 D1:BAB7 21 00 00 00 ld hl, 0
57 D1:BABB CD 3D B1 D1 call fshvarset
58 D1:BABF CD ED B1 D1 call ErrCatch
59 D1:BAC3 C3 DB A8 D1 jp Fin
60 D1:BAC7 - - - -
61 D1:BAC7 00 00 00 00 fshcmdMOVEfInputBuffer: .db $00, $00, $00, $00
62 D1:BACB 53 6F 75 72
63 65 3D 20
00 - - - fshcmdMOVEfDSource: .db "Source= ", 0
63 D1:BAD4 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:BAE2 - - - - #include "includes/FshCommands/CLS.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\CLS.asm"
1 D1:BAE2 43 4C 53 00 fshcmdCLS: .db "CLS", 0
2 D1:BAE6 10 - - - fshcmdCLSo: .db $10
3 D1:BAE7 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:BAF9 43 4C 53 00 fshcmdCLSu: .db "CLS", 0
5 D1:BAFD - - - - fshcmdCLSf:
6 D1:BAFD CD 08 08 02 call _ClrLCDFull
7 D1:BB01 AF - - - xor a
8 D1:BB02 32 95 05 D0 ld (CurRow), a
9 D1:BB06 32 96 05 D0 ld (CurCol), a
10 D1:BB0A C3 DB A8 D1 jp Fin
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommands.inc"
6 D1:BB0E - - - - #include "includes/FshCommands/VAR.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\VAR.asm"
1 D1:BB0E 56 41 52 00 fshcmdVAR: .db "VAR", 0
2 D1:BB12 11 - - - fshcmdVARo: .db $11
3 D1:BB13 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:BB34 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:BB49 - - - - fshcmdVARf:
6 D1:BB49 - - - - fshcmdVARfArg0:
7 D1:BB49 21 CD EA D0 ld hl, FshCmdArgFlags
8 D1:BB4D CB 4E - - bit 1, (hl)
9 D1:BB4F 20 34 - - jr nz, fshcmdVARfExe
10 D1:BB51 CB 46 - - bit 0, (hl)
11 D1:BB53 28 0C - - jr z, fshcmdVARfArg0Get
12 D1:BB55 21 CF B2 D1 ld hl, ErrUsageo
13 D1:BB59 CD 3A B2 D1 call ErrSet
14 D1:BB5D CD ED B1 D1 call ErrCatch
15 D1:BB61 - - - - fshcmdVARfArg0Get:
16 D1:BB61 21 A8 BB D1 ld hl, fshcmdVARfDIndex
17 D1:BB65 CD 98 AA D1 call printprompt
18 D1:BB69 21 A4 BB D1 ld hl, fshcmdVARfInputBuffer
19 D1:BB6D 11 03 00 00 ld de, 3
20 D1:BB71 CD BE AE D1 call inputnumstr
21 D1:BB75 CD D4 AB D1 call strtow
22 D1:BB79 11 A8 EA D0 ld de, FshCmdArg0
23 D1:BB7D EB - - - ex de, hl
24 D1:BB7E 73 - - - ld (hl), e
25 D1:BB7F 23 - - - inc hl
26 D1:BB80 72 - - - ld (hl), d
27 D1:BB81 CD F0 07 02 call _NewLine
28 D1:BB85 - - - - fshcmdVARfExe:
29 D1:BB85 21 A8 EA D0 ld hl, FshCmdArg0
30 D1:BB89 11 00 00 00 ld de, 0
31 D1:BB8D 5E - - - ld e, (hl)
32 D1:BB8E 23 - - - inc hl
33 D1:BB8F 56 - - - ld d, (hl)
34 D1:BB90 CD 65 B1 D1 call fshvarget
35 D1:BB94 CD ED B1 D1 call ErrCatch
36 D1:BB98 CD BC 07 02 call _DispHL_s
37 D1:BB9C CD F0 07 02 call _NewLine
38 D1:BBA0 C3 DB A8 D1 jp Fin
39 D1:BBA4 - - - -
40 D1:BBA4 00 00 00 00 fshcmdVARfInputBuffer: .db $00, $00, $00, $00
41 D1:BBA8 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:BBB0 - - - - #include "includes/FshCommands/VARS.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\VARS.asm"
1 D1:BBB0 56 41 52 53
00 - - - fshcmdVARS: .db "VARS", 0
2 D1:BBB5 12 - - - fshcmdVARSo: .db $12
3 D1:BBB6 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:BBCC 56 41 52 53
00 - - - fshcmdVARSu: .db "VARS", 0
5 D1:BBD1 - - - - fshcmdVARSf:
6 D1:BBD1 21 CD EA D0 ld hl, FshCmdArgFlags
7 D1:BBD5 CB 46 - - bit 0, (hl)
8 D1:BBD7 28 0C - - jr z, fshcmdVARSfExe
9 D1:BBD9 21 CF B2 D1 ld hl, ErrUsageo
10 D1:BBDD CD 3A B2 D1 call ErrSet
11 D1:BBE1 CD ED B1 D1 call ErrCatch
12 D1:BBE5 - - - - fshcmdVARSfExe:
13 D1:BBE5 06 00 - - ld b, 0
14 D1:BBE7 0E 00 - - ld c, 0
15 D1:BBE9 11 00 00 00 ld de, 0
16 D1:BBED - - - - fshcmdVARSfLoop:
17 D1:BBED CD 65 B1 D1 call fshvarget
18 D1:BBF1 7C - - - ld a, h
19 D1:BBF2 CD B8 07 02 call _PutC
20 D1:BBF6 7D - - - ld a, l
21 D1:BBF7 CD B8 07 02 call _PutC
22 D1:BBFB 79 - - - ld a, c
23 D1:BBFC 0C - - - inc c
24 D1:BBFD FE 07 - - cp 7
25 D1:BBFF 20 0E - - jr nz, fshcmdVARSfLoopU
26 D1:BC01 E5 - - - push hl
27 D1:BC02 C5 - - - push bc
28 D1:BC03 D5 - - - push de
29 D1:BC04 CD F0 07 02 call _NewLine
30 D1:BC08 D1 - - - pop de
31 D1:BC09 C1 - - - pop bc
32 D1:BC0A E1 - - - pop hl
33 D1:BC0B 0E 00 - - ld c, 0
34 D1:BC0D 18 06 - - jr fshcmdVARSfLoopEnd
35 D1:BC0F - - - - fshcmdVARSfLoopU:
36 D1:BC0F 3E 5F - - ld a, '_'
37 D1:BC11 CD B8 07 02 call _PutC
38 D1:BC15 - - - - fshcmdVARSfLoopEnd:
39 D1:BC15 04 - - - inc b
40 D1:BC16 13 - - - inc de
41 D1:BC17 78 - - - ld a, b
42 D1:BC18 FE 40 - - cp FshVarsSize / 2
43 D1:BC1A 38 D1 - - jr c, fshcmdVARSfLoop
44 D1:BC1C C3 DB A8 D1 jp Fin
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommands.inc"
8 D1:BC20 - - - - #include "includes/FshCommands/SLEEP.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\SLEEP.asm"
1 D1:BC20 53 4C 45 45
50 00 - - fshcmdSLEEP: .db "SLEEP", 0
2 D1:BC26 16 - - - fshcmdSLEEPo: .db $16
3 D1:BC27 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:BC51 53 4C 45 45
50 00 - - fshcmdSLEEPu: .db "SLEEP", 0
5 D1:BC57 - - - - fshcmdSLEEPf:
6 D1:BC57 F3 - - - di
7 D1:BC58 CD 38 11 02 call _EnableAPD
8 D1:BC5C 3E 01 - - ld a,1
9 D1:BC5E 21 90 05 D0 ld hl,apdSubTimer
10 D1:BC62 77 - - - ld (hl),a
11 D1:BC63 23 - - - inc hl
12 D1:BC64 77 - - - ld (hl),a
13 D1:BC65 FD CB 08 DE set apdRunning,(iy+apdFlags)
14 D1:BC69 FB - - - ei
15 D1:BC6A C3 DB A8 D1 jp Fin
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\FshCommands.inc"
9 D1:BC6E - - - - #include "includes/FshCommands/INFO.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\INFO.asm"
1 D1:BC6E 49 4E 46 4F
00 - - - fshcmdINFO: .db "INFO", 0
2 D1:BC73 20 - - - fshcmdINFOo: .db $20
3 D1:BC74 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:BC9A 49 4E 46 4F
00 - - - fshcmdINFOu: .db "INFO", 0
5 D1:BC9F - - - - fshcmdINFOf:
6 D1:BC9F 21 CD EA D0 ld hl, FshCmdArgFlags
7 D1:BCA3 CB 46 - - bit 0, (hl)
8 D1:BCA5 28 0C - - jr z, fshcmdINFOfExe
9 D1:BCA7 21 CF B2 D1 ld hl, ErrUsageo
10 D1:BCAB CD 3A B2 D1 call ErrSet
11 D1:BCAF CD ED B1 D1 call ErrCatch
12 D1:BCB3 - - - - fshcmdINFOfExe:
13 D1:BCB3 CD 08 08 02 call _ClrLCDFull
14 D1:BCB7 AF - - - xor a
15 D1:BCB8 32 95 05 D0 ld (CurRow), a
16 D1:BCBC 32 96 05 D0 ld (CurCol), a
17 D1:BCC0 - - - -
18 D1:BCC0 CD 1C B3 D1 call printfshnamelong
19 D1:BCC4 CD F0 07 02 call _NewLine
20 D1:BCC8 - - - -
21 D1:BCC8 21 06 A9 D1 ld hl, FshBy
22 D1:BCCC CD C0 07 02 call _PutS
23 D1:BCD0 CD F0 07 02 call _NewLine
24 D1:BCD4 - - - -
25 D1:BCD4 21 10 A9 D1 ld hl, FshSite
26 D1:BCD8 CD C0 07 02 call _PutS
27 D1:BCDC CD F0 07 02 call _NewLine
28 D1:BCE0 - - - -
29 D1:BCE0 CD F0 07 02 call _NewLine
30 D1:BCE4 21 08 BD D1 ld hl, fshcmdINFOfSPS1
31 D1:BCE8 CD C0 07 02 call _PutS
32 D1:BCEC 3E 27 - - ld a, $27
33 D1:BCEE CD B8 07 02 call _PutC
34 D1:BCF2 21 2B A9 D1 ld hl, PS1
35 D1:BCF6 CD C0 07 02 call _PutS
36 D1:BCFA 3E 27 - - ld a, $27
37 D1:BCFC CD B8 07 02 call _PutC
38 D1:BD00 CD F0 07 02 call _NewLine
39 D1:BD04 - - - -
40 D1:BD04 C3 DB A8 D1 jp Fin
41 D1:BD08 - - - -
42 D1:BD08 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:BD10 - - - - #include "includes/FshCommands/HELP.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\HELP.asm"
1 D1:BD10 48 45 4C 50
00 - - - fshcmdHELP: .db "HELP", 0
2 D1:BD15 21 - - - fshcmdHELPo: .db $21
3 D1:BD16 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:BD2C 48 45 4C 50
00 - - - fshcmdHELPu: .db "HELP", 0
5 D1:BD31 - - - - fshcmdHELPf:
6 D1:BD31 21 CD EA D0 ld hl, FshCmdArgFlags
7 D1:BD35 CB 46 - - bit 0, (hl)
8 D1:BD37 28 0C - - jr z, fshcmdHELPfExe
9 D1:BD39 21 CF B2 D1 ld hl, ErrUsageo
10 D1:BD3D CD 3A B2 D1 call ErrSet
11 D1:BD41 CD ED B1 D1 call ErrCatch
12 D1:BD45 - - - - fshcmdHELPfExe:
13 D1:BD45 21 0B BE D1 ld hl, fshcmdHELPfLine1
14 D1:BD49 CD C0 07 02 call _PutS
15 D1:BD4D CD F0 07 02 call _NewLine
16 D1:BD51 - - - -
17 D1:BD51 - - - - #macro fshcmdHELPmRow1(cmdXs)
18 D1:BD51 xor a
19 D1:BD51 ld (curCol), a
20 D1:BD51 ld hl, cmdXs
21 D1:BD51 call _PutS
22 D1:BD51 call _NewLine
23 D1:BD51 #endmacro
24 D1:BD51 - - - - #macro fshcmdHELPmRow2(cmdXs, cmdYs)
25 D1:BD51 xor a
26 D1:BD51 ld (curCol), a
27 D1:BD51 ld hl, cmdXs
28 D1:BD51 call _PutS
29 D1:BD51 ld a, 9
30 D1:BD51 ld (curcol), a
31 D1:BD51 ld hl, cmdYs
32 D1:BD51 call _PutS
33 D1:BD51 call _NewLine
34 D1:BD51 #endmacro
35 D1:BD51 - - - - #macro fshcmdHELPmRow3(cmdXs, cmdYs, cmdZs)
36 D1:BD51 xor a
37 D1:BD51 ld (curCol), a
38 D1:BD51 ld hl, cmdXs
39 D1:BD51 call _PutS
40 D1:BD51 ld a, 9
41 D1:BD51 ld (curcol), a
42 D1:BD51 ld hl, cmdYs
43 D1:BD51 call _PutS
44 D1:BD51 ld a, 19
45 D1:BD51 ld (curcol), a
46 D1:BD51 ld hl, cmdZs
47 D1:BD51 call _PutS
48 D1:BD51 call _NewLine
49 D1:BD51 #endmacro
50 D1:BD51 - - - -
51 D1:BD51 AF 32 96 05
D0 21 AE B7
D1 CD C0 07
02 3E 09 32
96 05 D0 21
C7 B7 D1 CD
C0 07 02 3E
13 32 96 05
D0 21 BE 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:BD7E AF 32 96 05
D0 21 CC B9
D1 CD C0 07
02 3E 09 32
96 05 D0 21
E2 BA D1 CD
C0 07 02 3E
13 32 96 05
D0 21 0E BB
D1 CD C0 07
02 CD F0 07
02 - - - fshcmdHELPmRow3(fshcmdMOVE, fshcmdCLS, fshcmdVAR)
53 D1:BDAB AF 32 96 05
D0 21 B0 BB
D1 CD C0 07
02 3E 09 32
96 05 D0 21
20 BC D1 CD
C0 07 02 3E
13 32 96 05
D0 21 6E BC
D1 CD C0 07
02 CD F0 07
02 - - - fshcmdHELPmRow3(fshcmdVARS, fshcmdSLEEP, fshcmdINFO)
54 D1:BDD8 AF 32 96 05
D0 21 10 BD
D1 CD C0 07
02 3E 09 32
96 05 D0 21
44 BE D1 CD
C0 07 02 CD
F0 07 02 - fshcmdHELPmRow2(fshcmdHELP, fshcmdMAN)
55 D1:BDF7 - - - - ; Extention Point
56 D1:BDF7 - - - -
57 D1:BDF7 CD F0 07 02 call _NewLine
58 D1:BDFB 21 1F BE D1 ld hl, fshcmdHELPfLine2
59 D1:BDFF CD C0 07 02 call _PutS
60 D1:BE03 CD F0 07 02 call _NewLine
61 D1:BE07 C3 DB A8 D1 jp Fin
62 D1:BE0B - - - -
63 D1:BE0B 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:BE1F 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:BE44 - - - - #include "includes/FshCommands/MAN.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\FshCommands\MAN.asm"
1 D1:BE44 4D 41 4E 00 fshcmdMAN: .db "MAN", 0
2 D1:BE48 22 - - - fshcmdMANo: .db $22
3 D1:BE49 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:BE67 4D 41 4E 20
3C 63 6F 6D
6D 61 6E 64
3E 00 - - fshcmdMANu: .db "MAN <command>", 0
5 D1:BE75 - - - - fshcmdMANf:
6 D1:BE75 - - - - fshcmdMANfCheckArgs:
7 D1:BE75 21 CD EA D0 ld hl, FshCmdArgFlags
8 D1:BE79 CB 46 - - bit 0, (hl)
9 D1:BE7B 28 10 - - jr z, fshcmdMANfArg0Get
10 D1:BE7D CB 4E - - bit 1, (hl)
11 D1:BE7F 28 24 - - jr z, fshcmdMANfExe
12 D1:BE81 21 CF B2 D1 ld hl, ErrUsageo
13 D1:BE85 CD 3A B2 D1 call ErrSet
14 D1:BE89 CD ED B1 D1 call ErrCatch
15 D1:BE8D - - - - fshcmdMANfArg0Get:
16 D1:BE8D 21 22 BF D1 ld hl, fshcmdMANfPrompt
17 D1:BE91 CD 98 AA D1 call printprompt
18 D1:BE95 - - - -
19 D1:BE95 21 A8 EA D0 ld hl, FshCmdArg0
20 D1:BE99 11 08 00 00 ld de, FshCmdCmdSize
21 D1:BE9D CD 86 AC D1 call inputstr
22 D1:BEA1 CD F0 07 02 call _NewLine
23 D1:BEA5 - - - -
24 D1:BEA5 - - - - fshcmdMANfExe:
25 D1:BEA5 21 A8 EA D0 ld hl, FshCmdArg0
26 D1:BEA9 11 9F EA D0 ld de, FshCmd
27 D1:BEAD CD 5D AB D1 call strcpy
28 D1:BEB1 - - - -
29 D1:BEB1 21 11 BF D1 ld hl, fshcmdMANfPrefix
30 D1:BEB5 CD C0 07 02 call _PutS
31 D1:BEB9 - - - -
32 D1:BEB9 21 9F EA D0 ld hl, FshCmd
33 D1:BEBD CD C0 07 02 call _PutS
34 D1:BEC1 CD F0 07 02 call _NewLine
35 D1:BEC5 CD F0 07 02 call _NewLine
36 D1:BEC9 - - - -
37 D1:BEC9 21 9F EA D0 ld hl, FshCmd
38 D1:BECD CD 93 B4 D1 call manroute
39 D1:BED1 11 00 00 00 ld de, $00
40 D1:BED5 CD 6D A9 D1 call cpHLDE
41 D1:BED9 CA DF A8 D1 jp z, Err
42 D1:BEDD - - - -
43 D1:BEDD CD C0 07 02 call _PutS
44 D1:BEE1 CD F0 07 02 call _NewLine
45 D1:BEE5 CD F0 07 02 call _NewLine
46 D1:BEE9 - - - -
47 D1:BEE9 21 1A BF D1 ld hl, fshcmdMANfUsage
48 D1:BEED CD C0 07 02 call _PutS
49 D1:BEF1 - - - -
50 D1:BEF1 21 9F EA D0 ld hl, FshCmd
51 D1:BEF5 CD A9 B4 D1 call manrouteu
52 D1:BEF9 11 00 00 00 ld de, $00
53 D1:BEFD CD 6D A9 D1 call cpHLDE
54 D1:BF01 CA DF A8 D1 jp z, Err
55 D1:BF05 CD C0 07 02 call _PutS
56 D1:BF09 CD F0 07 02 call _NewLine
57 D1:BF0D - - - -
58 D1:BF0D C3 DB A8 D1 jp Fin
59 D1:BF11 - - - -
60 D1:BF11 4D 41 4E 2D
44 42 DF 20
00 - - - fshcmdMANfPrefix: .db "MAN-DB", $DF, ' ', 0
61 D1:BF1A 55 73 61 67
65 3A 20 00 fshcmdMANfUsage: .db "Usage: ",0
62 D1:BF22 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:BF2C - - - - #include "includes/CryptoCommands/CryptoCommand.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\CryptoCommands\CryptoCommand.asm"
1 D1:BF2C - - - - cryptocmddecode:
2 D1:BF2C E5 D5 11 B2
BF D1 CD 4A
AB D1 21 BA
BF D1 D1 CC
DA A9 D1 E1 decodecmdopt(cryptocmdENCRYPT, cryptocmdENCRYPTo)
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\CryptoCommands\CryptoCommand.asm"
3 D1:BF40 E5 D5 11 82
C1 D1 CD 4A
AB D1 21 8A
C1 D1 D1 CC
DA A9 D1 E1 decodecmdopt(cryptocmdDECRYPT, cryptocmdDECRYPTo)
4 D1:BF54 C9 - - - ret
5 D1:BF55 - - - -
6 D1:BF55 - - - - cryptocmdroute:
7 D1:BF55 C1 - - - pop bc
8 D1:BF56 11 BA BF D1
CD D2 A9 D1
CA 1C C0 D1 routeoptjp(cryptocmdENCRYPTo, cryptocmdENCRYPTf)
9 D1:BF62 11 8A C1 D1
CD D2 A9 D1
CA F9 C1 D1 routeoptjp(cryptocmdDECRYPTo, cryptocmdDECRYPTf)
10 D1:BF6E C5 - - - push bc
11 D1:BF6F C9 - - - ret
12 D1:BF70 - - - -
13 D1:BF70 - - - - cryptocmdmanroute:
14 D1:BF70 C1 - - - pop bc
15 D1:BF71 11 B2 BF D1
CD 4A AB D1
11 BB BF D1
CA A6 B4 D1 routestrjp(cryptocmdENCRYPT, cryptocmdENCRYPTm)
16 D1:BF81 11 8A C1 D1
CD D2 A9 D1
CA F9 C1 D1 routeoptjp(cryptocmdDECRYPTo, cryptocmdDECRYPTf)
17 D1:BF8D C5 - - - push bc
18 D1:BF8E C9 - - - ret
19 D1:BF8F - - - -
20 D1:BF8F - - - - cryptocmdmanrouteu:
21 D1:BF8F C1 - - - pop bc
22 D1:BF90 11 B2 BF D1
CD 4A AB D1
11 04 C0 D1
CA BC B4 D1 routeustrjp(cryptocmdENCRYPT, cryptocmdENCRYPTu)
23 D1:BFA0 11 8A C1 D1
CD 4A AB D1
11 F9 C1 D1
CA BC B4 D1 routeustrjp(cryptocmdDECRYPTo, cryptocmdDECRYPTf)
24 D1:BFB0 C5 - - - push bc
25 D1:BFB1 C9 - - - ret
26 D1:BFB2 - - - -
27 D1:BFB2 - - - - #include "includes/CryptoCommands/CryptoCommands.inc"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\CryptoCommands\CryptoCommands.inc"
1 D1:BFB2 - - - - #include "includes/CryptoCommands/ENCRYPT.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\CryptoCommands\ENCRYPT.asm"
1 D1:BFB2 45 4E 43 52
59 50 54 00 cryptocmdENCRYPT: .db "ENCRYPT", 0
2 D1:BFBA 40 - - - cryptocmdENCRYPTo: .db $40
3 D1:BFBB 45 6E 63 72
79 70 74 73
20 61 20 73
74 72 69 6E
67 20 75 73
69 6E 67 20
61 20 63 79
70 68 65 72
2E 20 73 65
65 20 27 45
4E 43 52 59
50 54 20 48
45 4C 50 27
20 66 6F 72
20 69 6E 66
6F 20 6F 6E
20 63 79 70
68 65 72 73
00 - - - cryptocmdENCRYPTm: .db "Encrypts a string using a cypher. see 'ENCRYPT HELP' for info on cyphers", 0
4 D1:C004 45 4E 43 52
59 50 54 20
3C 43 72 79
70 74 20 43
6F 6D 6D 61
6E 64 3E 00 cryptocmdENCRYPTu: .db "ENCRYPT <Crypt Command>", 0
5 D1:C01C - - - - cryptocmdENCRYPTf:
6 D1:C01C - - - - cryptocmdENCRYPTfArg0:
7 D1:C01C 21 CD EA D0 ld hl, FshCmdArgFlags
8 D1:C020 CB 46 - - bit 0, (hl)
9 D1:C022 28 10 - - jr z, cryptocmdENCRYPTfArg0Get
10 D1:C024 CB 4E - - bit 1, (hl)
11 D1:C026 28 24 - - jr z, cryptocmdENCRYPTfExe
12 D1:C028 21 CF B2 D1 ld hl, ErrUsageo
13 D1:C02C CD 3A B2 D1 call ErrSet
14 D1:C030 CD ED B1 D1 call ErrCatch
15 D1:C034 - - - - cryptocmdENCRYPTfArg0Get:
16 D1:C034 21 7C C0 D1 ld hl, cryptocmdENCRYPTfSCypher
17 D1:C038 CD 98 AA D1 call printprompt
18 D1:C03C 21 A8 EA D0 ld hl, FshCmdArg0
19 D1:C040 11 2C 00 00 ld de, FshCmdInptSize
20 D1:C044 CD 86 AC D1 call inputstr
21 D1:C048 CD F0 07 02 call _NewLine
22 D1:C04C - - - - cryptocmdENCRYPTfExe:
23 D1:C04C 21 A8 EA D0 ld hl, FshCmdArg0
24 D1:C050 11 85 C0 D1 ld de, cryptocmdROT
25 D1:C054 CD 4A AB D1 call strcmp
26 D1:C058 CA CC C0 D1 jp z, cryptocmdROTf
27 D1:C05C - - - -
28 D1:C05C 21 A8 EA D0 ld hl, FshCmdArg0
29 D1:C060 11 9F EA D0 ld de, FshCmd
30 D1:C064 CD 5D AB D1 call strcpy
31 D1:C068 - - - -
32 D1:C068 21 49 B2 D1 ld hl, ErrCmdNotFoundo
33 D1:C06C 11 CE EA D0 ld de, FshCmdErrCode
34 D1:C070 CD DA A9 D1 call bytecpy
35 D1:C074 CD 3A B2 D1 call ErrSet
36 D1:C078 C3 DF A8 D1 jp Err
37 D1:C07C - - - -
38 D1:C07C 43 79 70 68
65 72 3D 20
00 - - - cryptocmdENCRYPTfSCypher: .db "Cypher= ", 0
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\CryptoCommands\CryptoCommands.inc"
2 D1:C085 - - - - #include "includes/CryptoCommands/ROT.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\CryptoCommands\ROT.asm"
1 D1:C085 52 4F 54 00 cryptocmdROT: .db "ROT", 0
2 D1:C089 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
3 D1:C0BF 52 4F 54 20
3C 73 68 69
66 74 23 3E
00 - - - cryptocmdROTu: .db "ROT <shift#>", 0
4 D1:C0CC - - - - cryptocmdROTf:
5 D1:C0CC - - - - cryptocmdROTfArg1:
6 D1:C0CC 21 CD EA D0 ld hl, FshCmdArgFlags
7 D1:C0D0 CB 5E - - bit 3, (hl)
8 D1:C0D2 20 32 - - jr nz, cryptocmdROTfArg2
9 D1:C0D4 CB 56 - - bit 2, (hl)
10 D1:C0D6 28 0C - - jr z, cryptocmdROTfArg1Get
11 D1:C0D8 21 CF B2 D1 ld hl, ErrUsageo
12 D1:C0DC CD 3A B2 D1 call ErrSet
13 D1:C0E0 CD ED B1 D1 call ErrCatch
14 D1:C0E4 - - - - cryptocmdROTfArg1Get:
15 D1:C0E4 21 67 C1 D1 ld hl, cryptocmdROTfDShift
16 D1:C0E8 CD 98 AA D1 call printprompt
17 D1:C0EC 21 B1 EA D0 ld hl, FshCmdArg1
18 D1:C0F0 11 03 00 00 ld de, 3
19 D1:C0F4 CD BE AE D1 call inputnumstr
20 D1:C0F8 CD D4 AB D1 call strtow
21 D1:C0FC 11 B1 EA D0 ld de, FshCmdArg1
22 D1:C100 EB - - - ex de, hl
23 D1:C101 73 - - - ld (hl), e
24 D1:C102 CD F0 07 02 call _NewLine
25 D1:C106 - - - - cryptocmdROTfArg2:
26 D1:C106 18 24 - - jr cryptocmdROTfArg2Get
27 D1:C108 21 BA EA D0 ld hl, FshCmdArg2
28 D1:C10C 11 CF EA D0 ld de, FshScratch
29 D1:C110 CD 5D AB D1 call strcpy
30 D1:C114 21 CD EA D0 ld hl, FshCmdArgFlags
31 D1:C118 CB 6E - - bit 5, (hl)
32 D1:C11A 28 28 - - jr z, cryptocmdROTfExe
33 D1:C11C CB 66 - - bit 4, (hl)
34 D1:C11E 28 0C - - jr z, cryptocmdROTfArg2Get
35 D1:C120 21 CF B2 D1 ld hl, ErrUsageo
36 D1:C124 CD 3A B2 D1 call ErrSet
37 D1:C128 CD ED B1 D1 call ErrCatch
38 D1:C12C - - - - cryptocmdROTfArg2Get:
39 D1:C12C 21 6F C1 D1 ld hl, cryptocmdROTfDMessage
40 D1:C130 CD 98 AA D1 call printprompt
41 D1:C134 21 CF EA D0 ld hl, FshScratch
42 D1:C138 11 10 00 00 ld de, FshScratchSize - 4
43 D1:C13C CD AA AD D1 call inputcharstr
44 D1:C140 CD F0 07 02 call _NewLine
45 D1:C144 - - - - cryptocmdROTfExe:
46 D1:C144 21 B1 EA D0 ld hl, FshCmdArg1
47 D1:C148 7E - - - ld a, (hl)
48 D1:C149 21 CF EA D0 ld hl, FshScratch
49 D1:C14D CD 05 B4 D1 call rotletencrypt
50 D1:C151 E5 - - - push hl
51 D1:C152 21 79 C1 D1 ld hl, cryptocmdROTfDResult
52 D1:C156 CD C0 07 02 call _PutS
53 D1:C15A E1 - - - pop hl
54 D1:C15B CD C0 07 02 call _PutS
55 D1:C15F CD F0 07 02 call _NewLine
56 D1:C163 C3 DB A8 D1 jp Fin
57 D1:C167 - - - -
58 D1:C167 53 68 69 66
74 3D 20 00 cryptocmdROTfDShift: .db "Shift= ", 0
59 D1:C16F 4D 65 73 73
61 67 65 3D
20 00 - - cryptocmdROTfDMessage: .db "Message= ", 0
60 D1:C179 52 65 73 75
6C 74 3A 20
00 - - - cryptocmdROTfDResult: .db "Result: ", 0
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\CryptoCommands\CryptoCommands.inc"
3 D1:C182 - - - -
4 D1:C182 - - - - #include "includes/CryptoCommands/DECRYPT.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\CryptoCommands\DECRYPT.asm"
1 D1:C182 44 45 43 52
59 50 54 00 cryptocmdDECRYPT: .db "DECRYPT", 0
2 D1:C18A 41 - - - cryptocmdDECRYPTo: .db $41
3 D1:C18B 44 65 63 72
79 70 74 73
20 61 20 73
74 72 69 6E
67 20 75 73
69 6E 67 20
61 20 63 79
70 68 65 72
2E 20 73 65
65 20 27 44
45 43 52 59
50 54 20 48
45 4C 50 27
20 66 6F 72
20 69 6E 66
6F 20 6F 6E
20 63 79 70
68 65 72 73
00 - - - cryptocmdDECRYPTm: .db "Decrypts a string using a cypher. see 'DECRYPT HELP' for info on cyphers", 0
4 D1:C1D4 44 45 43 52
59 50 54 20
3C 43 72 79
70 74 20 43
6F 6D 6D 61
6E 64 3E 20
3C 43 72 79
70 74 20 41
72 67 73 3E
00 - - - cryptocmdDECRYPTu: .db "DECRYPT <Crypt Command> <Crypt Args>", 0
5 D1:C1F9 - - - - cryptocmdDECRYPTf:
6 D1:C1F9 - - - - cryptocmdDECRYPTfArg0:
7 D1:C1F9 21 CD EA D0 ld hl, FshCmdArgFlags
8 D1:C1FD CB 46 - - bit 0, (hl)
9 D1:C1FF 28 10 - - jr z, cryptocmdDECRYPTfArg0Get
10 D1:C201 CB 4E - - bit 1, (hl)
11 D1:C203 28 24 - - jr z, cryptocmdDECRYPTfExe
12 D1:C205 21 CF B2 D1 ld hl, ErrUsageo
13 D1:C209 CD 3A B2 D1 call ErrSet
14 D1:C20D CD ED B1 D1 call ErrCatch
15 D1:C211 - - - - cryptocmdDECRYPTfArg0Get:
16 D1:C211 21 59 C2 D1 ld hl, cryptocmdDECRYPTfSCypher
17 D1:C215 CD 98 AA D1 call printprompt
18 D1:C219 21 A8 EA D0 ld hl, FshCmdArg0
19 D1:C21D 11 2C 00 00 ld de, FshCmdInptSize
20 D1:C221 CD 86 AC D1 call inputstr
21 D1:C225 CD F0 07 02 call _NewLine
22 D1:C229 - - - - cryptocmdDECRYPTfExe:
23 D1:C229 21 A8 EA D0 ld hl, FshCmdArg0
24 D1:C22D 11 62 C2 D1 ld de, cryptocmdunROT
25 D1:C231 CD 4A AB D1 call strcmp
26 D1:C235 CA A9 C2 D1 jp z, cryptocmdunROTf
27 D1:C239 - - - -
28 D1:C239 21 A8 EA D0 ld hl, FshCmdArg0
29 D1:C23D 11 9F EA D0 ld de, FshCmd
30 D1:C241 CD 5D AB D1 call strcpy
31 D1:C245 - - - -
32 D1:C245 21 49 B2 D1 ld hl, ErrCmdNotFoundo
33 D1:C249 11 CE EA D0 ld de, FshCmdErrCode
34 D1:C24D CD DA A9 D1 call bytecpy
35 D1:C251 CD 3A B2 D1 call ErrSet
36 D1:C255 C3 DF A8 D1 jp Err
37 D1:C259 - - - -
38 D1:C259 43 79 70 68
65 72 3D 20
00 - - - cryptocmdDECRYPTfSCypher: .db "Cypher= ", 0
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\CryptoCommands\CryptoCommands.inc"
5 D1:C262 - - - - #include "includes/CryptoCommands/unROT.asm"
Listing for file "C:\Users\iD Student\Desktop\Stephen Toth\fsh-shell\includes\CryptoCommands\unROT.asm"
1 D1:C262 52 4F 54 00 cryptocmdunROT: .db "ROT", 0
2 D1:C266 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 44 65 63
6F 64 65 73
20 61 20 73
74 72 69 6E
67 00 - - cryptocmdunROTm: .db "ROT Cypher, rotates the alphabet and Decodes a string", 0
3 D1:C29C 52 4F 54 20
3C 73 68 69
66 74 23 3E
00 - - - cryptocmdunROTu: .db "ROT <shift#>", 0
4 D1:C2A9 - - - - cryptocmdunROTf:
5 D1:C2A9 - - - - cryptocmdunROTfArg1:
6 D1:C2A9 21 CD EA D0 ld hl, FshCmdArgFlags
7 D1:C2AD CB 5E - - bit 3, (hl)
8 D1:C2AF 20 32 - - jr nz, cryptocmdunROTfArg2
9 D1:C2B1 CB 56 - - bit 2, (hl)
10 D1:C2B3 28 0C - - jr z, cryptocmdunROTfArg1Get
11 D1:C2B5 21 CF B2 D1 ld hl, ErrUsageo
12 D1:C2B9 CD 3A B2 D1 call ErrSet
13 D1:C2BD CD ED B1 D1 call ErrCatch
14 D1:C2C1 - - - - cryptocmdunROTfArg1Get:
15 D1:C2C1 21 44 C3 D1 ld hl, cryptocmdunROTfDShift
16 D1:C2C5 CD 98 AA D1 call printprompt
17 D1:C2C9 21 B1 EA D0 ld hl, FshCmdArg1
18 D1:C2CD 11 03 00 00 ld de, 3
19 D1:C2D1 CD BE AE D1 call inputnumstr
20 D1:C2D5 CD D4 AB D1 call strtow
21 D1:C2D9 11 B1 EA D0 ld de, FshCmdArg1
22 D1:C2DD EB - - - ex de, hl
23 D1:C2DE 73 - - - ld (hl), e
24 D1:C2DF CD F0 07 02 call _NewLine
25 D1:C2E3 - - - - cryptocmdunROTfArg2:
26 D1:C2E3 18 24 - - jr cryptocmdunROTfArg2Get
27 D1:C2E5 21 BA EA D0 ld hl, FshCmdArg2
28 D1:C2E9 11 CF EA D0 ld de, FshScratch
29 D1:C2ED CD 5D AB D1 call strcpy
30 D1:C2F1 21 CD EA D0 ld hl, FshCmdArgFlags
31 D1:C2F5 CB 6E - - bit 5, (hl)
32 D1:C2F7 28 28 - - jr z, cryptocmdunROTfExe
33 D1:C2F9 CB 66 - - bit 4, (hl)
34 D1:C2FB 28 0C - - jr z, cryptocmdunROTfArg2Get
35 D1:C2FD 21 CF B2 D1 ld hl, ErrUsageo
36 D1:C301 CD 3A B2 D1 call ErrSet
37 D1:C305 CD ED B1 D1 call ErrCatch
38 D1:C309 - - - - cryptocmdunROTfArg2Get:
39 D1:C309 21 4C C3 D1 ld hl, cryptocmdunROTfDMessage
40 D1:C30D CD 98 AA D1 call printprompt
41 D1:C311 21 CF EA D0 ld hl, FshScratch
42 D1:C315 11 10 00 00 ld de, FshScratchSize - 4
43 D1:C319 CD AA AD D1 call inputcharstr
44 D1:C31D CD F0 07 02 call _NewLine
45 D1:C321 - - - - cryptocmdunROTfExe:
46 D1:C321 21 B1 EA D0 ld hl, FshCmdArg1
47 D1:C325 7E - - - ld a, (hl)
48 D1:C326 21 CF EA D0 ld hl, FshScratch
49 D1:C32A CD 2A B4 D1 call rotletdecrypt
50 D1:C32E E5 - - - push hl
51 D1:C32F 21 59 C3 D1 ld hl, cryptocmdunROTfDResult
52 D1:C333 CD C0 07 02 call _PutS
53 D1:C337 E1 - - - pop hl
54 D1:C338 CD C0 07 02 call _PutS
55 D1:C33C CD F0 07 02 call _NewLine
56 D1:C340 C3 DB A8 D1 jp Fin
57 D1:C344 - - - -
58 D1:C344 53 68 69 66
74 3D 20 00 cryptocmdunROTfDShift: .db "Shift= ", 0
59 D1:C34C 43 79 70 68
65 72 54 65
78 74 3D 20
00 - - - cryptocmdunROTfDMessage: .db "CypherText= ", 0
60 D1:C359 52 65 73 75
6C 74 3A 20
00 - - - cryptocmdunROTfDResult: .db "Result: ", 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:C362 - - - -
78 D1:C362 - - - - .end