From c7677b431517bb6c0f7a33ac5fae667c9a1186da Mon Sep 17 00:00:00 2001 From: Stephen Toth Date: Sun, 26 Aug 2018 22:55:31 -0400 Subject: [PATCH] aaaah --- bin/FSHa.8xp | Bin 9275 -> 9357 bytes bin/FSHa.lst | 3654 ++++++++++++++++---------------- includes/PrgmCommands/PRGM.asm | 25 +- includes/lib/prgm/Prgm.asm | 32 +- 4 files changed, 1894 insertions(+), 1817 deletions(-) diff --git a/bin/FSHa.8xp b/bin/FSHa.8xp index 6043b3c88a45f4d9f073ddc5cb198424f90dbc53..5b4d4dd03eb951e9e64a8f301412efea7ecaf6bb 100644 GIT binary patch delta 2708 zcmai0du&rx7{B+2EEMRcOUKqV#^ zBP4_45C|C>gKiTkvynl&tsP^J-u6I`1pZJE7o8-aVTOdnm=VA8xV8#z)wr}*`j}M$M2-&zpx2#!DM*G)}p^GY_c~^%TArW zKw0_rtBndd3guHrqr{n{kyM*T4o%Z;6{jGFqU6-)xELW)lcKT3%N?axz>9&>Jf&Cg z?`hSVeH710*YWD~uTrZzX}Vgj%v938ufz6974FKjlr*2C`h}a(G8I8%Zqd+Xau=da zeTh+Wy_1ra=P0p9Xoz&3p=1X*QzKMw@KOZNliGGlp7+we8?AKYGHUZtvi=0sPx>g0 ztZJvj5bKk%K{Mutpx-ZmLB9nwx z;kH4{%@}Tv3uXodFehjMH}{HIL$8d5dJ(81_3hLM_$UH3+_w8E0ukKK>!JwAb9;I> zML?R{V_*YWZrAouHv*R2xzs}uu;ccI07XEG+h2eUWVl@xqzFiG`$#YC2OhG^=#-Bd zhdZg+VHA?SY%V(I7kSxOM7y}}MzX8uMz;XSj-t#S;mdBKGt!rxMAHKz&$io9$ddcBwX@tl1=>NY%aq<;m{%r{Ao0%_)(r0)S~=9`@V0?y1gInM)*%r`k- zkiN-z4RB<6lXFYJB?2bt*+7~BOwxOSv!hO%P60z4_m)iAsj8{C z?V*kCS+Lb`Igrt0%~N{N7S-8iLjVSyd2E=Nm%%;Ovji|}ngwPpv%suj31HSS3(Wcz zOkQV}X6;Hqvvyf%)~tl|$LHhI6+^K!Q=(VmpR*6BOYmDcuIe(lLEusS7~CGR1jjIc z59|ZnM`TAEHQ+``$S;a}?kN5-=P@^1lg%@^Yv1BY1)u2SS3XY^Jf>5Weh*u{(_Q{57~lU!;{7IGA6h&cPkJGug)k zJZ0b+1-bZ6;S{{SAPeUgE>vgY4TU8emWQc*Qn^C5v{QX994&TFQE1SEFr01QP!;mK zI*W5kYs1vFtF$f*wZJ5Ka4a-eQuZ%=q5*_pq6q6p1!UROFUQvlx7Xbfo^{JHHTO$~ z)0Nm4Ch>mIR{WW(c-@K!KmGdJh&AE8cwNwI`M8 L$5K%inGg)!aBPO*jM+~XoN+OmS#;`_U}l|h zKV-wGH%?6ylQEGoR19hz&;mk%zSpO{E+qR&mJmmlzzlOsG|{l^ocr$MQ4Jdj?fLn7 z?svX>&TAXic2yo)ktQ#3*zUOEo?Bm8ZsUJ!Z2Gf{Wc`cDh_b(h?fqwulPI;2I36$K`&j?SEljUS zkf*emK?Uk#VoFQ6Zu}?Tozm>h9C*y#5F2?w>m1p+27Hv$zpt^7-hP$o?}3vN zrjyPz@7M@A)yec%+nDloCu8B7RyGPTpNMtMh+XJ1aF@C)T%g;C^>^6L%D*454_(D;V5HNgH z6T~EK!WTl4oE{@DL?qjUZwTmRB&F8?2=&NYecYc(`aE!KvPhF3g>Q2H4LD=oC0(_^!?P6i2=BK1a$goVrrp%$aHCS z+OPIgATTCRbQGt5BuO@UdEq9n3vL;=`_Fj!g8Qr3h=TVF0a$7DaE;Jgz&(^J3XFPL zU{uQjqgGL1ykHBAO7+HXG)tpUQD{`kLZePmY45GB=sE zX9avzIXxaROK=SOb+jjQv19oR#36{J)2YlnFP?zQ{n>!Epm+|(Ru5YX3VFUK_XZe& zIJeIY!|!;ke+rfS}HDE{W-{#7Px$IXKG~7@Wt_JJAE>{QQAqhY>%{uk{oAT{S`K*d_s$J z>ZM(@FQ-JRqfgc6GMgiBfRMn$pi6`F zoNEb9b{>|N(MIRu0zQ6iO#L)uuoOb7yH&#%!=Ucg=(6lrXt7cz=c+WET_HVA{faa0 zJaR9hx0L--9(_CSiPzR>EH0(groY?Dlzf;ZdY1LlF#B*F67{%_eQ#vTeJK+sY;= Z;*62|i!QTRPx*R}&9klofA!rh`WF_BN3{R| diff --git a/bin/FSHa.lst b/bin/FSHa.lst index 89c6108..b734286 100644 --- a/bin/FSHa.lst +++ b/bin/FSHa.lst @@ -139,11 +139,11 @@ Listing for file "FSHa.asm" 40 D1:A8CB - - - - Decode: 41 D1:A8CB 21 9F EA D0 LD HL, FshCmd 42 D1:A8CF 11 CF EA D0 LD DE, FshCmdOP - 43 D1:A8D3 CD A6 B7 D1 CALL commanddecode + 43 D1:A8D3 CD B2 B7 D1 CALL commanddecode 44 D1:A8D7 - - - - 45 D1:A8D7 - - - - Route: 46 D1:A8D7 21 CF EA D0 LD HL, FshCmdOP - 47 D1:A8DB C3 B3 B7 D1 JP commandroute + 47 D1:A8DB C3 BF B7 D1 JP commandroute 48 D1:A8DF - - - - 49 D1:A8DF - - - - Fin: 50 D1:A8DF CD 2F B5 D1 CALL updatestatusbar @@ -2152,7 +2152,7 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/lib/fsh/Err.asm" 89 D1:B3F3 21 0F B4 D1 ld hl, ErrUsaget 90 D1:B3F7 CD C0 07 02 call _PutS 91 D1:B3FB 21 9F EA D0 ld hl, FshCmd - 92 D1:B3FF CD 90 B7 D1 call manrouteu + 92 D1:B3FF CD 9C B7 D1 call manrouteu 93 D1:B403 CD C0 07 02 call _PutS 94 D1:B407 CD F0 07 02 call _NewLine 95 D1:B40B C3 DF A8 D1 jp Fin @@ -2285,7 +2285,7 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/lib/prgm/Prgm.asm" 10 D1:B548 - - - - prgminstallload: 11 D1:B548 21 57 B5 D1 ld hl, prgmloader_start 12 D1:B54C 11 D5 EE D0 ld de, SafeSScreen - 13 D1:B550 01 32 01 00 ld bc, prgmmovsize + 13 D1:B550 01 3E 01 00 ld bc, prgmmovsize 14 D1:B554 ED B0 - - ldir 15 D1:B556 C9 - - - ret 16 D1:B557 - - - - @@ -2297,764 +2297,779 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/lib/prgm/Prgm.asm" 21 D0:EED5 - - - - prgmmov: 22 D0:EED5 - - - - 23 D0:EED5 - - - - prgmloader: - 24 D0:EED5 CD CF EF D0 call prgm_del_usermem; now we deleted ourselves. cool. + 24 D0:EED5 CD DA EF D0 call prgm_del_usermem; now we deleted ourselves. cool. 25 D0:EED9 - - - - 26 D0:EED9 CD 74 03 00 call _boot_ClearVRAM 27 D0:EEDD - - - - ;ld a,$2D 28 D0:EEDD - - - - ;ld (mpLcdCtrl),a ; Set LCD to 16bpp 29 D0:EEDD CD 3C 1A 02 call _DrawStatusBar 30 D0:EEE1 - - - - ;ld hl,(prgmNamePtr) - 31 D0:EEE1 - - - - ;call NamePtrToOP1 - 32 D0:EEE1 CD 8B EF D0 call prgm_to_usermem - 33 D0:EEE5 21 82 A8 D1 ld hl, userMem + 1 - 34 D0:EEE9 7E - - - ld a, (hl) - 35 D0:EEEA FE 7B - - cp a,tAsm84CECmp - 36 D0:EEEC 20 11 - - jr nz,RunBasicProgram ; is it a basic program - 37 D0:EEEE 21 60 EF D0 ld hl, prgmunloader - 38 D0:EEF2 CD 98 07 02 call _PushErrorHandler - 39 D0:EEF6 21 60 EF D0 ld hl, prgmunloader - 40 D0:EEFA E5 - - - push hl - 41 D0:EEFB C3 81 A8 D1 jp userMem ; simply call userMem to execute the program - 42 D0:EEFF - - - - - 43 D0:EEFF - - - - runBasicProgram: - 44 D0:EEFF CD 44 08 02 call _RunIndicOn - 45 D0:EF03 - - - - ;call DeleteTempProgramGetName - 46 D0:EF03 - - - - ;ld hl,(asm_prgm_size);actualSizePrgm) - 47 D0:EF03 - - - - ;push hl - 48 D0:EF03 - - - - ;call _CreateProg ; create a temp program so we can execute - 49 D0:EF03 - - - - ;inc de - 50 D0:EF03 - - - - ;inc de - 51 D0:EF03 - - - - ;pop bc - 52 D0:EF03 - - - - ;call _ChkBCIs0 - 53 D0:EF03 - - - - ; jr z,InROM ; there's nothing to copy - 54 D0:EF03 - - - - ; ld hl,(userMem) - 55 D0:EF03 - - - - ;ldi - 56 D0:EF03 - - - - ;jp po,InROM - 57 D0:EF03 - - - - ;ldir - 58 D0:EF03 - - - - InROM: ;call _OP4ToOP1 - 59 D0:EF03 - - - - GoodInRAM: - 60 D0:EF03 - - - - ;ld de,apperr1 - 61 D0:EF03 - - - - ;ld hl,StopError - 62 D0:EF03 - - - - ;ld bc,StopErrorEnd-StopError - 63 D0:EF03 - - - - ;ldir - 64 D0:EF03 FD CB 03 C6 set graphdraw,(iy+graphFlags) - 65 D0:EF07 21 00 00 00 ld hl,prgmerrunloader;ErrCatchBASIC - 66 D0:EF0B CD 98 07 02 call _PushErrorHandler - 67 D0:EF0F FD CB 08 CE set progExecuting,(iy+newdispf) - 68 D0:EF13 FD CB 08 CE set allowProgTokens,(iy+newDispF) - 69 D0:EF17 FD CB 0C F6 set cmdExec,(iy+cmdFlags) ;settheseflagsto execute BASIC prgm - 70 D0:EF1B FD CB 09 A6 res onInterrupt,(iy+onflags) - 71 D0:EF1F 21 60 EF D0 ld hl, prgmunloader - 72 D0:EF23 E5 - - - push hl - 73 D0:EF24 97 - - - sub a,a - 74 D0:EF25 32 8D 05 D0 ld (kbdGetKy),a - 75 D0:EF29 FB - - - ei - 76 D0:EF2A C3 00 0F 02 jp _ParseInp ; run program - 77 D0:EF2E - - - - - 78 D0:EF2E - - - - - 79 D0:EF2E - - - - ErrCatchBASIC: - 80 D0:EF2E CD 74 03 00 call _boot_ClearVRAM - 81 D0:EF32 CD 3C 1A 02 call _DrawStatusBar - 82 D0:EF36 CD 10 0E 02 call _DispErrorScreen - 83 D0:EF3A FD CB 05 DE set textInverse, (iy + textFlags) - 84 D0:EF3E 21 01 00 00 ld hl,1 - 85 D0:EF42 22 95 05 D0 ld (curRow),hl - 86 D0:EF46 21 00 00 00 ld hl,QuitStr1 - 87 D0:EF4A CD C0 07 02 call _PutS - 88 D0:EF4E 21 00 00 00 ld hl,QuitStr2 - 89 D0:EF52 FD CB 05 9E res textInverse, (iy + textFlags) - 90 D0:EF56 CD C0 07 02 call _PutS - 91 D0:EF5A CD 8C 0D 02 call _GetKey - 92 D0:EF5E 18 04 - - jr +_ - 93 D0:EF60 - - - - - 94 D0:EF60 - - - - - 95 D0:EF60 - - - - prgmunloader: - 96 D0:EF60 CD 9C 07 02 call _PopErrorHandler - 97 D0:EF64 21 01 F0 D0 _: ld hl, prgmFsh - 98 D0:EF68 CD 20 03 02 call _Mov9ToOP1 - 99 D0:EF6C CD 0C 05 02 call _ChkFindSym - 100 D0:EF70 CD 98 1F 02 call _ChkInRam - 101 D0:EF74 EB - - - ex de,hl - 102 D0:EF75 28 08 - - jr z,ExistsInRAM - 103 D0:EF77 11 09 00 00 ld de,9 - 104 D0:EF7B 19 - - - add hl,de - 105 D0:EF7C 5E - - - ld e,(hl) - 106 D0:EF7D 19 - - - add hl,de - 107 D0:EF7E 23 - - - inc hl - 108 D0:EF7F - - - - ExistsInRAM: ; HL->totalPrgmSize bytes - 109 D0:EF7F CD 8B EF D0 call prgm_to_usermem - 110 D0:EF83 CD 48 08 02 call _RunIndicOff - 111 D0:EF87 C3 81 A8 D1 jp userMem - 112 D0:EF8B - - - - - 113 D0:EF8B - - - - prgm_to_usermem: - 114 D0:EF8B 3E 09 - - ld a, 09h ; 'add hl,bc' - 115 D0:EF8D 32 CB EF D0 ld (offset_SMC),a - 116 D0:EF91 CD 0C 05 02 call _ChkFindSym - 117 D0:EF95 CD 98 1F 02 call _ChkInRam - 118 D0:EF99 EB - - - ex de,hl - 119 D0:EF9A 28 0D - - jr z,AlreadyInRAM - 120 D0:EF9C AF - - - xor a,a - 121 D0:EF9D 32 CB EF D0 ld (offset_SMC),a - 122 D0:EFA1 11 09 00 00 ld de,9 - 123 D0:EFA5 19 - - - add hl,de - 124 D0:EFA6 5E - - - ld e,(hl) - 125 D0:EFA7 19 - - - add hl,de - 126 D0:EFA8 23 - - - inc hl - 127 D0:EFA9 - - - - AlreadyInRAM: ; HL->totalPrgmSize bytes - 128 D0:EFA9 CD 9C 1D 02 call _LoadDEInd_s - 129 D0:EFAD 23 - - - inc hl - 130 D0:EFAE 23 - - - inc hl ; bypass bytes $EF,$7B (texttok,tasm84cecmp) - 131 D0:EFAF E5 - - - push hl - 132 D0:EFB0 D5 - - - push de - 133 D0:EFB1 EB - - - ex de,hl - 134 D0:EFB2 CD 2C 07 02 call _ErrNotEnoughMem; check and see if we have enough memory left for this operation - 135 D0:EFB6 E1 - - - pop hl - 136 D0:EFB7 22 8C 11 D0 ld (asm_prgm_size),hl; store the totalPrgmSize of the program to asm_prgm_size for later use - 137 D0:EFBB 11 81 A8 D1 ld de,userMem - 138 D0:EFBF D5 - - - push de - 139 D0:EFC0 CD 14 05 02 call _InsertMem ; insert memory into the userspace - 140 D0:EFC4 D1 - - - pop de - 141 D0:EFC5 E1 - - - pop hl ; HL->start of program - 142 D0:EFC6 ED 4B 8C 11 + 31 D0:EEE1 - - - - ;call NamePtrToOP1 + 32 D0:EEE1 CD 96 EF D0 call prgm_to_usermem + 33 D0:EEE5 21 81 A8 D1 ld hl, userMem + 34 D0:EEE9 23 - - - inc hl + 35 D0:EEEA 23 - - - inc hl + 36 D0:EEEB 7E - - - ld a, (hl) + 37 D0:EEEC FE EF - - cp a,tExtTok + 38 D0:EEEE 28 11 - - jr z, runBasicProgram ; is it a basic program + 39 D0:EEF0 21 6B EF D0 ld hl, prgmunloader;ErrCatchBASIC + 40 D0:EEF4 CD 98 07 02 call _PushErrorHandler + 41 D0:EEF8 21 6B EF D0 ld hl, prgmunloader + 42 D0:EEFC E5 - - - push hl + 43 D0:EEFD C3 81 A8 D1 jp userMem ; simply call userMem to execute the program + 44 D0:EF01 - - - - + 45 D0:EF01 - - - - runBasicProgram: + 46 D0:EF01 CD 44 08 02 call _RunIndicOn + 47 D0:EF05 - - - - ;call DeleteTempProgramGetName + 48 D0:EF05 - - - - ;ld hl,(asm_prgm_size);actualSizePrgm) + 49 D0:EF05 - - - - ;push hl + 50 D0:EF05 - - - - ;call _CreateProg ; create a temp program so we can execute + 51 D0:EF05 - - - - ;inc de + 52 D0:EF05 - - - - ;inc de + 53 D0:EF05 - - - - ;pop bc + 54 D0:EF05 - - - - ;call _ChkBCIs0 + 55 D0:EF05 - - - - ;jr z,InROM ; there's nothing to copy + 56 D0:EF05 - - - - ;ld hl,(userMem) + 57 D0:EF05 - - - - ;ldi + 58 D0:EF05 - - - - ;jp po,InROM + 59 D0:EF05 - - - - ;ldir + 60 D0:EF05 - - - - InROM: ;call _OP4ToOP1 + 61 D0:EF05 - - - - GoodInRAM: + 62 D0:EF05 - - - - ;ld de,apperr1 + 63 D0:EF05 - - - - ;ld hl,StopError + 64 D0:EF05 - - - - ;ld bc,StopErrorEnd-StopError + 65 D0:EF05 - - - - ;ldir + 66 D0:EF05 FD CB 03 C6 set graphdraw,(iy+graphFlags) + 67 D0:EF09 21 31 EF D0 ld hl,ErrCatchBASIC + 68 D0:EF0D CD 98 07 02 call _PushErrorHandler + 69 D0:EF11 FD CB 08 CE set progExecuting,(iy+newdispf) + 70 D0:EF15 FD CB 08 CE set allowProgTokens,(iy+newDispF) + 71 D0:EF19 FD CB 0C F6 set cmdExec,(iy+cmdFlags) ;settheseflagsto execute BASIC prgm + 72 D0:EF1D FD CB 09 A6 res onInterrupt,(iy+onflags) + 73 D0:EF21 21 6B EF D0 ld hl, prgmunloader + 74 D0:EF25 E5 - - - push hl + 75 D0:EF26 97 - - - sub a,a + 76 D0:EF27 32 8D 05 D0 ld (kbdGetKy),a + 77 D0:EF2B FB - - - ei + 78 D0:EF2C 76 - - - halt + 79 D0:EF2D C3 00 0F 02 jp _ParseInp ; run program + 80 D0:EF31 - - - - + 81 D0:EF31 - - - - + 82 D0:EF31 - - - - ErrCatchBASIC: + 83 D0:EF31 CD 74 03 00 call _boot_ClearVRAM + 84 D0:EF35 CD 3C 1A 02 call _DrawStatusBar + 85 D0:EF39 CD 10 0E 02 call _DispErrorScreen + 86 D0:EF3D FD CB 05 DE set textInverse, (iy + textFlags) + 87 D0:EF41 21 01 00 00 ld hl,1 + 88 D0:EF45 22 95 05 D0 ld (curRow),hl + 89 D0:EF49 21 63 EF D0 ld hl,QuitStr1 + 90 D0:EF4D CD C0 07 02 call _PutS + 91 D0:EF51 FD CB 05 9E res textInverse, (iy + textFlags) + 92 D0:EF55 21 66 EF D0 ld hl,QuitStr2 + 93 D0:EF59 CD C0 07 02 call _PutS + 94 D0:EF5D CD 8C 0D 02 call _GetKey + 95 D0:EF61 18 0C - - jr +_ + 96 D0:EF63 - - - - + 97 D0:EF63 31 3A 00 - QuitStr1: .db "1:",0 + 98 D0:EF66 51 75 69 74 + 00 - - - QuitStr2: .db "Quit",0 + 99 D0:EF6B - - - - + 100 D0:EF6B - - - - + 101 D0:EF6B - - - - prgmunloader: + 102 D0:EF6B CD 9C 07 02 call _PopErrorHandler + 103 D0:EF6F 21 0C F0 D0 _: ld hl, prgmFsh + 104 D0:EF73 CD 20 03 02 call _Mov9ToOP1 + 105 D0:EF77 CD 0C 05 02 call _ChkFindSym + 106 D0:EF7B CD 98 1F 02 call _ChkInRam + 107 D0:EF7F EB - - - ex de,hl + 108 D0:EF80 28 08 - - jr z,ExistsInRAM + 109 D0:EF82 11 09 00 00 ld de,9 + 110 D0:EF86 19 - - - add hl,de + 111 D0:EF87 5E - - - ld e,(hl) + 112 D0:EF88 19 - - - add hl,de + 113 D0:EF89 23 - - - inc hl + 114 D0:EF8A - - - - ExistsInRAM: ; HL->totalPrgmSize bytes + 115 D0:EF8A CD 96 EF D0 call prgm_to_usermem + 116 D0:EF8E CD 48 08 02 call _RunIndicOff + 117 D0:EF92 C3 81 A8 D1 jp userMem + 118 D0:EF96 - - - - + 119 D0:EF96 - - - - prgm_to_usermem: + 120 D0:EF96 3E 09 - - ld a, 09h ; 'add hl,bc' + 121 D0:EF98 32 D6 EF D0 ld (offset_SMC),a + 122 D0:EF9C CD 0C 05 02 call _ChkFindSym + 123 D0:EFA0 CD 98 1F 02 call _ChkInRam + 124 D0:EFA4 EB - - - ex de,hl + 125 D0:EFA5 28 0D - - jr z,AlreadyInRAM + 126 D0:EFA7 AF - - - xor a,a + 127 D0:EFA8 32 D6 EF D0 ld (offset_SMC),a + 128 D0:EFAC 11 09 00 00 ld de,9 + 129 D0:EFB0 19 - - - add hl,de + 130 D0:EFB1 5E - - - ld e,(hl) + 131 D0:EFB2 19 - - - add hl,de + 132 D0:EFB3 23 - - - inc hl + 133 D0:EFB4 - - - - AlreadyInRAM: ; HL->totalPrgmSize bytes + 134 D0:EFB4 CD 9C 1D 02 call _LoadDEInd_s + 135 D0:EFB8 23 - - - inc hl + 136 D0:EFB9 23 - - - inc hl ; bypass bytes $EF,$7B (texttok,tasm84cecmp) + 137 D0:EFBA E5 - - - push hl + 138 D0:EFBB D5 - - - push de + 139 D0:EFBC EB - - - ex de,hl + 140 D0:EFBD CD 2C 07 02 call _ErrNotEnoughMem; check and see if we have enough memory left for this operation + 141 D0:EFC1 E1 - - - pop hl + 142 D0:EFC2 22 8C 11 D0 ld (asm_prgm_size),hl; store the totalPrgmSize of the program to asm_prgm_size for later use + 143 D0:EFC6 11 81 A8 D1 ld de,userMem + 144 D0:EFCA D5 - - - push de + 145 D0:EFCB CD 14 05 02 call _InsertMem ; insert memory into the userspace + 146 D0:EFCF D1 - - - pop de + 147 D0:EFD0 E1 - - - pop hl ; HL->start of program + 148 D0:EFD1 ED 4B 8C 11 D0 - - - ld bc,(asm_prgm_size) ; load totalPrgmSize of current program - 143 D0:EFCB - - - - offset_SMC: - 144 D0:EFCB 09 - - - add hl,bc ; if in ram, do this; otherwise, smc it so it doesn't execute - 145 D0:EFCC ED B0 - - ldir ; copy the program to userMem - 146 D0:EFCE C9 - - - ret ; return - 147 D0:EFCF - - - - - 148 D0:EFCF - - - - prgm_del_usermem: - 149 D0:EFCF ED 5B 8C 11 + 149 D0:EFD6 - - - - offset_SMC: + 150 D0:EFD6 09 - - - add hl,bc ; if in ram, do this; otherwise, smc it so it doesn't execute + 151 D0:EFD7 ED B0 - - ldir ; copy the program to userMem + 152 D0:EFD9 C9 - - - ret ; return + 153 D0:EFDA - - - - + 154 D0:EFDA - - - - prgm_del_usermem: + 155 D0:EFDA ED 5B 8C 11 D0 - - - ld de,(asm_prgm_size) ; load total program totalPrgmSize - 150 D0:EFD4 B7 - - - or a,a - 151 D0:EFD5 ED 62 - - sbc hl,hl - 152 D0:EFD7 22 8C 11 D0 ld (asm_prgm_size),hl ; delete whatever current program was there - 153 D0:EFDB 21 81 A8 D1 ld hl,userMem - 154 D0:EFDF C3 90 05 02 jp _DelMem ; HL->place to delete, DE=amount to delete - 155 D0:EFE3 - - - - - 156 D0:EFE3 - - - - DeleteTempProgramGetName: - 157 D0:EFE3 21 FB EF D0 ld hl,tmpPrgmName - 158 D0:EFE7 CD 20 03 02 call _Mov9ToOP1 - 159 D0:EFEB CD 28 06 02 call _PushOP1 - 160 D0:EFEF CD 0C 05 02 call _ChkFindSym - 161 D0:EFF3 D4 34 14 02 call nc,_DelVarArc ; delete the temp prgm if it exists - 162 D0:EFF7 C3 C4 05 02 jp _PopOP1 - 163 D0:EFFB - - - - - 164 D0:EFFB 16 5A 54 47 + 156 D0:EFDF B7 - - - or a,a + 157 D0:EFE0 ED 62 - - sbc hl,hl + 158 D0:EFE2 22 8C 11 D0 ld (asm_prgm_size),hl ; delete whatever current program was there + 159 D0:EFE6 21 81 A8 D1 ld hl,userMem + 160 D0:EFEA C3 90 05 02 jp _DelMem ; HL->place to delete, DE=amount to delete + 161 D0:EFEE - - - - + 162 D0:EFEE - - - - DeleteTempProgramGetName: + 163 D0:EFEE 21 06 F0 D0 ld hl,tmpPrgmName + 164 D0:EFF2 CD 20 03 02 call _Mov9ToOP1 + 165 D0:EFF6 CD 28 06 02 call _PushOP1 + 166 D0:EFFA CD 0C 05 02 call _ChkFindSym + 167 D0:EFFE D4 34 14 02 call nc,_DelVarArc ; delete the temp prgm if it exists + 168 D0:F002 C3 C4 05 02 jp _PopOP1 + 169 D0:F006 - - - - + 170 D0:F006 - - - - prgmattributes: + 171 D0:F006 - - - - + 172 D0:F006 - - - - + 173 D0:F006 - - - - + 174 D0:F006 16 5A 54 47 50 00 - - tmpPrgmName: .db tempProgObj,"ZTGP",0 - 165 D0:F001 05 46 53 48 + 175 D0:F00C 05 46 53 48 41 00 - - prgmFsh: .db ProgObj, "FSHA", 0 - 166 D0:F007 - - - - prgmmov_end: - 167 D0:F007 - - - - endrelocate() + 176 D0:F012 00 - - - prgmFlags: .db $00 ;basic + 177 D0:F013 - - - - #define isasm equ 0 + 178 D0:F013 - - - - #define isbasic equ 1 + 179 D0:F013 - - - - #define isice equ 2 + 180 D0:F013 - - - - prgmmov_end: + 181 D0:F013 - - - - endrelocate() Listing for file "/home/pi/Documents/asm/fsh-shell/includes/lib/prgm/prgm.inc" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/lib/lib.inc" - 4 D1:B689 - - - - #include "includes/lib/crypto/crypto.inc" + 4 D1:B695 - - - - #include "includes/lib/crypto/crypto.inc" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/lib/crypto/crypto.inc" - 1 D1:B689 - - - - #include "includes/lib/crypto/Rot.asm" + 1 D1:B695 - - - - #include "includes/lib/crypto/Rot.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/lib/crypto/Rot.asm" - 1 D1:B689 - - - - ;;rotletencrypt - 2 D1:B689 - - - - ;;Encrypts a string in rot-n (uses $41 to $5B) - 3 D1:B689 - - - - ;;Inputs: - 4 D1:B689 - - - - ;; HL: string pointer - 5 D1:B689 - - - - ;; A: rot-n - 6 D1:B689 - - - - ;;Notes: - 7 D1:B689 - - - - ;; Changes string in place. - 8 D1:B689 - - - - rotletencrypt: - 9 D1:B689 E5 - - - push hl - 10 D1:B68A C5 - - - push bc - 11 D1:B68B - - - - rotletencryptMod: - 12 D1:B68B E5 - - - push hl - 13 D1:B68C 67 - - - ld h, a - 14 D1:B68D 2E 19 - - ld l, 'Z' + 1 - 'A' - 1 - 15 D1:B68F CD A6 A9 D1 call modHL - 16 D1:B693 44 - - - ld b, h - 17 D1:B694 E1 - - - pop hl - 18 D1:B695 - - - - rotletencryptLoop: - 19 D1:B695 7E - - - ld a, (hl) - 20 D1:B696 FE 00 - - cp a, $00 - 21 D1:B698 28 0F - - jr z, rotletencryptEnd - 22 D1:B69A FE 20 - - cp a, ' ' - 23 D1:B69C 28 07 - - jr z, rotletencryptLD - 24 D1:B69E 80 - - - add a, b - 25 D1:B69F FE 5C - - cp a, 'Z' + 2 - 26 D1:B6A1 38 02 - - jr c , rotletencryptLD - 27 D1:B6A3 D6 1B - - sub a, 'Z' + 2 - 'A' - 28 D1:B6A5 - - - - rotletencryptLD: - 29 D1:B6A5 77 - - - ld (hl), a - 30 D1:B6A6 23 - - - inc hl - 31 D1:B6A7 18 EC - - jr rotletencryptLoop - 32 D1:B6A9 - - - - rotletencryptEnd: - 33 D1:B6A9 36 00 - - ld (hl), $00 - 34 D1:B6AB C1 - - - pop bc - 35 D1:B6AC E1 - - - pop hl - 36 D1:B6AD C9 - - - ret - 37 D1:B6AE - - - - - 38 D1:B6AE - - - - ;;rotletdecrypt - 39 D1:B6AE - - - - ;;Decrypts a string in rot-n (uses $41 to $5B) - 40 D1:B6AE - - - - ;;Inputs: - 41 D1:B6AE - - - - ;; HL: string pointer - 42 D1:B6AE - - - - ;; A: rot-n - 43 D1:B6AE - - - - ;;Notes: - 44 D1:B6AE - - - - ;; Changes string in place. - 45 D1:B6AE - - - - rotletdecrypt: - 46 D1:B6AE E5 - - - push hl - 47 D1:B6AF C5 - - - push bc - 48 D1:B6B0 - - - - rotletdecryptMod: - 49 D1:B6B0 E5 - - - push hl - 50 D1:B6B1 67 - - - ld h, a - 51 D1:B6B2 2E 19 - - ld l, 'Z' + 1 - 'A' - 1 - 52 D1:B6B4 CD A6 A9 D1 call modHL - 53 D1:B6B8 44 - - - ld b, h - 54 D1:B6B9 E1 - - - pop hl - 55 D1:B6BA - - - - rotletdecryptLoop: - 56 D1:B6BA 7E - - - ld a, (hl) - 57 D1:B6BB FE 00 - - cp a, $00 - 58 D1:B6BD 28 0F - - jr z, rotletdecryptEnd - 59 D1:B6BF FE 20 - - cp a, ' ' - 60 D1:B6C1 28 07 - - jr z, rotletdecryptLD - 61 D1:B6C3 90 - - - sub a, b - 62 D1:B6C4 FE 41 - - cp a, 'A' - 63 D1:B6C6 30 02 - - jr nc , rotletdecryptLD - 64 D1:B6C8 C6 1B - - add a, 'Z' + 2 - 'A' - 65 D1:B6CA - - - - rotletdecryptLD: - 66 D1:B6CA 77 - - - ld (hl), a - 67 D1:B6CB 23 - - - inc hl - 68 D1:B6CC 18 EC - - jr rotletdecryptLoop - 69 D1:B6CE - - - - rotletdecryptEnd: - 70 D1:B6CE 36 00 - - ld (hl), $00 - 71 D1:B6D0 C1 - - - pop bc - 72 D1:B6D1 E1 - - - pop hl - 73 D1:B6D2 C9 - - - ret - 74 D1:B6D3 - - - - - 75 D1:B6D3 - - - - ;;rotasciiencrypt - 76 D1:B6D3 - - - - ;;Encrypts a string in rot-x (uses $00 to $EF) - 77 D1:B6D3 - - - - ;;Inputs: - 78 D1:B6D3 - - - - ;; HL: string pointer - 79 D1:B6D3 - - - - ;; A: x - 80 D1:B6D3 - - - - ;;Notes: - 81 D1:B6D3 - - - - ;; Changes string in place. - 82 D1:B6D3 - - - - rotasciiencrypt: - 83 D1:B6D3 E5 - - - push hl - 84 D1:B6D4 C5 - - - push bc - 85 D1:B6D5 0E 00 - - ld c, 0 - 86 D1:B6D7 4F - - - ld c, a - 87 D1:B6D8 - - - - rotasciiencryptLoop: - 88 D1:B6D8 7E - - - ld a, (hl) - 89 D1:B6D9 FE 00 - - cp 0 - 90 D1:B6DB 28 13 - - jr z, rotasciiencryptEnd - 91 D1:B6DD 81 - - - add a, c - 92 D1:B6DE FE 00 - - cp 0 - 93 D1:B6E0 20 01 - - jr nz, rotasciiencryptLd - 94 D1:B6E2 3C - - - inc a - 95 D1:B6E3 - - - - rotasciiencryptLd: - 96 D1:B6E3 77 - - - ld (hl), a - 97 D1:B6E4 23 - - - inc hl - 98 D1:B6E5 FE EF - - cp a, $EF - 99 D1:B6E7 38 EF - - jr c, rotasciiencryptLoop - 100 D1:B6E9 2B - - - dec hl - 101 D1:B6EA D6 0F - - sub a, $0F - 102 D1:B6EC 77 - - - ld (hl), a - 103 D1:B6ED 23 - - - inc hl - 104 D1:B6EE 18 E8 - - jr rotasciiencryptLoop - 105 D1:B6F0 - - - - rotasciiencryptEnd: - 106 D1:B6F0 36 00 - - ld (hl), $00 - 107 D1:B6F2 C1 - - - pop bc - 108 D1:B6F3 E1 - - - pop hl - 109 D1:B6F4 C9 - - - ret - 110 D1:B6F5 - - - - - 111 D1:B6F5 - - - - ;;rotasciidecrypt - 112 D1:B6F5 - - - - ;;Encrypts a string in rot-x (uses $00 to $EF) - 113 D1:B6F5 - - - - ;;Inputs: - 114 D1:B6F5 - - - - ;; HL: string pointer - 115 D1:B6F5 - - - - ;; A: x - 116 D1:B6F5 - - - - ;;Notes: - 117 D1:B6F5 - - - - ;; Changes string in place. - 118 D1:B6F5 - - - - rotasciidecrypt: - 119 D1:B6F5 E5 - - - push hl - 120 D1:B6F6 C5 - - - push bc - 121 D1:B6F7 0E 00 - - ld c, 0 - 122 D1:B6F9 4F - - - ld c, a - 123 D1:B6FA - - - - rotasciidecryptLoop: - 124 D1:B6FA 7E - - - ld a, (hl) - 125 D1:B6FB FE 00 - - cp 0 - 126 D1:B6FD 28 13 - - jr z, rotasciidecryptEnd - 127 D1:B6FF 91 - - - sub a, c - 128 D1:B700 FE 00 - - cp 0 - 129 D1:B702 20 01 - - jr nz, rotasciidecryptLd - 130 D1:B704 3D - - - dec a - 131 D1:B705 - - - - rotasciidecryptLd: - 132 D1:B705 77 - - - ld (hl), a - 133 D1:B706 23 - - - inc hl - 134 D1:B707 FE EF - - cp a, $EF - 135 D1:B709 38 EF - - jr c, rotasciidecryptLoop - 136 D1:B70B 2B - - - dec hl - 137 D1:B70C C6 0F - - add a, $0F - 138 D1:B70E 77 - - - ld (hl), a - 139 D1:B70F 23 - - - inc hl - 140 D1:B710 18 E8 - - jr rotasciidecryptLoop - 141 D1:B712 - - - - rotasciidecryptEnd: - 142 D1:B712 36 00 - - ld (hl), $00 - 143 D1:B714 C1 - - - pop bc - 144 D1:B715 E1 - - - pop hl - 145 D1:B716 C9 - - - ret - 146 D1:B717 - - - - + 1 D1:B695 - - - - ;;rotletencrypt + 2 D1:B695 - - - - ;;Encrypts a string in rot-n (uses $41 to $5B) + 3 D1:B695 - - - - ;;Inputs: + 4 D1:B695 - - - - ;; HL: string pointer + 5 D1:B695 - - - - ;; A: rot-n + 6 D1:B695 - - - - ;;Notes: + 7 D1:B695 - - - - ;; Changes string in place. + 8 D1:B695 - - - - rotletencrypt: + 9 D1:B695 E5 - - - push hl + 10 D1:B696 C5 - - - push bc + 11 D1:B697 - - - - rotletencryptMod: + 12 D1:B697 E5 - - - push hl + 13 D1:B698 67 - - - ld h, a + 14 D1:B699 2E 19 - - ld l, 'Z' + 1 - 'A' - 1 + 15 D1:B69B CD A6 A9 D1 call modHL + 16 D1:B69F 44 - - - ld b, h + 17 D1:B6A0 E1 - - - pop hl + 18 D1:B6A1 - - - - rotletencryptLoop: + 19 D1:B6A1 7E - - - ld a, (hl) + 20 D1:B6A2 FE 00 - - cp a, $00 + 21 D1:B6A4 28 0F - - jr z, rotletencryptEnd + 22 D1:B6A6 FE 20 - - cp a, ' ' + 23 D1:B6A8 28 07 - - jr z, rotletencryptLD + 24 D1:B6AA 80 - - - add a, b + 25 D1:B6AB FE 5C - - cp a, 'Z' + 2 + 26 D1:B6AD 38 02 - - jr c , rotletencryptLD + 27 D1:B6AF D6 1B - - sub a, 'Z' + 2 - 'A' + 28 D1:B6B1 - - - - rotletencryptLD: + 29 D1:B6B1 77 - - - ld (hl), a + 30 D1:B6B2 23 - - - inc hl + 31 D1:B6B3 18 EC - - jr rotletencryptLoop + 32 D1:B6B5 - - - - rotletencryptEnd: + 33 D1:B6B5 36 00 - - ld (hl), $00 + 34 D1:B6B7 C1 - - - pop bc + 35 D1:B6B8 E1 - - - pop hl + 36 D1:B6B9 C9 - - - ret + 37 D1:B6BA - - - - + 38 D1:B6BA - - - - ;;rotletdecrypt + 39 D1:B6BA - - - - ;;Decrypts a string in rot-n (uses $41 to $5B) + 40 D1:B6BA - - - - ;;Inputs: + 41 D1:B6BA - - - - ;; HL: string pointer + 42 D1:B6BA - - - - ;; A: rot-n + 43 D1:B6BA - - - - ;;Notes: + 44 D1:B6BA - - - - ;; Changes string in place. + 45 D1:B6BA - - - - rotletdecrypt: + 46 D1:B6BA E5 - - - push hl + 47 D1:B6BB C5 - - - push bc + 48 D1:B6BC - - - - rotletdecryptMod: + 49 D1:B6BC E5 - - - push hl + 50 D1:B6BD 67 - - - ld h, a + 51 D1:B6BE 2E 19 - - ld l, 'Z' + 1 - 'A' - 1 + 52 D1:B6C0 CD A6 A9 D1 call modHL + 53 D1:B6C4 44 - - - ld b, h + 54 D1:B6C5 E1 - - - pop hl + 55 D1:B6C6 - - - - rotletdecryptLoop: + 56 D1:B6C6 7E - - - ld a, (hl) + 57 D1:B6C7 FE 00 - - cp a, $00 + 58 D1:B6C9 28 0F - - jr z, rotletdecryptEnd + 59 D1:B6CB FE 20 - - cp a, ' ' + 60 D1:B6CD 28 07 - - jr z, rotletdecryptLD + 61 D1:B6CF 90 - - - sub a, b + 62 D1:B6D0 FE 41 - - cp a, 'A' + 63 D1:B6D2 30 02 - - jr nc , rotletdecryptLD + 64 D1:B6D4 C6 1B - - add a, 'Z' + 2 - 'A' + 65 D1:B6D6 - - - - rotletdecryptLD: + 66 D1:B6D6 77 - - - ld (hl), a + 67 D1:B6D7 23 - - - inc hl + 68 D1:B6D8 18 EC - - jr rotletdecryptLoop + 69 D1:B6DA - - - - rotletdecryptEnd: + 70 D1:B6DA 36 00 - - ld (hl), $00 + 71 D1:B6DC C1 - - - pop bc + 72 D1:B6DD E1 - - - pop hl + 73 D1:B6DE C9 - - - ret + 74 D1:B6DF - - - - + 75 D1:B6DF - - - - ;;rotasciiencrypt + 76 D1:B6DF - - - - ;;Encrypts a string in rot-x (uses $00 to $EF) + 77 D1:B6DF - - - - ;;Inputs: + 78 D1:B6DF - - - - ;; HL: string pointer + 79 D1:B6DF - - - - ;; A: x + 80 D1:B6DF - - - - ;;Notes: + 81 D1:B6DF - - - - ;; Changes string in place. + 82 D1:B6DF - - - - rotasciiencrypt: + 83 D1:B6DF E5 - - - push hl + 84 D1:B6E0 C5 - - - push bc + 85 D1:B6E1 0E 00 - - ld c, 0 + 86 D1:B6E3 4F - - - ld c, a + 87 D1:B6E4 - - - - rotasciiencryptLoop: + 88 D1:B6E4 7E - - - ld a, (hl) + 89 D1:B6E5 FE 00 - - cp 0 + 90 D1:B6E7 28 13 - - jr z, rotasciiencryptEnd + 91 D1:B6E9 81 - - - add a, c + 92 D1:B6EA FE 00 - - cp 0 + 93 D1:B6EC 20 01 - - jr nz, rotasciiencryptLd + 94 D1:B6EE 3C - - - inc a + 95 D1:B6EF - - - - rotasciiencryptLd: + 96 D1:B6EF 77 - - - ld (hl), a + 97 D1:B6F0 23 - - - inc hl + 98 D1:B6F1 FE EF - - cp a, $EF + 99 D1:B6F3 38 EF - - jr c, rotasciiencryptLoop + 100 D1:B6F5 2B - - - dec hl + 101 D1:B6F6 D6 0F - - sub a, $0F + 102 D1:B6F8 77 - - - ld (hl), a + 103 D1:B6F9 23 - - - inc hl + 104 D1:B6FA 18 E8 - - jr rotasciiencryptLoop + 105 D1:B6FC - - - - rotasciiencryptEnd: + 106 D1:B6FC 36 00 - - ld (hl), $00 + 107 D1:B6FE C1 - - - pop bc + 108 D1:B6FF E1 - - - pop hl + 109 D1:B700 C9 - - - ret + 110 D1:B701 - - - - + 111 D1:B701 - - - - ;;rotasciidecrypt + 112 D1:B701 - - - - ;;Encrypts a string in rot-x (uses $00 to $EF) + 113 D1:B701 - - - - ;;Inputs: + 114 D1:B701 - - - - ;; HL: string pointer + 115 D1:B701 - - - - ;; A: x + 116 D1:B701 - - - - ;;Notes: + 117 D1:B701 - - - - ;; Changes string in place. + 118 D1:B701 - - - - rotasciidecrypt: + 119 D1:B701 E5 - - - push hl + 120 D1:B702 C5 - - - push bc + 121 D1:B703 0E 00 - - ld c, 0 + 122 D1:B705 4F - - - ld c, a + 123 D1:B706 - - - - rotasciidecryptLoop: + 124 D1:B706 7E - - - ld a, (hl) + 125 D1:B707 FE 00 - - cp 0 + 126 D1:B709 28 13 - - jr z, rotasciidecryptEnd + 127 D1:B70B 91 - - - sub a, c + 128 D1:B70C FE 00 - - cp 0 + 129 D1:B70E 20 01 - - jr nz, rotasciidecryptLd + 130 D1:B710 3D - - - dec a + 131 D1:B711 - - - - rotasciidecryptLd: + 132 D1:B711 77 - - - ld (hl), a + 133 D1:B712 23 - - - inc hl + 134 D1:B713 FE EF - - cp a, $EF + 135 D1:B715 38 EF - - jr c, rotasciidecryptLoop + 136 D1:B717 2B - - - dec hl + 137 D1:B718 C6 0F - - add a, $0F + 138 D1:B71A 77 - - - ld (hl), a + 139 D1:B71B 23 - - - inc hl + 140 D1:B71C 18 E8 - - jr rotasciidecryptLoop + 141 D1:B71E - - - - rotasciidecryptEnd: + 142 D1:B71E 36 00 - - ld (hl), $00 + 143 D1:B720 C1 - - - pop bc + 144 D1:B721 E1 - - - pop hl + 145 D1:B722 C9 - - - ret + 146 D1:B723 - - - - Listing for file "/home/pi/Documents/asm/fsh-shell/includes/lib/crypto/crypto.inc" - 2 D1:B717 - - - - #include "includes/lib/crypto/Xor.asm" + 2 D1:B723 - - - - #include "includes/lib/crypto/Xor.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/lib/crypto/Xor.asm" - 1 D1:B717 - - - - ;;xorcrypt - 2 D1:B717 - - - - ;;crypts a string using xor - 3 D1:B717 - - - - ;;Inputs: - 4 D1:B717 - - - - ;; HL: string pointer - 5 D1:B717 - - - - ;; DE: seed pointer (shorter) - 6 D1:B717 - - - - ;;Notes: - 7 D1:B717 - - - - ;; Changes string in place. - 8 D1:B717 - - - - xorcrypt: - 9 D1:B717 E5 - - - push hl - 10 D1:B718 D5 - - - push de - 11 D1:B719 C5 - - - push bc - 12 D1:B71A CD 48 AC D1 call strlen - 13 D1:B71E D5 - - - push de - 14 D1:B71F E5 - - - push hl - 15 D1:B720 21 00 00 00 ld hl, 0 - 16 D1:B724 60 - - - ld h, b - 17 D1:B725 69 - - - ld l, c - 18 D1:B726 EB - - - ex de, hl - 19 D1:B727 CD 48 AC D1 call strlen - 20 D1:B72B EB - - - ex de, hl - 21 D1:B72C 7D - - - ld a, l ;C = len(seed) l=len(string) - 22 D1:B72D 91 - - - sub a,c - 23 D1:B72E D2 38 B7 D1 jp nc, xorcryptNSmaller - 24 D1:B732 0E 01 - - ld c, $01 - 25 D1:B734 3E 00 - - ld a, 0 - 26 D1:B736 2E 00 - - ld l, 0 - 27 D1:B738 - - - - xorcryptNSmaller: - 28 D1:B738 0D - - - dec c - 29 D1:B739 D2 3F B7 D1 jp nc, xorcryptNSmaller2 - 30 D1:B73D 0E 00 - - ld c, 0 - 31 D1:B73F - - - - xorcryptNSmaller2: - 32 D1:B73F 41 - - - ld b, c - 33 D1:B740 4D - - - ld c, l ;b=len(seed) c=len(string) - 34 D1:B741 E1 - - - pop hl - 35 D1:B742 B7 - - - or a, a - 36 D1:B743 D1 - - - pop de - 37 D1:B744 28 2C - - jr z, xorcryptEnd - 38 D1:B746 D5 - - - push de - 39 D1:B747 EB - - - ex de, hl; hl=seed - 40 D1:B748 E1 - - - pop hl - 41 D1:B749 C5 - - - push bc - 42 D1:B74A D5 - - - push de - 43 D1:B74B 11 00 00 00 ld de, 0 - 44 D1:B74F 58 - - - ld e, b - 45 D1:B750 01 00 00 00 ld bc, 0 - 46 D1:B754 4B - - - ld c, e - 47 D1:B755 09 - - - add hl, bc - 48 D1:B756 D1 - - - pop de - 49 D1:B757 C1 - - - pop bc - 50 D1:B758 23 - - - inc hl - 51 D1:B759 36 80 - - ld (hl), %10000000 - 52 D1:B75B C5 - - - push bc - 53 D1:B75C 05 - - - dec b - 54 D1:B75D 3E FF - - ld a, $FF - 55 D1:B75F B8 - - - cp a, b - 56 D1:B760 28 0B - - jr z, xorcryptPadLoopEnd - 57 D1:B762 3E 00 - - ld a, $00 - 58 D1:B764 B8 - - - cp a, b - 59 D1:B765 20 01 - - jr nz, xorcryptPadLoop - 60 D1:B767 04 - - - inc b - 61 D1:B768 - - - - xorcryptPadLoop: - 62 D1:B768 23 - - - inc hl - 63 D1:B769 36 65 - - ld (hl), 'e' - 64 D1:B76B 10 FB - - djnz xorcryptPadLoop - 65 D1:B76D - - - - xorcryptPadLoopEnd: - 66 D1:B76D C1 - - - pop bc - 67 D1:B76E 70 - - - ld (hl), b - 68 D1:B76F 23 - - - inc hl - 69 D1:B770 36 00 - - ld (hl), $00 - 70 D1:B772 - - - - xorcryptEnd: - 71 D1:B772 C1 - - - pop bc - 72 D1:B773 D1 - - - pop de - 73 D1:B774 E1 - - - pop hl - 74 D1:B775 - - - - ;push hl - 75 D1:B775 - - - - ;xorcryptRandLoop: - 76 D1:B775 - - - - ;ld a, (hl) - 77 D1:B775 - - - - ;or a, a - 78 D1:B775 - - - - ;jr z, xorcryptRandLoopEnd - 79 D1:B775 - - - - ;call randomint - 80 D1:B775 - - - - ;or a, a - 81 D1:B775 - - - - ;jr nz, xorcryptRandLoopLD - 82 D1:B775 - - - - ;ld a, '/' - 83 D1:B775 - - - - ;xorcryptRandLoopLD: - 84 D1:B775 - - - - ;ld (hl), a - 85 D1:B775 - - - - ;inc hl - 86 D1:B775 - - - - ;jr xorcryptRandLoop - 87 D1:B775 - - - - ;xorcryptRandLoopEnd: - 88 D1:B775 - - - - ;pop hl - 89 D1:B775 CD 8B AD D1 call strxor - 90 D1:B779 C9 - - - ret - 91 D1:B77A - - - - + 1 D1:B723 - - - - ;;xorcrypt + 2 D1:B723 - - - - ;;crypts a string using xor + 3 D1:B723 - - - - ;;Inputs: + 4 D1:B723 - - - - ;; HL: string pointer + 5 D1:B723 - - - - ;; DE: seed pointer (shorter) + 6 D1:B723 - - - - ;;Notes: + 7 D1:B723 - - - - ;; Changes string in place. + 8 D1:B723 - - - - xorcrypt: + 9 D1:B723 E5 - - - push hl + 10 D1:B724 D5 - - - push de + 11 D1:B725 C5 - - - push bc + 12 D1:B726 CD 48 AC D1 call strlen + 13 D1:B72A D5 - - - push de + 14 D1:B72B E5 - - - push hl + 15 D1:B72C 21 00 00 00 ld hl, 0 + 16 D1:B730 60 - - - ld h, b + 17 D1:B731 69 - - - ld l, c + 18 D1:B732 EB - - - ex de, hl + 19 D1:B733 CD 48 AC D1 call strlen + 20 D1:B737 EB - - - ex de, hl + 21 D1:B738 7D - - - ld a, l ;C = len(seed) l=len(string) + 22 D1:B739 91 - - - sub a,c + 23 D1:B73A D2 44 B7 D1 jp nc, xorcryptNSmaller + 24 D1:B73E 0E 01 - - ld c, $01 + 25 D1:B740 3E 00 - - ld a, 0 + 26 D1:B742 2E 00 - - ld l, 0 + 27 D1:B744 - - - - xorcryptNSmaller: + 28 D1:B744 0D - - - dec c + 29 D1:B745 D2 4B B7 D1 jp nc, xorcryptNSmaller2 + 30 D1:B749 0E 00 - - ld c, 0 + 31 D1:B74B - - - - xorcryptNSmaller2: + 32 D1:B74B 41 - - - ld b, c + 33 D1:B74C 4D - - - ld c, l ;b=len(seed) c=len(string) + 34 D1:B74D E1 - - - pop hl + 35 D1:B74E B7 - - - or a, a + 36 D1:B74F D1 - - - pop de + 37 D1:B750 28 2C - - jr z, xorcryptEnd + 38 D1:B752 D5 - - - push de + 39 D1:B753 EB - - - ex de, hl; hl=seed + 40 D1:B754 E1 - - - pop hl + 41 D1:B755 C5 - - - push bc + 42 D1:B756 D5 - - - push de + 43 D1:B757 11 00 00 00 ld de, 0 + 44 D1:B75B 58 - - - ld e, b + 45 D1:B75C 01 00 00 00 ld bc, 0 + 46 D1:B760 4B - - - ld c, e + 47 D1:B761 09 - - - add hl, bc + 48 D1:B762 D1 - - - pop de + 49 D1:B763 C1 - - - pop bc + 50 D1:B764 23 - - - inc hl + 51 D1:B765 36 80 - - ld (hl), %10000000 + 52 D1:B767 C5 - - - push bc + 53 D1:B768 05 - - - dec b + 54 D1:B769 3E FF - - ld a, $FF + 55 D1:B76B B8 - - - cp a, b + 56 D1:B76C 28 0B - - jr z, xorcryptPadLoopEnd + 57 D1:B76E 3E 00 - - ld a, $00 + 58 D1:B770 B8 - - - cp a, b + 59 D1:B771 20 01 - - jr nz, xorcryptPadLoop + 60 D1:B773 04 - - - inc b + 61 D1:B774 - - - - xorcryptPadLoop: + 62 D1:B774 23 - - - inc hl + 63 D1:B775 36 65 - - ld (hl), 'e' + 64 D1:B777 10 FB - - djnz xorcryptPadLoop + 65 D1:B779 - - - - xorcryptPadLoopEnd: + 66 D1:B779 C1 - - - pop bc + 67 D1:B77A 70 - - - ld (hl), b + 68 D1:B77B 23 - - - inc hl + 69 D1:B77C 36 00 - - ld (hl), $00 + 70 D1:B77E - - - - xorcryptEnd: + 71 D1:B77E C1 - - - pop bc + 72 D1:B77F D1 - - - pop de + 73 D1:B780 E1 - - - pop hl + 74 D1:B781 - - - - ;push hl + 75 D1:B781 - - - - ;xorcryptRandLoop: + 76 D1:B781 - - - - ;ld a, (hl) + 77 D1:B781 - - - - ;or a, a + 78 D1:B781 - - - - ;jr z, xorcryptRandLoopEnd + 79 D1:B781 - - - - ;call randomint + 80 D1:B781 - - - - ;or a, a + 81 D1:B781 - - - - ;jr nz, xorcryptRandLoopLD + 82 D1:B781 - - - - ;ld a, '/' + 83 D1:B781 - - - - ;xorcryptRandLoopLD: + 84 D1:B781 - - - - ;ld (hl), a + 85 D1:B781 - - - - ;inc hl + 86 D1:B781 - - - - ;jr xorcryptRandLoop + 87 D1:B781 - - - - ;xorcryptRandLoopEnd: + 88 D1:B781 - - - - ;pop hl + 89 D1:B781 CD 8B AD D1 call strxor + 90 D1:B785 C9 - - - ret + 91 D1:B786 - - - - Listing for file "/home/pi/Documents/asm/fsh-shell/includes/lib/crypto/crypto.inc" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/lib/lib.inc" Listing for file "FSHa.asm" - 74 D1:B77A - - - - - 75 D1:B77A - - - - #include "includes/man-db.asm" + 74 D1:B786 - - - - + 75 D1:B786 - - - - #include "includes/man-db.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/man-db.asm" - 1 D1:B77A - - - - ;;TODO: move module specific macros to diffrent file - 2 D1:B77A - - - - ;;manroute - 3 D1:B77A - - - - ;;routes command string to discription - 4 D1:B77A - - - - ;;Inputs: - 5 D1:B77A - - - - ;; HL: Command String - 6 D1:B77A - - - - ;;Outputs: - 7 D1:B77A - - - - ;; HL: Command Discription String - 8 D1:B77A - - - - manroute: - 9 D1:B77A D5 - - - push de - 10 D1:B77B - - - - #macro routestrjp(cmdXs, cmdXm) - 11 D1:B77B ld de, cmdXs - 12 D1:B77B call strcmp - 13 D1:B77B ld de, cmdXm - 14 D1:B77B jp z, manrouteReturn - 15 D1:B77B #endmacro - 16 D1:B77B - - - - - 17 D1:B77B - - - - #macro subroutestrjp(cmdXs, cmdYs, cmdYm) - 18 D1:B77B push hl - 19 D1:B77B ld de, cmdXs - 20 D1:B77B call strcmp - 21 D1:B77B ld hl, 0 - 22 D1:B77B jr nz, +_ - 23 D1:B77B ld hl, FshCmdArg1 - 24 D1:B77B _: - 25 D1:B77B ld de, cmdYs - 26 D1:B77B call strcmp - 27 D1:B77B pop hl - 28 D1:B77B ld de, cmdYm - 29 D1:B77B jp z, manrouteReturn - 30 D1:B77B #endmacro - 31 D1:B77B - - - - - 32 D1:B77B CD 37 B9 D1 call fshcmdmanroute - 33 D1:B77F CD 89 C2 D1 call cryptocmdmanroute - 34 D1:B783 - - - - ;Extention Point - 35 D1:B783 - - - - - 36 D1:B783 21 CE EA D0 ld hl, FshCmdErrCode - 37 D1:B787 36 01 - - ld (hl), $01 - 38 D1:B789 11 00 00 00 ld de, $00 - 39 D1:B78D - - - - manrouteReturn: - 40 D1:B78D EB - - - ex de, hl - 41 D1:B78E D1 - - - pop de - 42 D1:B78F C9 - - - ret - 43 D1:B790 - - - - - 44 D1:B790 - - - - ;;manrouteu - 45 D1:B790 - - - - ;;routes command string to usage - 46 D1:B790 - - - - ;;Inputs: - 47 D1:B790 - - - - ;; HL: Command String - 48 D1:B790 - - - - ;;Outputs: - 49 D1:B790 - - - - ;; HL: Command Usage String - 50 D1:B790 - - - - manrouteu: - 51 D1:B790 D5 - - - push de - 52 D1:B791 - - - - #macro routeustrjp(cmdXs, cmdXu) - 53 D1:B791 ld de, cmdXs - 54 D1:B791 call strcmp - 55 D1:B791 ld de, cmdXu - 56 D1:B791 jp z, manrouteuReturn - 57 D1:B791 #endmacro - 58 D1:B791 - - - - - 59 D1:B791 - - - - #macro subrouteustrjp(cmdXs, cmdYs, cmdYu) - 60 D1:B791 push hl - 61 D1:B791 ld de, cmdXs - 62 D1:B791 call strcmp - 63 D1:B791 ld hl, 0 - 64 D1:B791 jr nz, +_ - 65 D1:B791 ld hl, FshCmdArg1 - 66 D1:B791 _: - 67 D1:B791 ld de, cmdYs - 68 D1:B791 call strcmp - 69 D1:B791 pop hl - 70 D1:B791 ld de, cmdYu - 71 D1:B791 jp z, manrouteuReturn - 72 D1:B791 #endmacro - 73 D1:B791 - - - - - 74 D1:B791 CD EA B9 D1 call fshcmdmanrouteu - 75 D1:B795 CD 84 C3 D1 call cryptocmdmanrouteu - 76 D1:B799 - - - - ;Extention Point - 77 D1:B799 - - - - - 78 D1:B799 21 CE EA D0 ld hl, FshCmdErrCode - 79 D1:B79D 36 01 - - ld (hl), $01 - 80 D1:B79F 11 00 00 00 ld de, $00 - 81 D1:B7A3 - - - - manrouteuReturn: - 82 D1:B7A3 EB - - - ex de, hl - 83 D1:B7A4 D1 - - - pop de - 84 D1:B7A5 C9 - - - ret + 1 D1:B786 - - - - ;;TODO: move module specific macros to diffrent file + 2 D1:B786 - - - - ;;manroute + 3 D1:B786 - - - - ;;routes command string to discription + 4 D1:B786 - - - - ;;Inputs: + 5 D1:B786 - - - - ;; HL: Command String + 6 D1:B786 - - - - ;;Outputs: + 7 D1:B786 - - - - ;; HL: Command Discription String + 8 D1:B786 - - - - manroute: + 9 D1:B786 D5 - - - push de + 10 D1:B787 - - - - #macro routestrjp(cmdXs, cmdXm) + 11 D1:B787 ld de, cmdXs + 12 D1:B787 call strcmp + 13 D1:B787 ld de, cmdXm + 14 D1:B787 jp z, manrouteReturn + 15 D1:B787 #endmacro + 16 D1:B787 - - - - + 17 D1:B787 - - - - #macro subroutestrjp(cmdXs, cmdYs, cmdYm) + 18 D1:B787 push hl + 19 D1:B787 ld de, cmdXs + 20 D1:B787 call strcmp + 21 D1:B787 ld hl, 0 + 22 D1:B787 jr nz, +_ + 23 D1:B787 ld hl, FshCmdArg1 + 24 D1:B787 _: + 25 D1:B787 ld de, cmdYs + 26 D1:B787 call strcmp + 27 D1:B787 pop hl + 28 D1:B787 ld de, cmdYm + 29 D1:B787 jp z, manrouteReturn + 30 D1:B787 #endmacro + 31 D1:B787 - - - - + 32 D1:B787 CD 43 B9 D1 call fshcmdmanroute + 33 D1:B78B CD 95 C2 D1 call cryptocmdmanroute + 34 D1:B78F - - - - ;Extention Point + 35 D1:B78F - - - - + 36 D1:B78F 21 CE EA D0 ld hl, FshCmdErrCode + 37 D1:B793 36 01 - - ld (hl), $01 + 38 D1:B795 11 00 00 00 ld de, $00 + 39 D1:B799 - - - - manrouteReturn: + 40 D1:B799 EB - - - ex de, hl + 41 D1:B79A D1 - - - pop de + 42 D1:B79B C9 - - - ret + 43 D1:B79C - - - - + 44 D1:B79C - - - - ;;manrouteu + 45 D1:B79C - - - - ;;routes command string to usage + 46 D1:B79C - - - - ;;Inputs: + 47 D1:B79C - - - - ;; HL: Command String + 48 D1:B79C - - - - ;;Outputs: + 49 D1:B79C - - - - ;; HL: Command Usage String + 50 D1:B79C - - - - manrouteu: + 51 D1:B79C D5 - - - push de + 52 D1:B79D - - - - #macro routeustrjp(cmdXs, cmdXu) + 53 D1:B79D ld de, cmdXs + 54 D1:B79D call strcmp + 55 D1:B79D ld de, cmdXu + 56 D1:B79D jp z, manrouteuReturn + 57 D1:B79D #endmacro + 58 D1:B79D - - - - + 59 D1:B79D - - - - #macro subrouteustrjp(cmdXs, cmdYs, cmdYu) + 60 D1:B79D push hl + 61 D1:B79D ld de, cmdXs + 62 D1:B79D call strcmp + 63 D1:B79D ld hl, 0 + 64 D1:B79D jr nz, +_ + 65 D1:B79D ld hl, FshCmdArg1 + 66 D1:B79D _: + 67 D1:B79D ld de, cmdYs + 68 D1:B79D call strcmp + 69 D1:B79D pop hl + 70 D1:B79D ld de, cmdYu + 71 D1:B79D jp z, manrouteuReturn + 72 D1:B79D #endmacro + 73 D1:B79D - - - - + 74 D1:B79D CD F6 B9 D1 call fshcmdmanrouteu + 75 D1:B7A1 CD 90 C3 D1 call cryptocmdmanrouteu + 76 D1:B7A5 - - - - ;Extention Point + 77 D1:B7A5 - - - - + 78 D1:B7A5 21 CE EA D0 ld hl, FshCmdErrCode + 79 D1:B7A9 36 01 - - ld (hl), $01 + 80 D1:B7AB 11 00 00 00 ld de, $00 + 81 D1:B7AF - - - - manrouteuReturn: + 82 D1:B7AF EB - - - ex de, hl + 83 D1:B7B0 D1 - - - pop de + 84 D1:B7B1 C9 - - - ret Listing for file "FSHa.asm" - 76 D1:B7A6 - - - - #include "includes/Command.asm" + 76 D1:B7B2 - - - - #include "includes/Command.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/Command.asm" - 1 D1:B7A6 - - - - ;;Commanddecode - 2 D1:B7A6 - - - - ;;Decodes all commands. - 3 D1:B7A6 - - - - ;;Inputs: - 4 D1:B7A6 - - - - ;; HL: Cmd String mem loc - 5 D1:B7A6 - - - - ;; DE: Op code mem loc - 6 D1:B7A6 - - - - ;;Output: - 7 D1:B7A6 - - - - ;; Sets (DE) with command op code - 8 D1:B7A6 - - - - commanddecode: - 9 D1:B7A6 - - - - #macro decodecmdopt(cmdXs, cmdXo) - 10 D1:B7A6 push hl - 11 D1:B7A6 push de - 12 D1:B7A6 ld de, cmdXs - 13 D1:B7A6 call strcmp - 14 D1:B7A6 ld hl, cmdXo - 15 D1:B7A6 pop de - 16 D1:B7A6 call z, wordcpy - 17 D1:B7A6 pop hl - 18 D1:B7A6 #endmacro - 19 D1:B7A6 - - - - - 20 D1:B7A6 CD D3 B7 D1 call fshcmddecode - 21 D1:B7AA CD 45 C2 D1 call cryptocmddecode - 22 D1:B7AE CD FA CB D1 call prgmcmddecode - 23 D1:B7B2 - - - - ;Extention Point - 24 D1:B7B2 - - - - - 25 D1:B7B2 C9 - - - ret - 26 D1:B7B3 - - - - - 27 D1:B7B3 - - - - ;;commandroute - 28 D1:B7B3 - - - - ;;Routes all commamds. - 29 D1:B7B3 - - - - ;;Inputs: - 30 D1:B7B3 - - - - ;; HL: Op code mem loc - 31 D1:B7B3 - - - - commandroute: - 32 D1:B7B3 - - - - #macro routeoptjp(cmdXo, cmdXf) - 33 D1:B7B3 ld de, cmdXo - 34 D1:B7B3 call wordcmp - 35 D1:B7B3 jp z, cmdXf - 36 D1:B7B3 #endmacro - 37 D1:B7B3 - - - - - 38 D1:B7B3 CD B0 B8 D1 call fshcmdroute - 39 D1:B7B7 CD 6E C2 D1 call cryptocmdroute - 40 D1:B7BB CD 0F CC D1 call prgmcmdroute - 41 D1:B7BF - - - - ;Extention Point - 42 D1:B7BF - - - - - 43 D1:B7BF 21 6C B3 D1 ld hl, ErrCmdNotFoundo - 44 D1:B7C3 11 CE EA D0 ld de, FshCmdErrCode - 45 D1:B7C7 CD 4A AA D1 call bytecpy - 46 D1:B7CB CD 5D B3 D1 call ErrSet - 47 D1:B7CF C3 E7 A8 D1 jp Err - 48 D1:B7D3 - - - - - 49 D1:B7D3 - - - - #include "includes/FshCommands/FshCommand.asm" + 1 D1:B7B2 - - - - ;;Commanddecode + 2 D1:B7B2 - - - - ;;Decodes all commands. + 3 D1:B7B2 - - - - ;;Inputs: + 4 D1:B7B2 - - - - ;; HL: Cmd String mem loc + 5 D1:B7B2 - - - - ;; DE: Op code mem loc + 6 D1:B7B2 - - - - ;;Output: + 7 D1:B7B2 - - - - ;; Sets (DE) with command op code + 8 D1:B7B2 - - - - commanddecode: + 9 D1:B7B2 - - - - #macro decodecmdopt(cmdXs, cmdXo) + 10 D1:B7B2 push hl + 11 D1:B7B2 push de + 12 D1:B7B2 ld de, cmdXs + 13 D1:B7B2 call strcmp + 14 D1:B7B2 ld hl, cmdXo + 15 D1:B7B2 pop de + 16 D1:B7B2 call z, wordcpy + 17 D1:B7B2 pop hl + 18 D1:B7B2 #endmacro + 19 D1:B7B2 - - - - + 20 D1:B7B2 CD DF B7 D1 call fshcmddecode + 21 D1:B7B6 CD 51 C2 D1 call cryptocmddecode + 22 D1:B7BA CD 06 CC D1 call prgmcmddecode + 23 D1:B7BE - - - - ;Extention Point + 24 D1:B7BE - - - - + 25 D1:B7BE C9 - - - ret + 26 D1:B7BF - - - - + 27 D1:B7BF - - - - ;;commandroute + 28 D1:B7BF - - - - ;;Routes all commamds. + 29 D1:B7BF - - - - ;;Inputs: + 30 D1:B7BF - - - - ;; HL: Op code mem loc + 31 D1:B7BF - - - - commandroute: + 32 D1:B7BF - - - - #macro routeoptjp(cmdXo, cmdXf) + 33 D1:B7BF ld de, cmdXo + 34 D1:B7BF call wordcmp + 35 D1:B7BF jp z, cmdXf + 36 D1:B7BF #endmacro + 37 D1:B7BF - - - - + 38 D1:B7BF CD BC B8 D1 call fshcmdroute + 39 D1:B7C3 CD 7A C2 D1 call cryptocmdroute + 40 D1:B7C7 CD 1B CC D1 call prgmcmdroute + 41 D1:B7CB - - - - ;Extention Point + 42 D1:B7CB - - - - + 43 D1:B7CB 21 6C B3 D1 ld hl, ErrCmdNotFoundo + 44 D1:B7CF 11 CE EA D0 ld de, FshCmdErrCode + 45 D1:B7D3 CD 4A AA D1 call bytecpy + 46 D1:B7D7 CD 5D B3 D1 call ErrSet + 47 D1:B7DB C3 E7 A8 D1 jp Err + 48 D1:B7DF - - - - + 49 D1:B7DF - - - - #include "includes/FshCommands/FshCommand.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/FshCommand.asm" - 1 D1:B7D3 - - - - fshcmddecode: - 2 D1:B7D3 E5 D5 11 9D + 1 D1:B7DF - - - - fshcmddecode: + 2 D1:B7DF E5 D5 11 A9 BA D1 CD 59 - AC D1 21 A2 + AC D1 21 AE BA D1 D1 CC 52 AA D1 E1 decodecmdopt(fshcmdEXIT, fshcmdEXITo) Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/FshCommand.asm" - 3 D1:B7E7 E5 D5 11 B7 + 3 D1:B7F3 E5 D5 11 C3 BA D1 CD 59 - AC D1 21 BB + AC D1 21 C7 BA D1 D1 CC 52 AA D1 E1 decodecmdopt(fshcmdSET, fshcmdSETo) - 4 D1:B7FB E5 D5 11 AF + 4 D1:B807 E5 D5 11 BB BB D1 CD 59 - AC D1 21 B4 + AC D1 21 C0 BB D1 D1 CC 52 AA D1 E1 decodecmdopt(fshcmdCOPY, fshcmdCOPYo) - 5 D1:B80F E5 D5 11 BE + 5 D1:B81B E5 D5 11 CA BC D1 CD 59 - AC D1 21 C3 + AC D1 21 CF BC D1 D1 CC 52 AA D1 E1 decodecmdopt(fshcmdMOVE, fshcmdMOVEo) - 6 D1:B823 E5 D5 11 D5 + 6 D1:B82F E5 D5 11 E1 BD D1 CD 59 - AC D1 21 D9 + AC D1 21 E5 BD D1 D1 CC 52 AA D1 E1 decodecmdopt(fshcmdCLS, fshcmdCLSo) - 7 D1:B837 E5 D5 11 02 + 7 D1:B843 E5 D5 11 0E BE D1 CD 59 - AC D1 21 06 + AC D1 21 12 BE D1 D1 CC 52 AA D1 E1 decodecmdopt(fshcmdVAR, fshcmdVARo) - 8 D1:B84B E5 D5 11 A5 + 8 D1:B857 E5 D5 11 B1 BE D1 CD 59 - AC D1 21 AA + AC D1 21 B6 BE D1 D1 CC 52 AA D1 E1 decodecmdopt(fshcmdVARS, fshcmdVARSo) - 9 D1:B85F E5 D5 11 16 + 9 D1:B86B E5 D5 11 22 BF D1 CD 59 - AC D1 21 1C + AC D1 21 28 BF D1 D1 CC 52 AA D1 E1 decodecmdopt(fshcmdSLEEP, fshcmdSLEEPo) - 10 D1:B873 E5 D5 11 65 + 10 D1:B87F E5 D5 11 71 BF D1 CD 59 - AC D1 21 6A + AC D1 21 76 BF D1 D1 CC 52 AA D1 E1 decodecmdopt(fshcmdINFO, fshcmdINFOo) - 11 D1:B887 E5 D5 11 08 + 11 D1:B893 E5 D5 11 14 C0 D1 CD 59 - AC D1 21 0D + AC D1 21 19 C0 D1 D1 CC 52 AA D1 E1 decodecmdopt(fshcmdHELP, fshcmdHELPo) - 12 D1:B89B E5 D5 11 5C + 12 D1:B8A7 E5 D5 11 68 C1 D1 CD 59 - AC D1 21 60 + AC D1 21 6C C1 D1 D1 CC 52 AA D1 E1 decodecmdopt(fshcmdMAN, fshcmdMANo) - 13 D1:B8AF C9 - - - ret - 14 D1:B8B0 - - - - - 15 D1:B8B0 - - - - fshcmdroute: - 16 D1:B8B0 C1 - - - pop bc ;pop the ret loc from stack into bc - 17 D1:B8B1 11 A2 BA D1 + 13 D1:B8BB C9 - - - ret + 14 D1:B8BC - - - - + 15 D1:B8BC - - - - fshcmdroute: + 16 D1:B8BC C1 - - - pop bc ;pop the ret loc from stack into bc + 17 D1:B8BD 11 AE BA D1 CD 5E AA D1 - CA B3 BA D1 routeoptjp(fshcmdEXITo, fshcmdEXITf) - 18 D1:B8BD 11 BB BA D1 + CA BF BA D1 routeoptjp(fshcmdEXITo, fshcmdEXITf) + 18 D1:B8C9 11 C7 BA D1 CD 5E AA D1 - CA FA BA D1 routeoptjp(fshcmdSETo, fshcmdSETf) - 19 D1:B8C9 11 B4 BB D1 + CA 06 BB D1 routeoptjp(fshcmdSETo, fshcmdSETf) + 19 D1:B8D5 11 C0 BB D1 CD 5E AA D1 - CA 10 BC D1 routeoptjp(fshcmdCOPYo, fshcmdCOPYf) - 20 D1:B8D5 11 C3 BC D1 + CA 1C BC D1 routeoptjp(fshcmdCOPYo, fshcmdCOPYf) + 20 D1:B8E1 11 CF BC D1 CD 5E AA D1 - CA 1E BD D1 routeoptjp(fshcmdMOVEo, fshcmdMOVEf) - 21 D1:B8E1 11 D9 BD D1 + CA 2A BD D1 routeoptjp(fshcmdMOVEo, fshcmdMOVEf) + 21 D1:B8ED 11 E5 BD D1 CD 5E AA D1 - CA F1 BD D1 routeoptjp(fshcmdCLSo, fshcmdCLSf) - 22 D1:B8ED 11 06 BE D1 + CA FD BD D1 routeoptjp(fshcmdCLSo, fshcmdCLSf) + 22 D1:B8F9 11 12 BE D1 CD 5E AA D1 - CA 3E BE D1 routeoptjp(fshcmdVARo, fshcmdVARf) - 23 D1:B8F9 11 AA BE D1 + CA 4A BE D1 routeoptjp(fshcmdVARo, fshcmdVARf) + 23 D1:B905 11 B6 BE D1 CD 5E AA D1 - CA C7 BE D1 routeoptjp(fshcmdVARSo, fshcmdVARSf) - 24 D1:B905 11 1C BF D1 + CA D3 BE D1 routeoptjp(fshcmdVARSo, fshcmdVARSf) + 24 D1:B911 11 28 BF D1 CD 5E AA D1 - CA 4E BF D1 routeoptjp(fshcmdSLEEPo, fshcmdSLEEPf) - 25 D1:B911 11 6A BF D1 + CA 5A BF D1 routeoptjp(fshcmdSLEEPo, fshcmdSLEEPf) + 25 D1:B91D 11 76 BF D1 CD 5E AA D1 - CA 97 BF D1 routeoptjp(fshcmdINFOo, fshcmdINFOf) - 26 D1:B91D 11 0D C0 D1 + CA A3 BF D1 routeoptjp(fshcmdINFOo, fshcmdINFOf) + 26 D1:B929 11 19 C0 D1 CD 5E AA D1 - CA 2A C0 D1 routeoptjp(fshcmdHELPo, fshcmdHELPf) - 27 D1:B929 11 60 C1 D1 + CA 36 C0 D1 routeoptjp(fshcmdHELPo, fshcmdHELPf) + 27 D1:B935 11 6C C1 D1 CD 5E AA D1 - CA 8E C1 D1 routeoptjp(fshcmdMANo, fshcmdMANf) - 28 D1:B935 C5 - - - push bc ;put ret location back on stack - 29 D1:B936 C9 - - - ret - 30 D1:B937 - - - - - 31 D1:B937 - - - - fshcmdmanroute: - 32 D1:B937 C1 - - - pop bc - 33 D1:B938 11 9D BA D1 + CA 9A C1 D1 routeoptjp(fshcmdMANo, fshcmdMANf) + 28 D1:B941 C5 - - - push bc ;put ret location back on stack + 29 D1:B942 C9 - - - ret + 30 D1:B943 - - - - + 31 D1:B943 - - - - fshcmdmanroute: + 32 D1:B943 C1 - - - pop bc + 33 D1:B944 11 A9 BA D1 CD 59 AC D1 - 11 A4 BA D1 - CA 8D B7 D1 routestrjp(fshcmdEXIT, fshCmdEXITm) - 34 D1:B948 11 B7 BA D1 + 11 B0 BA D1 + CA 99 B7 D1 routestrjp(fshcmdEXIT, fshCmdEXITm) + 34 D1:B954 11 C3 BA D1 CD 59 AC D1 - 11 BD BA D1 - CA 8D B7 D1 routestrjp(fshcmdSET, fshCmdSETm) - 35 D1:B958 11 AF BB D1 + 11 C9 BA D1 + CA 99 B7 D1 routestrjp(fshcmdSET, fshCmdSETm) + 35 D1:B964 11 BB BB D1 CD 59 AC D1 - 11 B6 BB D1 - CA 8D B7 D1 routestrjp(fshcmdCOPY, fshCmdCOPYm) - 36 D1:B968 11 BE BC D1 + 11 C2 BB D1 + CA 99 B7 D1 routestrjp(fshcmdCOPY, fshCmdCOPYm) + 36 D1:B974 11 CA BC D1 CD 59 AC D1 - 11 C5 BC D1 - CA 8D B7 D1 routestrjp(fshcmdMOVE, fshCmdMOVEm) - 37 D1:B978 11 D5 BD D1 + 11 D1 BC D1 + CA 99 B7 D1 routestrjp(fshcmdMOVE, fshCmdMOVEm) + 37 D1:B984 11 E1 BD D1 CD 59 AC D1 - 11 DB BD D1 - CA 8D B7 D1 routestrjp(fshcmdCLS, fshCmdCLSm) - 38 D1:B988 11 02 BE D1 + 11 E7 BD D1 + CA 99 B7 D1 routestrjp(fshcmdCLS, fshCmdCLSm) + 38 D1:B994 11 0E BE D1 CD 59 AC D1 - 11 08 BE D1 - CA 8D B7 D1 routestrjp(fshcmdVAR, fshCmdVARm) - 39 D1:B998 11 A5 BE D1 + 11 14 BE D1 + CA 99 B7 D1 routestrjp(fshcmdVAR, fshCmdVARm) + 39 D1:B9A4 11 B1 BE D1 CD 59 AC D1 - 11 AC BE D1 - CA 8D B7 D1 routestrjp(fshcmdVARS, fshCmdVARSm) - 40 D1:B9A8 11 16 BF D1 + 11 B8 BE D1 + CA 99 B7 D1 routestrjp(fshcmdVARS, fshCmdVARSm) + 40 D1:B9B4 11 22 BF D1 CD 59 AC D1 - 11 1E BF D1 - CA 8D B7 D1 routestrjp(fshcmdSLEEP, fshCmdSLEEPm) - 41 D1:B9B8 11 65 BF D1 + 11 2A BF D1 + CA 99 B7 D1 routestrjp(fshcmdSLEEP, fshCmdSLEEPm) + 41 D1:B9C4 11 71 BF D1 CD 59 AC D1 - 11 6C BF D1 - CA 8D B7 D1 routestrjp(fshcmdINFO, fshCmdINFOm) - 42 D1:B9C8 11 08 C0 D1 + 11 78 BF D1 + CA 99 B7 D1 routestrjp(fshcmdINFO, fshCmdINFOm) + 42 D1:B9D4 11 14 C0 D1 CD 59 AC D1 - 11 0F C0 D1 - CA 8D B7 D1 routestrjp(fshcmdHELP, fshCmdHELPm) - 43 D1:B9D8 11 5C C1 D1 + 11 1B C0 D1 + CA 99 B7 D1 routestrjp(fshcmdHELP, fshCmdHELPm) + 43 D1:B9E4 11 68 C1 D1 CD 59 AC D1 - 11 62 C1 D1 - CA 8D B7 D1 routestrjp(fshcmdMAN, fshCmdMANm) - 44 D1:B9E8 C5 - - - push bc - 45 D1:B9E9 C9 - - - ret - 46 D1:B9EA - - - - - 47 D1:B9EA - - - - fshcmdmanrouteu: - 48 D1:B9EA C1 - - - pop bc - 49 D1:B9EB 11 9D BA D1 + 11 6E C1 D1 + CA 99 B7 D1 routestrjp(fshcmdMAN, fshCmdMANm) + 44 D1:B9F4 C5 - - - push bc + 45 D1:B9F5 C9 - - - ret + 46 D1:B9F6 - - - - + 47 D1:B9F6 - - - - fshcmdmanrouteu: + 48 D1:B9F6 C1 - - - pop bc + 49 D1:B9F7 11 A9 BA D1 CD 59 AC D1 - 11 AE BA D1 - CA A3 B7 D1 routeustrjp(fshcmdEXIT, fshCmdEXITu) - 50 D1:B9FB 11 B7 BA D1 + 11 BA BA D1 + CA AF B7 D1 routeustrjp(fshcmdEXIT, fshCmdEXITu) + 50 D1:BA07 11 C3 BA D1 CD 59 AC D1 - 11 D8 BA D1 - CA A3 B7 D1 routeustrjp(fshcmdSET, fshCmdSETu) - 51 D1:BA0B 11 AF BB D1 + 11 E4 BA D1 + CA AF B7 D1 routeustrjp(fshcmdSET, fshCmdSETu) + 51 D1:BA17 11 BB BB D1 CD 59 AC D1 - 11 E4 BB D1 - CA A3 B7 D1 routeustrjp(fshcmdCOPY, fshCmdCOPYu) - 52 D1:BA1B 11 BE BC D1 + 11 F0 BB D1 + CA AF B7 D1 routeustrjp(fshcmdCOPY, fshCmdCOPYu) + 52 D1:BA27 11 CA BC D1 CD 59 AC D1 - 11 F2 BC D1 - CA A3 B7 D1 routeustrjp(fshcmdMOVE, fshCmdMOVEu) - 53 D1:BA2B 11 D5 BD D1 + 11 FE BC D1 + CA AF B7 D1 routeustrjp(fshcmdMOVE, fshCmdMOVEu) + 53 D1:BA37 11 E1 BD D1 CD 59 AC D1 - 11 ED BD D1 - CA A3 B7 D1 routeustrjp(fshcmdCLS, fshCmdCLSu) - 54 D1:BA3B 11 02 BE D1 + 11 F9 BD D1 + CA AF B7 D1 routeustrjp(fshcmdCLS, fshCmdCLSu) + 54 D1:BA47 11 0E BE D1 CD 59 AC D1 - 11 29 BE D1 - CA A3 B7 D1 routeustrjp(fshcmdVAR, fshCmdVARu) - 55 D1:BA4B 11 A5 BE D1 + 11 35 BE D1 + CA AF B7 D1 routeustrjp(fshcmdVAR, fshCmdVARu) + 55 D1:BA57 11 B1 BE D1 CD 59 AC D1 - 11 C2 BE D1 - CA A3 B7 D1 routeustrjp(fshcmdVARS, fshCmdVARSu) - 56 D1:BA5B 11 16 BF D1 + 11 CE BE D1 + CA AF B7 D1 routeustrjp(fshcmdVARS, fshCmdVARSu) + 56 D1:BA67 11 22 BF D1 CD 59 AC D1 - 11 48 BF D1 - CA A3 B7 D1 routeustrjp(fshcmdSLEEP, fshCmdSLEEPu) - 57 D1:BA6B 11 65 BF D1 + 11 54 BF D1 + CA AF B7 D1 routeustrjp(fshcmdSLEEP, fshCmdSLEEPu) + 57 D1:BA77 11 71 BF D1 CD 59 AC D1 - 11 92 BF D1 - CA A3 B7 D1 routeustrjp(fshcmdINFO, fshCmdINFOu) - 58 D1:BA7B 11 08 C0 D1 + 11 9E BF D1 + CA AF B7 D1 routeustrjp(fshcmdINFO, fshCmdINFOu) + 58 D1:BA87 11 14 C0 D1 CD 59 AC D1 - 11 25 C0 D1 - CA A3 B7 D1 routeustrjp(fshcmdHELP, fshCmdHELPu) - 59 D1:BA8B 11 5C C1 D1 + 11 31 C0 D1 + CA AF B7 D1 routeustrjp(fshcmdHELP, fshCmdHELPu) + 59 D1:BA97 11 68 C1 D1 CD 59 AC D1 - 11 80 C1 D1 - CA A3 B7 D1 routeustrjp(fshcmdMAN, fshCmdMANu) - 60 D1:BA9B C5 - - - push bc - 61 D1:BA9C C9 - - - ret - 62 D1:BA9D - - - - - 63 D1:BA9D - - - - #include "includes/FshCommands/FshCommands.inc" + 11 8C C1 D1 + CA AF B7 D1 routeustrjp(fshcmdMAN, fshCmdMANu) + 60 D1:BAA7 C5 - - - push bc + 61 D1:BAA8 C9 - - - ret + 62 D1:BAA9 - - - - + 63 D1:BAA9 - - - - #include "includes/FshCommands/FshCommands.inc" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/FshCommands.inc" - 1 D1:BA9D - - - - #include "includes/FshCommands/EXIT.asm" + 1 D1:BAA9 - - - - #include "includes/FshCommands/EXIT.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/EXIT.asm" - 1 D1:BA9D 45 58 49 54 + 1 D1:BAA9 45 58 49 54 00 - - - fshcmdEXIT: .db "EXIT", 0 - 2 D1:BAA2 FF 00 - - fshcmdEXITo: .dw $00FF - 3 D1:BAA4 45 78 69 74 + 2 D1:BAAE FF 00 - - fshcmdEXITo: .dw $00FF + 3 D1:BAB0 45 78 69 74 73 20 46 73 68 00 - - fshcmdEXITm: .db "Exits Fsh", 0 - 4 D1:BAAE 45 58 49 54 + 4 D1:BABA 45 58 49 54 00 - - - fshcmdEXITu: .db "EXIT", 0 - 5 D1:BAB3 C3 EB A8 D1 fshcmdEXITf: JP Cleanup + 5 D1:BABF C3 EB A8 D1 fshcmdEXITf: JP Cleanup Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/FshCommands.inc" - 2 D1:BAB7 - - - - #include "includes/FshCommands/SET.asm" + 2 D1:BAC3 - - - - #include "includes/FshCommands/SET.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/SET.asm" - 1 D1:BAB7 53 45 54 00 fshcmdSET: .db "SET", 0 - 2 D1:BABB 01 00 - - fshcmdSETo: .dw $0001 - 3 D1:BABD 53 65 74 73 + 1 D1:BAC3 53 45 54 00 fshcmdSET: .db "SET", 0 + 2 D1:BAC7 01 00 - - fshcmdSETo: .dw $0001 + 3 D1:BAC9 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:BAD8 53 45 54 20 + 4 D1:BAE4 53 45 54 20 3C 64 65 73 74 69 6E 61 74 69 6F 6E @@ -3063,83 +3078,83 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/SET.asm" 3E 20 3C 76 61 6C 75 65 3E 00 - - fshcmdSETu: .db "SET ", 0 - 5 D1:BAFA - - - - fshcmdSETf: - 6 D1:BAFA - - - - fshcmdSETfArg0: - 7 D1:BAFA 21 CD EA D0 ld hl, FshCmdArgFlags - 8 D1:BAFE CB 4E - - bit 1, (hl) - 9 D1:BB00 20 34 - - jr nz, fshcmdSETfArg1 - 10 D1:BB02 CB 46 - - bit 0, (hl) - 11 D1:BB04 28 0C - - jr z, fshcmdSETfArg0Get - 12 D1:BB06 21 F2 B3 D1 ld hl, ErrUsageo - 13 D1:BB0A CD 5D B3 D1 call ErrSet - 14 D1:BB0E CD 10 B3 D1 call ErrCatch - 15 D1:BB12 - - - - fshcmdSETfArg0Get: - 16 D1:BB12 21 99 BB D1 ld hl, fshcmdSETfDIndex - 17 D1:BB16 CD 21 AB D1 call printprompt - 18 D1:BB1A 21 93 BB D1 ld hl, fshcmdSETfInputBuffer - 19 D1:BB1E 11 03 00 00 ld de, 3 - 20 D1:BB22 CD E1 AF D1 call inputnumstr - 21 D1:BB26 CD E3 AC D1 call strtow - 22 D1:BB2A 11 A8 EA D0 ld de, FshCmdArg0 - 23 D1:BB2E EB - - - ex de, hl - 24 D1:BB2F 73 - - - ld (hl), e - 25 D1:BB30 23 - - - inc hl - 26 D1:BB31 72 - - - ld (hl), d - 27 D1:BB32 CD F0 07 02 call _NewLine - 28 D1:BB36 - - - - fshcmdSETfArg1: - 29 D1:BB36 21 CD EA D0 ld hl, FshCmdArgFlags - 30 D1:BB3A CB 5E - - bit 3, (hl) - 31 D1:BB3C 20 34 - - jr nz, fshcmdSETfExe - 32 D1:BB3E CB 56 - - bit 2, (hl) - 33 D1:BB40 28 0C - - jr z, fshcmdSETfArg1Get - 34 D1:BB42 21 F2 B3 D1 ld hl, ErrUsageo - 35 D1:BB46 CD 5D B3 D1 call ErrSet - 36 D1:BB4A CD 10 B3 D1 call ErrCatch - 37 D1:BB4E - - - - fshcmdSETfArg1Get: - 38 D1:BB4E 21 A7 BB D1 ld hl, fshcmdSETfDValue - 39 D1:BB52 CD 21 AB D1 call printprompt - 40 D1:BB56 21 93 BB D1 ld hl, fshcmdSETfInputBuffer - 41 D1:BB5A 11 05 00 00 ld de, 5 - 42 D1:BB5E CD E1 AF D1 call inputnumstr - 43 D1:BB62 CD E3 AC D1 call strtow - 44 D1:BB66 EB - - - ex de, hl - 45 D1:BB67 21 B1 EA D0 ld hl, FshCmdArg1 - 46 D1:BB6B 73 - - - ld (hl), e - 47 D1:BB6C 23 - - - inc hl - 48 D1:BB6D 72 - - - ld (hl), d - 49 D1:BB6E CD F0 07 02 call _NewLine - 50 D1:BB72 - - - - fshcmdSETfExe: - 51 D1:BB72 21 A8 EA D0 ld hl, FshCmdArg0 - 52 D1:BB76 11 00 00 00 ld de, 0 - 53 D1:BB7A 5E - - - ld e, (hl) - 54 D1:BB7B 23 - - - inc hl - 55 D1:BB7C 56 - - - ld d, (hl) - 56 D1:BB7D D5 - - - push de - 57 D1:BB7E 21 B1 EA D0 ld hl, FshCmdArg1 - 58 D1:BB82 5E - - - ld e, (hl) - 59 D1:BB83 23 - - - inc hl - 60 D1:BB84 56 - - - ld d, (hl) - 61 D1:BB85 EB - - - ex de, hl - 62 D1:BB86 D1 - - - pop de - 63 D1:BB87 CD 60 B2 D1 call fshvarset - 64 D1:BB8B CD 10 B3 D1 call ErrCatch - 65 D1:BB8F C3 DF A8 D1 jp Fin - 66 D1:BB93 - - - - - 67 D1:BB93 00 00 00 00 + 5 D1:BB06 - - - - fshcmdSETf: + 6 D1:BB06 - - - - fshcmdSETfArg0: + 7 D1:BB06 21 CD EA D0 ld hl, FshCmdArgFlags + 8 D1:BB0A CB 4E - - bit 1, (hl) + 9 D1:BB0C 20 34 - - jr nz, fshcmdSETfArg1 + 10 D1:BB0E CB 46 - - bit 0, (hl) + 11 D1:BB10 28 0C - - jr z, fshcmdSETfArg0Get + 12 D1:BB12 21 F2 B3 D1 ld hl, ErrUsageo + 13 D1:BB16 CD 5D B3 D1 call ErrSet + 14 D1:BB1A CD 10 B3 D1 call ErrCatch + 15 D1:BB1E - - - - fshcmdSETfArg0Get: + 16 D1:BB1E 21 A5 BB D1 ld hl, fshcmdSETfDIndex + 17 D1:BB22 CD 21 AB D1 call printprompt + 18 D1:BB26 21 9F BB D1 ld hl, fshcmdSETfInputBuffer + 19 D1:BB2A 11 03 00 00 ld de, 3 + 20 D1:BB2E CD E1 AF D1 call inputnumstr + 21 D1:BB32 CD E3 AC D1 call strtow + 22 D1:BB36 11 A8 EA D0 ld de, FshCmdArg0 + 23 D1:BB3A EB - - - ex de, hl + 24 D1:BB3B 73 - - - ld (hl), e + 25 D1:BB3C 23 - - - inc hl + 26 D1:BB3D 72 - - - ld (hl), d + 27 D1:BB3E CD F0 07 02 call _NewLine + 28 D1:BB42 - - - - fshcmdSETfArg1: + 29 D1:BB42 21 CD EA D0 ld hl, FshCmdArgFlags + 30 D1:BB46 CB 5E - - bit 3, (hl) + 31 D1:BB48 20 34 - - jr nz, fshcmdSETfExe + 32 D1:BB4A CB 56 - - bit 2, (hl) + 33 D1:BB4C 28 0C - - jr z, fshcmdSETfArg1Get + 34 D1:BB4E 21 F2 B3 D1 ld hl, ErrUsageo + 35 D1:BB52 CD 5D B3 D1 call ErrSet + 36 D1:BB56 CD 10 B3 D1 call ErrCatch + 37 D1:BB5A - - - - fshcmdSETfArg1Get: + 38 D1:BB5A 21 B3 BB D1 ld hl, fshcmdSETfDValue + 39 D1:BB5E CD 21 AB D1 call printprompt + 40 D1:BB62 21 9F BB D1 ld hl, fshcmdSETfInputBuffer + 41 D1:BB66 11 05 00 00 ld de, 5 + 42 D1:BB6A CD E1 AF D1 call inputnumstr + 43 D1:BB6E CD E3 AC D1 call strtow + 44 D1:BB72 EB - - - ex de, hl + 45 D1:BB73 21 B1 EA D0 ld hl, FshCmdArg1 + 46 D1:BB77 73 - - - ld (hl), e + 47 D1:BB78 23 - - - inc hl + 48 D1:BB79 72 - - - ld (hl), d + 49 D1:BB7A CD F0 07 02 call _NewLine + 50 D1:BB7E - - - - fshcmdSETfExe: + 51 D1:BB7E 21 A8 EA D0 ld hl, FshCmdArg0 + 52 D1:BB82 11 00 00 00 ld de, 0 + 53 D1:BB86 5E - - - ld e, (hl) + 54 D1:BB87 23 - - - inc hl + 55 D1:BB88 56 - - - ld d, (hl) + 56 D1:BB89 D5 - - - push de + 57 D1:BB8A 21 B1 EA D0 ld hl, FshCmdArg1 + 58 D1:BB8E 5E - - - ld e, (hl) + 59 D1:BB8F 23 - - - inc hl + 60 D1:BB90 56 - - - ld d, (hl) + 61 D1:BB91 EB - - - ex de, hl + 62 D1:BB92 D1 - - - pop de + 63 D1:BB93 CD 60 B2 D1 call fshvarset + 64 D1:BB97 CD 10 B3 D1 call ErrCatch + 65 D1:BB9B C3 DF A8 D1 jp Fin + 66 D1:BB9F - - - - + 67 D1:BB9F 00 00 00 00 00 00 - - fshcmdSETfInputBuffer: .db $00, $00, $00, $00, $00, $00 - 68 D1:BB99 44 65 73 74 + 68 D1:BBA5 44 65 73 74 69 6E 61 74 69 6F 6E 3D 20 00 - - fshcmdSETfDIndex: .db "Destination= ", 0 - 69 D1:BBA7 56 61 6C 75 + 69 D1:BBB3 56 61 6C 75 65 3D 20 00 fshcmdSETfDValue: .db "Value= ", 0 Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/FshCommands.inc" - 3 D1:BBAF - - - - #include "includes/FshCommands/COPY.asm" + 3 D1:BBBB - - - - #include "includes/FshCommands/COPY.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/COPY.asm" - 1 D1:BBAF 43 4F 50 59 + 1 D1:BBBB 43 4F 50 59 00 - - - fshcmdCOPY: .db "COPY", 0 - 2 D1:BBB4 02 00 - - fshcmdCOPYo: .dw $0002 - 3 D1:BBB6 43 6F 70 79 + 2 D1:BBC0 02 00 - - fshcmdCOPYo: .dw $0002 + 3 D1:BBC2 43 6F 70 79 73 20 61 20 76 61 6C 75 65 20 69 6E @@ -3151,7 +3166,7 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/COPY.asm 65 72 20 61 64 64 65 73 73 00 - - fshcmdCOPYm: .db "Copys a value in FSH memory to another addess", 0 - 4 D1:BBE4 43 4F 50 59 + 4 D1:BBF0 43 4F 50 59 20 3C 73 6F 75 72 63 65 20 61 64 64 @@ -3162,74 +3177,74 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/COPY.asm 6F 6E 20 61 64 64 72 65 73 73 3E 00 fshcmdCOPYu: .db "COPY ", 0 - 5 D1:BC10 - - - - fshcmdCOPYf: - 6 D1:BC10 - - - - fshcmdCOPYfArg0: - 7 D1:BC10 21 CD EA D0 ld hl, FshCmdArgFlags - 8 D1:BC14 CB 4E - - bit 1, (hl) - 9 D1:BC16 20 31 - - jr nz, fshcmdCOPYfArg1 - 10 D1:BC18 CB 46 - - bit 0, (hl) - 11 D1:BC1A 28 0C - - jr z, fshcmdCOPYfArg0Get - 12 D1:BC1C 21 F2 B3 D1 ld hl, ErrUsageo - 13 D1:BC20 CD 5D B3 D1 call ErrSet - 14 D1:BC24 CD 10 B3 D1 call ErrCatch - 15 D1:BC28 - - - - fshcmdCOPYfArg0Get: - 16 D1:BC28 21 A7 BC D1 ld hl, fshcmdCOPYfDSource - 17 D1:BC2C CD 21 AB D1 call printprompt - 18 D1:BC30 21 A3 BC D1 ld hl, fshcmdCOPYfInputBuffer - 19 D1:BC34 11 03 00 00 ld de, 3 - 20 D1:BC38 CD E1 AF D1 call inputnumstr - 21 D1:BC3C CD 86 AC D1 call strtob - 22 D1:BC40 21 A8 EA D0 ld hl, FshCmdArg0 - 23 D1:BC44 77 - - - ld (hl), a - 24 D1:BC45 CD F0 07 02 call _NewLine - 25 D1:BC49 - - - - fshcmdCOPYfArg1: - 26 D1:BC49 21 CD EA D0 ld hl, FshCmdArgFlags - 27 D1:BC4D CB 5E - - bit 3, (hl) - 28 D1:BC4F 20 31 - - jr nz, fshcmdCOPYfExe - 29 D1:BC51 CB 56 - - bit 2, (hl) - 30 D1:BC53 28 0C - - jr z, fshcmdCOPYfArg1Get - 31 D1:BC55 21 F2 B3 D1 ld hl, ErrUsageo - 32 D1:BC59 CD 5D B3 D1 call ErrSet - 33 D1:BC5D CD 10 B3 D1 call ErrCatch - 34 D1:BC61 - - - - fshcmdCOPYfArg1Get: - 35 D1:BC61 21 A7 BC D1 ld hl, fshcmdCOPYfDSource - 36 D1:BC65 CD 21 AB D1 call printprompt - 37 D1:BC69 21 A3 BC D1 ld hl, fshcmdCOPYfInputBuffer - 38 D1:BC6D 11 03 00 00 ld de, 3 - 39 D1:BC71 CD E1 AF D1 call inputnumstr - 40 D1:BC75 CD 86 AC D1 call strtob - 41 D1:BC79 21 B1 EA D0 ld hl, FshCmdArg1 - 42 D1:BC7D 77 - - - ld (hl), a - 43 D1:BC7E CD F0 07 02 call _NewLine - 44 D1:BC82 - - - - fshcmdCOPYfExe: - 45 D1:BC82 21 A8 EA D0 ld hl, FshCmdArg0 - 46 D1:BC86 11 00 00 00 ld de, 0 - 47 D1:BC8A 5E - - - ld e, (hl) - 48 D1:BC8B EB - - - ex de, hl - 49 D1:BC8C E5 - - - push hl - 50 D1:BC8D 21 B1 EA D0 ld hl, FshCmdArg1 - 51 D1:BC91 11 00 00 00 ld de, 0 - 52 D1:BC95 5E - - - ld e, (hl) - 53 D1:BC96 E1 - - - pop hl - 54 D1:BC97 CD B3 B2 D1 call fshvarcpy - 55 D1:BC9B CD 10 B3 D1 call ErrCatch - 56 D1:BC9F C3 DF A8 D1 jp Fin - 57 D1:BCA3 - - - - - 58 D1:BCA3 00 00 00 00 fshcmdCOPYfInputBuffer: .db $00, $00, $00, $00 - 59 D1:BCA7 53 6F 75 72 + 5 D1:BC1C - - - - fshcmdCOPYf: + 6 D1:BC1C - - - - fshcmdCOPYfArg0: + 7 D1:BC1C 21 CD EA D0 ld hl, FshCmdArgFlags + 8 D1:BC20 CB 4E - - bit 1, (hl) + 9 D1:BC22 20 31 - - jr nz, fshcmdCOPYfArg1 + 10 D1:BC24 CB 46 - - bit 0, (hl) + 11 D1:BC26 28 0C - - jr z, fshcmdCOPYfArg0Get + 12 D1:BC28 21 F2 B3 D1 ld hl, ErrUsageo + 13 D1:BC2C CD 5D B3 D1 call ErrSet + 14 D1:BC30 CD 10 B3 D1 call ErrCatch + 15 D1:BC34 - - - - fshcmdCOPYfArg0Get: + 16 D1:BC34 21 B3 BC D1 ld hl, fshcmdCOPYfDSource + 17 D1:BC38 CD 21 AB D1 call printprompt + 18 D1:BC3C 21 AF BC D1 ld hl, fshcmdCOPYfInputBuffer + 19 D1:BC40 11 03 00 00 ld de, 3 + 20 D1:BC44 CD E1 AF D1 call inputnumstr + 21 D1:BC48 CD 86 AC D1 call strtob + 22 D1:BC4C 21 A8 EA D0 ld hl, FshCmdArg0 + 23 D1:BC50 77 - - - ld (hl), a + 24 D1:BC51 CD F0 07 02 call _NewLine + 25 D1:BC55 - - - - fshcmdCOPYfArg1: + 26 D1:BC55 21 CD EA D0 ld hl, FshCmdArgFlags + 27 D1:BC59 CB 5E - - bit 3, (hl) + 28 D1:BC5B 20 31 - - jr nz, fshcmdCOPYfExe + 29 D1:BC5D CB 56 - - bit 2, (hl) + 30 D1:BC5F 28 0C - - jr z, fshcmdCOPYfArg1Get + 31 D1:BC61 21 F2 B3 D1 ld hl, ErrUsageo + 32 D1:BC65 CD 5D B3 D1 call ErrSet + 33 D1:BC69 CD 10 B3 D1 call ErrCatch + 34 D1:BC6D - - - - fshcmdCOPYfArg1Get: + 35 D1:BC6D 21 B3 BC D1 ld hl, fshcmdCOPYfDSource + 36 D1:BC71 CD 21 AB D1 call printprompt + 37 D1:BC75 21 AF BC D1 ld hl, fshcmdCOPYfInputBuffer + 38 D1:BC79 11 03 00 00 ld de, 3 + 39 D1:BC7D CD E1 AF D1 call inputnumstr + 40 D1:BC81 CD 86 AC D1 call strtob + 41 D1:BC85 21 B1 EA D0 ld hl, FshCmdArg1 + 42 D1:BC89 77 - - - ld (hl), a + 43 D1:BC8A CD F0 07 02 call _NewLine + 44 D1:BC8E - - - - fshcmdCOPYfExe: + 45 D1:BC8E 21 A8 EA D0 ld hl, FshCmdArg0 + 46 D1:BC92 11 00 00 00 ld de, 0 + 47 D1:BC96 5E - - - ld e, (hl) + 48 D1:BC97 EB - - - ex de, hl + 49 D1:BC98 E5 - - - push hl + 50 D1:BC99 21 B1 EA D0 ld hl, FshCmdArg1 + 51 D1:BC9D 11 00 00 00 ld de, 0 + 52 D1:BCA1 5E - - - ld e, (hl) + 53 D1:BCA2 E1 - - - pop hl + 54 D1:BCA3 CD B3 B2 D1 call fshvarcpy + 55 D1:BCA7 CD 10 B3 D1 call ErrCatch + 56 D1:BCAB C3 DF A8 D1 jp Fin + 57 D1:BCAF - - - - + 58 D1:BCAF 00 00 00 00 fshcmdCOPYfInputBuffer: .db $00, $00, $00, $00 + 59 D1:BCB3 53 6F 75 72 63 65 3D 20 00 - - - fshcmdCOPYfDSource: .db "Source= ", 0 - 60 D1:BCB0 44 65 73 74 + 60 D1:BCBC 44 65 73 74 69 6E 61 74 69 6F 6E 3D 20 00 - - fshcmdCOPYfDDestination: .db "Destination= ", 0 Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/FshCommands.inc" - 4 D1:BCBE - - - - #include "includes/FshCommands/MOVE.asm" + 4 D1:BCCA - - - - #include "includes/FshCommands/MOVE.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/MOVE.asm" - 1 D1:BCBE 4D 4F 56 45 + 1 D1:BCCA 4D 4F 56 45 00 - - - fshcmdMOVE: .db "MOVE", 0 - 2 D1:BCC3 03 00 - - fshcmdMOVEo: .dw $0003 - 3 D1:BCC5 4D 6F 76 65 + 2 D1:BCCF 03 00 - - fshcmdMOVEo: .dw $0003 + 3 D1:BCD1 4D 6F 76 65 20 61 20 76 61 6C 75 65 20 69 6E 20 @@ -3241,7 +3256,7 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/MOVE.asm 72 20 61 64 64 65 73 73 00 - - - fshcmdMOVEm: .db "Move a value in FSH memory to another addess", 0 - 4 D1:BCF2 4D 4F 56 45 + 4 D1:BCFE 4D 4F 56 45 20 3C 73 6F 75 72 63 65 20 61 64 64 @@ -3252,93 +3267,93 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/MOVE.asm 6F 6E 20 61 64 64 72 65 73 73 3E 00 fshcmdMOVEu: .db "MOVE ", 0 - 5 D1:BD1E - - - - fshcmdMOVEf: - 6 D1:BD1E - - - - fshcmdMOVEfArg0: - 7 D1:BD1E 21 CD EA D0 ld hl, FshCmdArgFlags - 8 D1:BD22 CB 4E - - bit 1, (hl) - 9 D1:BD24 20 31 - - jr nz, fshcmdMOVEfArg1 - 10 D1:BD26 CB 46 - - bit 0, (hl) - 11 D1:BD28 28 0C - - jr z, fshcmdMOVEfArg0Get - 12 D1:BD2A 21 F2 B3 D1 ld hl, ErrUsageo - 13 D1:BD2E CD 5D B3 D1 call ErrSet - 14 D1:BD32 CD 10 B3 D1 call ErrCatch - 15 D1:BD36 - - - - fshcmdMOVEfArg0Get: - 16 D1:BD36 21 BE BD D1 ld hl, fshcmdMOVEfDSource - 17 D1:BD3A CD 21 AB D1 call printprompt - 18 D1:BD3E 21 BA BD D1 ld hl, fshcmdMOVEfInputBuffer - 19 D1:BD42 11 03 00 00 ld de, 3 - 20 D1:BD46 CD E1 AF D1 call inputnumstr - 21 D1:BD4A CD 86 AC D1 call strtob - 22 D1:BD4E 21 A8 EA D0 ld hl, FshCmdArg0 - 23 D1:BD52 77 - - - ld (hl), a - 24 D1:BD53 CD F0 07 02 call _NewLine - 25 D1:BD57 - - - - fshcmdMOVEfArg1: - 26 D1:BD57 21 CD EA D0 ld hl, FshCmdArgFlags - 27 D1:BD5B CB 5E - - bit 3, (hl) - 28 D1:BD5D 20 31 - - jr nz, fshcmdMOVEfExe - 29 D1:BD5F CB 56 - - bit 2, (hl) - 30 D1:BD61 28 0C - - jr z, fshcmdMOVEfArg1Get - 31 D1:BD63 21 F2 B3 D1 ld hl, ErrUsageo - 32 D1:BD67 CD 5D B3 D1 call ErrSet - 33 D1:BD6B CD 10 B3 D1 call ErrCatch - 34 D1:BD6F - - - - fshcmdMOVEfArg1Get: - 35 D1:BD6F 21 C7 BD D1 ld hl, fshcmdMOVEfDDestination - 36 D1:BD73 CD 21 AB D1 call printprompt - 37 D1:BD77 21 BA BD D1 ld hl, fshcmdMOVEfInputBuffer - 38 D1:BD7B 11 03 00 00 ld de, 3 - 39 D1:BD7F CD E1 AF D1 call inputnumstr - 40 D1:BD83 CD 86 AC D1 call strtob - 41 D1:BD87 21 B1 EA D0 ld hl, FshCmdArg1 - 42 D1:BD8B 77 - - - ld (hl), a - 43 D1:BD8C CD F0 07 02 call _NewLine - 44 D1:BD90 - - - - fshcmdMOVEfExe: - 45 D1:BD90 21 A8 EA D0 ld hl, FshCmdArg0 - 46 D1:BD94 11 00 00 00 ld de, 0 - 47 D1:BD98 5E - - - ld e, (hl) - 48 D1:BD99 EB - - - ex de, hl - 49 D1:BD9A E5 - - - push hl - 50 D1:BD9B 21 B1 EA D0 ld hl, FshCmdArg1 - 51 D1:BD9F 11 00 00 00 ld de, 0 - 52 D1:BDA3 5E - - - ld e, (hl) - 53 D1:BDA4 E1 - - - pop hl - 54 D1:BDA5 CD B3 B2 D1 call fshvarcpy - 55 D1:BDA9 EB - - - ex de, hl - 56 D1:BDAA 21 00 00 00 ld hl, 0 - 57 D1:BDAE CD 60 B2 D1 call fshvarset - 58 D1:BDB2 CD 10 B3 D1 call ErrCatch - 59 D1:BDB6 C3 DF A8 D1 jp Fin - 60 D1:BDBA - - - - - 61 D1:BDBA 00 00 00 00 fshcmdMOVEfInputBuffer: .db $00, $00, $00, $00 - 62 D1:BDBE 53 6F 75 72 + 5 D1:BD2A - - - - fshcmdMOVEf: + 6 D1:BD2A - - - - fshcmdMOVEfArg0: + 7 D1:BD2A 21 CD EA D0 ld hl, FshCmdArgFlags + 8 D1:BD2E CB 4E - - bit 1, (hl) + 9 D1:BD30 20 31 - - jr nz, fshcmdMOVEfArg1 + 10 D1:BD32 CB 46 - - bit 0, (hl) + 11 D1:BD34 28 0C - - jr z, fshcmdMOVEfArg0Get + 12 D1:BD36 21 F2 B3 D1 ld hl, ErrUsageo + 13 D1:BD3A CD 5D B3 D1 call ErrSet + 14 D1:BD3E CD 10 B3 D1 call ErrCatch + 15 D1:BD42 - - - - fshcmdMOVEfArg0Get: + 16 D1:BD42 21 CA BD D1 ld hl, fshcmdMOVEfDSource + 17 D1:BD46 CD 21 AB D1 call printprompt + 18 D1:BD4A 21 C6 BD D1 ld hl, fshcmdMOVEfInputBuffer + 19 D1:BD4E 11 03 00 00 ld de, 3 + 20 D1:BD52 CD E1 AF D1 call inputnumstr + 21 D1:BD56 CD 86 AC D1 call strtob + 22 D1:BD5A 21 A8 EA D0 ld hl, FshCmdArg0 + 23 D1:BD5E 77 - - - ld (hl), a + 24 D1:BD5F CD F0 07 02 call _NewLine + 25 D1:BD63 - - - - fshcmdMOVEfArg1: + 26 D1:BD63 21 CD EA D0 ld hl, FshCmdArgFlags + 27 D1:BD67 CB 5E - - bit 3, (hl) + 28 D1:BD69 20 31 - - jr nz, fshcmdMOVEfExe + 29 D1:BD6B CB 56 - - bit 2, (hl) + 30 D1:BD6D 28 0C - - jr z, fshcmdMOVEfArg1Get + 31 D1:BD6F 21 F2 B3 D1 ld hl, ErrUsageo + 32 D1:BD73 CD 5D B3 D1 call ErrSet + 33 D1:BD77 CD 10 B3 D1 call ErrCatch + 34 D1:BD7B - - - - fshcmdMOVEfArg1Get: + 35 D1:BD7B 21 D3 BD D1 ld hl, fshcmdMOVEfDDestination + 36 D1:BD7F CD 21 AB D1 call printprompt + 37 D1:BD83 21 C6 BD D1 ld hl, fshcmdMOVEfInputBuffer + 38 D1:BD87 11 03 00 00 ld de, 3 + 39 D1:BD8B CD E1 AF D1 call inputnumstr + 40 D1:BD8F CD 86 AC D1 call strtob + 41 D1:BD93 21 B1 EA D0 ld hl, FshCmdArg1 + 42 D1:BD97 77 - - - ld (hl), a + 43 D1:BD98 CD F0 07 02 call _NewLine + 44 D1:BD9C - - - - fshcmdMOVEfExe: + 45 D1:BD9C 21 A8 EA D0 ld hl, FshCmdArg0 + 46 D1:BDA0 11 00 00 00 ld de, 0 + 47 D1:BDA4 5E - - - ld e, (hl) + 48 D1:BDA5 EB - - - ex de, hl + 49 D1:BDA6 E5 - - - push hl + 50 D1:BDA7 21 B1 EA D0 ld hl, FshCmdArg1 + 51 D1:BDAB 11 00 00 00 ld de, 0 + 52 D1:BDAF 5E - - - ld e, (hl) + 53 D1:BDB0 E1 - - - pop hl + 54 D1:BDB1 CD B3 B2 D1 call fshvarcpy + 55 D1:BDB5 EB - - - ex de, hl + 56 D1:BDB6 21 00 00 00 ld hl, 0 + 57 D1:BDBA CD 60 B2 D1 call fshvarset + 58 D1:BDBE CD 10 B3 D1 call ErrCatch + 59 D1:BDC2 C3 DF A8 D1 jp Fin + 60 D1:BDC6 - - - - + 61 D1:BDC6 00 00 00 00 fshcmdMOVEfInputBuffer: .db $00, $00, $00, $00 + 62 D1:BDCA 53 6F 75 72 63 65 3D 20 00 - - - fshcmdMOVEfDSource: .db "Source= ", 0 - 63 D1:BDC7 44 65 73 74 + 63 D1:BDD3 44 65 73 74 69 6E 61 74 69 6F 6E 3D 20 00 - - fshcmdMOVEfDDestination: .db "Destination= ", 0 Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/FshCommands.inc" - 5 D1:BDD5 - - - - #include "includes/FshCommands/CLS.asm" + 5 D1:BDE1 - - - - #include "includes/FshCommands/CLS.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/CLS.asm" - 1 D1:BDD5 43 4C 53 00 fshcmdCLS: .db "CLS", 0 - 2 D1:BDD9 10 00 - - fshcmdCLSo: .dw $0010 - 3 D1:BDDB 43 6C 65 61 + 1 D1:BDE1 43 4C 53 00 fshcmdCLS: .db "CLS", 0 + 2 D1:BDE5 10 00 - - fshcmdCLSo: .dw $0010 + 3 D1:BDE7 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:BDED 43 4C 53 00 fshcmdCLSu: .db "CLS", 0 - 5 D1:BDF1 - - - - fshcmdCLSf: - 6 D1:BDF1 CD 08 08 02 call _ClrLCDFull - 7 D1:BDF5 AF - - - xor a - 8 D1:BDF6 32 95 05 D0 ld (CurRow), a - 9 D1:BDFA 32 96 05 D0 ld (CurCol), a - 10 D1:BDFE C3 DF A8 D1 jp Fin + 4 D1:BDF9 43 4C 53 00 fshcmdCLSu: .db "CLS", 0 + 5 D1:BDFD - - - - fshcmdCLSf: + 6 D1:BDFD CD 08 08 02 call _ClrLCDFull + 7 D1:BE01 AF - - - xor a + 8 D1:BE02 32 95 05 D0 ld (CurRow), a + 9 D1:BE06 32 96 05 D0 ld (CurCol), a + 10 D1:BE0A C3 DF A8 D1 jp Fin Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/FshCommands.inc" - 6 D1:BE02 - - - - #include "includes/FshCommands/VAR.asm" + 6 D1:BE0E - - - - #include "includes/FshCommands/VAR.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/VAR.asm" - 1 D1:BE02 56 41 52 00 fshcmdVAR: .db "VAR", 0 - 2 D1:BE06 11 00 - - fshcmdVARo: .dw $0011 - 3 D1:BE08 44 69 73 70 + 1 D1:BE0E 56 41 52 00 fshcmdVAR: .db "VAR", 0 + 2 D1:BE12 11 00 - - fshcmdVARo: .dw $0011 + 3 D1:BE14 44 69 73 70 6C 61 79 73 20 61 20 76 61 6C 75 65 @@ -3347,111 +3362,111 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/VAR.asm" 48 20 6D 65 6D 6F 72 79 00 - - - fshcmdVARm: .db "Displays a value from FSH memory", 0 - 4 D1:BE29 56 41 52 20 + 4 D1:BE35 56 41 52 20 3C 73 6F 75 72 63 65 20 61 64 64 72 65 73 73 3E 00 - - - fshcmdVARu: .db "VAR ", 0 - 5 D1:BE3E - - - - fshcmdVARf: - 6 D1:BE3E - - - - fshcmdVARfArg0: - 7 D1:BE3E 21 CD EA D0 ld hl, FshCmdArgFlags - 8 D1:BE42 CB 4E - - bit 1, (hl) - 9 D1:BE44 20 34 - - jr nz, fshcmdVARfExe - 10 D1:BE46 CB 46 - - bit 0, (hl) - 11 D1:BE48 28 0C - - jr z, fshcmdVARfArg0Get - 12 D1:BE4A 21 F2 B3 D1 ld hl, ErrUsageo - 13 D1:BE4E CD 5D B3 D1 call ErrSet - 14 D1:BE52 CD 10 B3 D1 call ErrCatch - 15 D1:BE56 - - - - fshcmdVARfArg0Get: - 16 D1:BE56 21 9D BE D1 ld hl, fshcmdVARfDIndex - 17 D1:BE5A CD 21 AB D1 call printprompt - 18 D1:BE5E 21 99 BE D1 ld hl, fshcmdVARfInputBuffer - 19 D1:BE62 11 03 00 00 ld de, 3 - 20 D1:BE66 CD E1 AF D1 call inputnumstr - 21 D1:BE6A CD E3 AC D1 call strtow - 22 D1:BE6E 11 A8 EA D0 ld de, FshCmdArg0 - 23 D1:BE72 EB - - - ex de, hl - 24 D1:BE73 73 - - - ld (hl), e - 25 D1:BE74 23 - - - inc hl - 26 D1:BE75 72 - - - ld (hl), d - 27 D1:BE76 CD F0 07 02 call _NewLine - 28 D1:BE7A - - - - fshcmdVARfExe: - 29 D1:BE7A 21 A8 EA D0 ld hl, FshCmdArg0 - 30 D1:BE7E 11 00 00 00 ld de, 0 - 31 D1:BE82 5E - - - ld e, (hl) - 32 D1:BE83 23 - - - inc hl - 33 D1:BE84 56 - - - ld d, (hl) - 34 D1:BE85 CD 88 B2 D1 call fshvarget - 35 D1:BE89 CD 10 B3 D1 call ErrCatch - 36 D1:BE8D CD BC 07 02 call _DispHL_s - 37 D1:BE91 CD F0 07 02 call _NewLine - 38 D1:BE95 C3 DF A8 D1 jp Fin - 39 D1:BE99 - - - - - 40 D1:BE99 00 00 00 00 fshcmdVARfInputBuffer: .db $00, $00, $00, $00 - 41 D1:BE9D 49 6E 64 65 + 5 D1:BE4A - - - - fshcmdVARf: + 6 D1:BE4A - - - - fshcmdVARfArg0: + 7 D1:BE4A 21 CD EA D0 ld hl, FshCmdArgFlags + 8 D1:BE4E CB 4E - - bit 1, (hl) + 9 D1:BE50 20 34 - - jr nz, fshcmdVARfExe + 10 D1:BE52 CB 46 - - bit 0, (hl) + 11 D1:BE54 28 0C - - jr z, fshcmdVARfArg0Get + 12 D1:BE56 21 F2 B3 D1 ld hl, ErrUsageo + 13 D1:BE5A CD 5D B3 D1 call ErrSet + 14 D1:BE5E CD 10 B3 D1 call ErrCatch + 15 D1:BE62 - - - - fshcmdVARfArg0Get: + 16 D1:BE62 21 A9 BE D1 ld hl, fshcmdVARfDIndex + 17 D1:BE66 CD 21 AB D1 call printprompt + 18 D1:BE6A 21 A5 BE D1 ld hl, fshcmdVARfInputBuffer + 19 D1:BE6E 11 03 00 00 ld de, 3 + 20 D1:BE72 CD E1 AF D1 call inputnumstr + 21 D1:BE76 CD E3 AC D1 call strtow + 22 D1:BE7A 11 A8 EA D0 ld de, FshCmdArg0 + 23 D1:BE7E EB - - - ex de, hl + 24 D1:BE7F 73 - - - ld (hl), e + 25 D1:BE80 23 - - - inc hl + 26 D1:BE81 72 - - - ld (hl), d + 27 D1:BE82 CD F0 07 02 call _NewLine + 28 D1:BE86 - - - - fshcmdVARfExe: + 29 D1:BE86 21 A8 EA D0 ld hl, FshCmdArg0 + 30 D1:BE8A 11 00 00 00 ld de, 0 + 31 D1:BE8E 5E - - - ld e, (hl) + 32 D1:BE8F 23 - - - inc hl + 33 D1:BE90 56 - - - ld d, (hl) + 34 D1:BE91 CD 88 B2 D1 call fshvarget + 35 D1:BE95 CD 10 B3 D1 call ErrCatch + 36 D1:BE99 CD BC 07 02 call _DispHL_s + 37 D1:BE9D CD F0 07 02 call _NewLine + 38 D1:BEA1 C3 DF A8 D1 jp Fin + 39 D1:BEA5 - - - - + 40 D1:BEA5 00 00 00 00 fshcmdVARfInputBuffer: .db $00, $00, $00, $00 + 41 D1:BEA9 49 6E 64 65 78 3D 20 00 fshcmdVARfDIndex: .db "Index= ", 0 Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/FshCommands.inc" - 7 D1:BEA5 - - - - #include "includes/FshCommands/VARS.asm" + 7 D1:BEB1 - - - - #include "includes/FshCommands/VARS.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/VARS.asm" - 1 D1:BEA5 56 41 52 53 + 1 D1:BEB1 56 41 52 53 00 - - - fshcmdVARS: .db "VARS", 0 - 2 D1:BEAA 12 00 - - fshcmdVARSo: .dw $0012 - 3 D1:BEAC 44 69 73 70 + 2 D1:BEB6 12 00 - - fshcmdVARSo: .dw $0012 + 3 D1:BEB8 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:BEC2 56 41 52 53 + 4 D1:BECE 56 41 52 53 00 - - - fshcmdVARSu: .db "VARS", 0 - 5 D1:BEC7 - - - - fshcmdVARSf: - 6 D1:BEC7 21 CD EA D0 ld hl, FshCmdArgFlags - 7 D1:BECB CB 46 - - bit 0, (hl) - 8 D1:BECD 28 0C - - jr z, fshcmdVARSfExe - 9 D1:BECF 21 F2 B3 D1 ld hl, ErrUsageo - 10 D1:BED3 CD 5D B3 D1 call ErrSet - 11 D1:BED7 CD 10 B3 D1 call ErrCatch - 12 D1:BEDB - - - - fshcmdVARSfExe: - 13 D1:BEDB 06 00 - - ld b, 0 - 14 D1:BEDD 0E 00 - - ld c, 0 - 15 D1:BEDF 11 00 00 00 ld de, 0 - 16 D1:BEE3 - - - - fshcmdVARSfLoop: - 17 D1:BEE3 CD 88 B2 D1 call fshvarget - 18 D1:BEE7 7C - - - ld a, h - 19 D1:BEE8 CD B8 07 02 call _PutC - 20 D1:BEEC 7D - - - ld a, l - 21 D1:BEED CD B8 07 02 call _PutC - 22 D1:BEF1 79 - - - ld a, c - 23 D1:BEF2 0C - - - inc c - 24 D1:BEF3 FE 07 - - cp 7 - 25 D1:BEF5 20 0E - - jr nz, fshcmdVARSfLoopU - 26 D1:BEF7 E5 - - - push hl - 27 D1:BEF8 C5 - - - push bc - 28 D1:BEF9 D5 - - - push de - 29 D1:BEFA CD F0 07 02 call _NewLine - 30 D1:BEFE D1 - - - pop de - 31 D1:BEFF C1 - - - pop bc - 32 D1:BF00 E1 - - - pop hl - 33 D1:BF01 0E 00 - - ld c, 0 - 34 D1:BF03 18 06 - - jr fshcmdVARSfLoopEnd - 35 D1:BF05 - - - - fshcmdVARSfLoopU: - 36 D1:BF05 3E 5F - - ld a, '_' - 37 D1:BF07 CD B8 07 02 call _PutC - 38 D1:BF0B - - - - fshcmdVARSfLoopEnd: - 39 D1:BF0B 04 - - - inc b - 40 D1:BF0C 13 - - - inc de - 41 D1:BF0D 78 - - - ld a, b - 42 D1:BF0E FE 40 - - cp FshVarsSize / 2 - 43 D1:BF10 38 D1 - - jr c, fshcmdVARSfLoop - 44 D1:BF12 C3 DF A8 D1 jp Fin + 5 D1:BED3 - - - - fshcmdVARSf: + 6 D1:BED3 21 CD EA D0 ld hl, FshCmdArgFlags + 7 D1:BED7 CB 46 - - bit 0, (hl) + 8 D1:BED9 28 0C - - jr z, fshcmdVARSfExe + 9 D1:BEDB 21 F2 B3 D1 ld hl, ErrUsageo + 10 D1:BEDF CD 5D B3 D1 call ErrSet + 11 D1:BEE3 CD 10 B3 D1 call ErrCatch + 12 D1:BEE7 - - - - fshcmdVARSfExe: + 13 D1:BEE7 06 00 - - ld b, 0 + 14 D1:BEE9 0E 00 - - ld c, 0 + 15 D1:BEEB 11 00 00 00 ld de, 0 + 16 D1:BEEF - - - - fshcmdVARSfLoop: + 17 D1:BEEF CD 88 B2 D1 call fshvarget + 18 D1:BEF3 7C - - - ld a, h + 19 D1:BEF4 CD B8 07 02 call _PutC + 20 D1:BEF8 7D - - - ld a, l + 21 D1:BEF9 CD B8 07 02 call _PutC + 22 D1:BEFD 79 - - - ld a, c + 23 D1:BEFE 0C - - - inc c + 24 D1:BEFF FE 07 - - cp 7 + 25 D1:BF01 20 0E - - jr nz, fshcmdVARSfLoopU + 26 D1:BF03 E5 - - - push hl + 27 D1:BF04 C5 - - - push bc + 28 D1:BF05 D5 - - - push de + 29 D1:BF06 CD F0 07 02 call _NewLine + 30 D1:BF0A D1 - - - pop de + 31 D1:BF0B C1 - - - pop bc + 32 D1:BF0C E1 - - - pop hl + 33 D1:BF0D 0E 00 - - ld c, 0 + 34 D1:BF0F 18 06 - - jr fshcmdVARSfLoopEnd + 35 D1:BF11 - - - - fshcmdVARSfLoopU: + 36 D1:BF11 3E 5F - - ld a, '_' + 37 D1:BF13 CD B8 07 02 call _PutC + 38 D1:BF17 - - - - fshcmdVARSfLoopEnd: + 39 D1:BF17 04 - - - inc b + 40 D1:BF18 13 - - - inc de + 41 D1:BF19 78 - - - ld a, b + 42 D1:BF1A FE 40 - - cp FshVarsSize / 2 + 43 D1:BF1C 38 D1 - - jr c, fshcmdVARSfLoop + 44 D1:BF1E C3 DF A8 D1 jp Fin Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/FshCommands.inc" - 8 D1:BF16 - - - - #include "includes/FshCommands/SLEEP.asm" + 8 D1:BF22 - - - - #include "includes/FshCommands/SLEEP.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/SLEEP.asm" - 1 D1:BF16 53 4C 45 45 + 1 D1:BF22 53 4C 45 45 50 00 - - fshcmdSLEEP: .db "SLEEP", 0 - 2 D1:BF1C 16 00 - - fshcmdSLEEPo: .dw $0016 - 3 D1:BF1E 50 75 74 73 + 2 D1:BF28 16 00 - - fshcmdSLEEPo: .dw $0016 + 3 D1:BF2A 50 75 74 73 20 74 68 65 20 63 61 6C 63 75 6C 61 @@ -3462,26 +3477,26 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/SLEEP.as 6F 64 65 20 28 41 50 44 29 00 - - fshcmdSLEEPm: .db "Puts the calculator into sleep mode (APD)", 0 - 4 D1:BF48 53 4C 45 45 + 4 D1:BF54 53 4C 45 45 50 00 - - fshcmdSLEEPu: .db "SLEEP", 0 - 5 D1:BF4E - - - - fshcmdSLEEPf: - 6 D1:BF4E F3 - - - di - 7 D1:BF4F CD 38 11 02 call _EnableAPD - 8 D1:BF53 3E 01 - - ld a,1 - 9 D1:BF55 21 90 05 D0 ld hl,apdSubTimer - 10 D1:BF59 77 - - - ld (hl),a - 11 D1:BF5A 23 - - - inc hl - 12 D1:BF5B 77 - - - ld (hl),a - 13 D1:BF5C FD CB 08 DE set apdRunning,(iy+apdFlags) - 14 D1:BF60 FB - - - ei - 15 D1:BF61 C3 DF A8 D1 jp Fin + 5 D1:BF5A - - - - fshcmdSLEEPf: + 6 D1:BF5A F3 - - - di + 7 D1:BF5B CD 38 11 02 call _EnableAPD + 8 D1:BF5F 3E 01 - - ld a,1 + 9 D1:BF61 21 90 05 D0 ld hl,apdSubTimer + 10 D1:BF65 77 - - - ld (hl),a + 11 D1:BF66 23 - - - inc hl + 12 D1:BF67 77 - - - ld (hl),a + 13 D1:BF68 FD CB 08 DE set apdRunning,(iy+apdFlags) + 14 D1:BF6C FB - - - ei + 15 D1:BF6D C3 DF A8 D1 jp Fin Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/FshCommands.inc" - 9 D1:BF65 - - - - #include "includes/FshCommands/INFO.asm" + 9 D1:BF71 - - - - #include "includes/FshCommands/INFO.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/INFO.asm" - 1 D1:BF65 49 4E 46 4F + 1 D1:BF71 49 4E 46 4F 00 - - - fshcmdINFO: .db "INFO", 0 - 2 D1:BF6A 20 00 - - fshcmdINFOo: .dw $0020 - 3 D1:BF6C 44 69 73 70 + 2 D1:BF76 20 00 - - fshcmdINFOo: .dw $0020 + 3 D1:BF78 44 69 73 70 6C 61 79 73 20 53 79 65 74 65 6D 20 @@ -3491,174 +3506,174 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/INFO.asm 61 6E 64 20 53 74 61 74 73 00 - - fshcmdINFOm: .db "Displays Syetem Information and Stats", 0 - 4 D1:BF92 49 4E 46 4F + 4 D1:BF9E 49 4E 46 4F 00 - - - fshcmdINFOu: .db "INFO", 0 - 5 D1:BF97 - - - - fshcmdINFOf: - 6 D1:BF97 21 CD EA D0 ld hl, FshCmdArgFlags - 7 D1:BF9B CB 46 - - bit 0, (hl) - 8 D1:BF9D 28 0C - - jr z, fshcmdINFOfExe - 9 D1:BF9F 21 F2 B3 D1 ld hl, ErrUsageo - 10 D1:BFA3 CD 5D B3 D1 call ErrSet - 11 D1:BFA7 CD 10 B3 D1 call ErrCatch - 12 D1:BFAB - - - - fshcmdINFOfExe: - 13 D1:BFAB CD 08 08 02 call _ClrLCDFull - 14 D1:BFAF AF - - - xor a - 15 D1:BFB0 32 95 05 D0 ld (CurRow), a - 16 D1:BFB4 32 96 05 D0 ld (CurCol), a - 17 D1:BFB8 - - - - - 18 D1:BFB8 CD 3F B4 D1 call printfshnamelong - 19 D1:BFBC CD F0 07 02 call _NewLine - 20 D1:BFC0 - - - - - 21 D1:BFC0 21 13 A9 D1 ld hl, FshBy - 22 D1:BFC4 CD C0 07 02 call _PutS - 23 D1:BFC8 CD F0 07 02 call _NewLine - 24 D1:BFCC - - - - - 25 D1:BFCC 21 1D A9 D1 ld hl, FshSite - 26 D1:BFD0 CD C0 07 02 call _PutS - 27 D1:BFD4 CD F0 07 02 call _NewLine - 28 D1:BFD8 - - - - - 29 D1:BFD8 CD F0 07 02 call _NewLine - 30 D1:BFDC 21 00 C0 D1 ld hl, fshcmdINFOfSPS1 - 31 D1:BFE0 CD C0 07 02 call _PutS - 32 D1:BFE4 3E 27 - - ld a, $27 - 33 D1:BFE6 CD B8 07 02 call _PutC - 34 D1:BFEA 21 38 A9 D1 ld hl, PS1 - 35 D1:BFEE CD C0 07 02 call _PutS - 36 D1:BFF2 3E 27 - - ld a, $27 - 37 D1:BFF4 CD B8 07 02 call _PutC - 38 D1:BFF8 CD F0 07 02 call _NewLine - 39 D1:BFFC - - - - - 40 D1:BFFC C3 DF A8 D1 jp Fin - 41 D1:C000 - - - - - 42 D1:C000 50 53 31 CE + 5 D1:BFA3 - - - - fshcmdINFOf: + 6 D1:BFA3 21 CD EA D0 ld hl, FshCmdArgFlags + 7 D1:BFA7 CB 46 - - bit 0, (hl) + 8 D1:BFA9 28 0C - - jr z, fshcmdINFOfExe + 9 D1:BFAB 21 F2 B3 D1 ld hl, ErrUsageo + 10 D1:BFAF CD 5D B3 D1 call ErrSet + 11 D1:BFB3 CD 10 B3 D1 call ErrCatch + 12 D1:BFB7 - - - - fshcmdINFOfExe: + 13 D1:BFB7 CD 08 08 02 call _ClrLCDFull + 14 D1:BFBB AF - - - xor a + 15 D1:BFBC 32 95 05 D0 ld (CurRow), a + 16 D1:BFC0 32 96 05 D0 ld (CurCol), a + 17 D1:BFC4 - - - - + 18 D1:BFC4 CD 3F B4 D1 call printfshnamelong + 19 D1:BFC8 CD F0 07 02 call _NewLine + 20 D1:BFCC - - - - + 21 D1:BFCC 21 13 A9 D1 ld hl, FshBy + 22 D1:BFD0 CD C0 07 02 call _PutS + 23 D1:BFD4 CD F0 07 02 call _NewLine + 24 D1:BFD8 - - - - + 25 D1:BFD8 21 1D A9 D1 ld hl, FshSite + 26 D1:BFDC CD C0 07 02 call _PutS + 27 D1:BFE0 CD F0 07 02 call _NewLine + 28 D1:BFE4 - - - - + 29 D1:BFE4 CD F0 07 02 call _NewLine + 30 D1:BFE8 21 0C C0 D1 ld hl, fshcmdINFOfSPS1 + 31 D1:BFEC CD C0 07 02 call _PutS + 32 D1:BFF0 3E 27 - - ld a, $27 + 33 D1:BFF2 CD B8 07 02 call _PutC + 34 D1:BFF6 21 38 A9 D1 ld hl, PS1 + 35 D1:BFFA CD C0 07 02 call _PutS + 36 D1:BFFE 3E 27 - - ld a, $27 + 37 D1:C000 CD B8 07 02 call _PutC + 38 D1:C004 CD F0 07 02 call _NewLine + 39 D1:C008 - - - - + 40 D1:C008 C3 DF A8 D1 jp Fin + 41 D1:C00C - - - - + 42 D1:C00C 50 53 31 CE CE CE 3A 00 fshcmdINFOfSPS1: .db "PS1", $CE, $CE, $CE, ":", 0 Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/FshCommands.inc" - 10 D1:C008 - - - - #include "includes/FshCommands/HELP.asm" + 10 D1:C014 - - - - #include "includes/FshCommands/HELP.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/HELP.asm" - 1 D1:C008 48 45 4C 50 + 1 D1:C014 48 45 4C 50 00 - - - fshcmdHELP: .db "HELP", 0 - 2 D1:C00D 21 00 - - fshcmdHELPo: .dw $0021 - 3 D1:C00F 44 69 73 70 + 2 D1:C019 21 00 - - fshcmdHELPo: .dw $0021 + 3 D1:C01B 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:C025 48 45 4C 50 + 4 D1:C031 48 45 4C 50 00 - - - fshcmdHELPu: .db "HELP", 0 - 5 D1:C02A - - - - fshcmdHELPf: - 6 D1:C02A 21 CD EA D0 ld hl, FshCmdArgFlags - 7 D1:C02E CB 46 - - bit 0, (hl) - 8 D1:C030 28 0C - - jr z, fshcmdHELPfExe - 9 D1:C032 21 F2 B3 D1 ld hl, ErrUsageo - 10 D1:C036 CD 5D B3 D1 call ErrSet - 11 D1:C03A CD 10 B3 D1 call ErrCatch - 12 D1:C03E - - - - fshcmdHELPfExe: - 13 D1:C03E 21 23 C1 D1 ld hl, fshcmdHELPfLine1 - 14 D1:C042 CD C0 07 02 call _PutS - 15 D1:C046 CD F0 07 02 call _NewLine - 16 D1:C04A - - - - - 17 D1:C04A - - - - #macro fshcmdHELPmRow1(cmdXs) - 18 D1:C04A xor a - 19 D1:C04A ld (curCol), a - 20 D1:C04A ld hl, cmdXs - 21 D1:C04A call _PutS - 22 D1:C04A call _NewLine - 23 D1:C04A #endmacro - 24 D1:C04A - - - - #macro fshcmdHELPmRow2(cmdXs, cmdYs) - 25 D1:C04A xor a - 26 D1:C04A ld (curCol), a - 27 D1:C04A ld hl, cmdXs - 28 D1:C04A call _PutS - 29 D1:C04A ld a, 9 - 30 D1:C04A ld (curcol), a - 31 D1:C04A ld hl, cmdYs - 32 D1:C04A call _PutS - 33 D1:C04A call _NewLine - 34 D1:C04A #endmacro - 35 D1:C04A - - - - #macro fshcmdHELPmRow3(cmdXs, cmdYs, cmdZs) - 36 D1:C04A xor a - 37 D1:C04A ld (curCol), a - 38 D1:C04A ld hl, cmdXs - 39 D1:C04A call _PutS - 40 D1:C04A ld a, 9 - 41 D1:C04A ld (curcol), a - 42 D1:C04A ld hl, cmdYs - 43 D1:C04A call _PutS - 44 D1:C04A ld a, 19 - 45 D1:C04A ld (curcol), a - 46 D1:C04A ld hl, cmdZs - 47 D1:C04A call _PutS - 48 D1:C04A call _NewLine - 49 D1:C04A #endmacro - 50 D1:C04A - - - - - 51 D1:C04A AF 32 96 05 - D0 21 9D BA + 5 D1:C036 - - - - fshcmdHELPf: + 6 D1:C036 21 CD EA D0 ld hl, FshCmdArgFlags + 7 D1:C03A CB 46 - - bit 0, (hl) + 8 D1:C03C 28 0C - - jr z, fshcmdHELPfExe + 9 D1:C03E 21 F2 B3 D1 ld hl, ErrUsageo + 10 D1:C042 CD 5D B3 D1 call ErrSet + 11 D1:C046 CD 10 B3 D1 call ErrCatch + 12 D1:C04A - - - - fshcmdHELPfExe: + 13 D1:C04A 21 2F C1 D1 ld hl, fshcmdHELPfLine1 + 14 D1:C04E CD C0 07 02 call _PutS + 15 D1:C052 CD F0 07 02 call _NewLine + 16 D1:C056 - - - - + 17 D1:C056 - - - - #macro fshcmdHELPmRow1(cmdXs) + 18 D1:C056 xor a + 19 D1:C056 ld (curCol), a + 20 D1:C056 ld hl, cmdXs + 21 D1:C056 call _PutS + 22 D1:C056 call _NewLine + 23 D1:C056 #endmacro + 24 D1:C056 - - - - #macro fshcmdHELPmRow2(cmdXs, cmdYs) + 25 D1:C056 xor a + 26 D1:C056 ld (curCol), a + 27 D1:C056 ld hl, cmdXs + 28 D1:C056 call _PutS + 29 D1:C056 ld a, 9 + 30 D1:C056 ld (curcol), a + 31 D1:C056 ld hl, cmdYs + 32 D1:C056 call _PutS + 33 D1:C056 call _NewLine + 34 D1:C056 #endmacro + 35 D1:C056 - - - - #macro fshcmdHELPmRow3(cmdXs, cmdYs, cmdZs) + 36 D1:C056 xor a + 37 D1:C056 ld (curCol), a + 38 D1:C056 ld hl, cmdXs + 39 D1:C056 call _PutS + 40 D1:C056 ld a, 9 + 41 D1:C056 ld (curcol), a + 42 D1:C056 ld hl, cmdYs + 43 D1:C056 call _PutS + 44 D1:C056 ld a, 19 + 45 D1:C056 ld (curcol), a + 46 D1:C056 ld hl, cmdZs + 47 D1:C056 call _PutS + 48 D1:C056 call _NewLine + 49 D1:C056 #endmacro + 50 D1:C056 - - - - + 51 D1:C056 AF 32 96 05 + D0 21 A9 BA D1 CD C0 07 02 3E 09 32 96 05 D0 21 - B7 BA D1 CD + C3 BA D1 CD C0 07 02 3E 13 32 96 05 - D0 21 AF BB + D0 21 BB BB D1 CD C0 07 02 CD F0 07 02 - - - fshcmdHELPmRow3(fshcmdEXIT, fshcmdSET, fshcmdCOPY) Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/HELP.asm" - 52 D1:C077 AF 32 96 05 - D0 21 BE BC + 52 D1:C083 AF 32 96 05 + D0 21 CA BC D1 CD C0 07 02 3E 09 32 96 05 D0 21 - D5 BD D1 CD + E1 BD D1 CD C0 07 02 3E 13 32 96 05 - D0 21 02 BE + D0 21 0E BE D1 CD C0 07 02 CD F0 07 02 - - - fshcmdHELPmRow3(fshcmdMOVE, fshcmdCLS, fshcmdVAR) - 53 D1:C0A4 AF 32 96 05 - D0 21 A5 BE + 53 D1:C0B0 AF 32 96 05 + D0 21 B1 BE D1 CD C0 07 02 3E 09 32 96 05 D0 21 - 16 BF D1 CD + 22 BF D1 CD C0 07 02 3E 13 32 96 05 - D0 21 65 BF + D0 21 71 BF D1 CD C0 07 02 CD F0 07 02 - - - fshcmdHELPmRow3(fshcmdVARS, fshcmdSLEEP, fshcmdINFO) - 54 D1:C0D1 AF 32 96 05 - D0 21 08 C0 + 54 D1:C0DD AF 32 96 05 + D0 21 14 C0 D1 CD C0 07 02 3E 09 32 96 05 D0 21 - 5C C1 D1 CD + 68 C1 D1 CD C0 07 02 CD F0 07 02 - fshcmdHELPmRow2(fshcmdHELP, fshcmdMAN) - 55 D1:C0F0 AF 32 96 05 - D0 21 7F C4 + 55 D1:C0FC AF 32 96 05 + D0 21 8B C4 D1 CD C0 07 02 3E 09 32 96 05 D0 21 - 35 C8 D1 CD + 41 C8 D1 CD C0 07 02 CD F0 07 02 - fshcmdHELPmRow2(cryptocmdENCRYPT, cryptocmdDECRYPT) - 56 D1:C10F - - - - ; Extention Point - 57 D1:C10F - - - - - 58 D1:C10F CD F0 07 02 call _NewLine - 59 D1:C113 21 37 C1 D1 ld hl, fshcmdHELPfLine2 - 60 D1:C117 CD C0 07 02 call _PutS - 61 D1:C11B CD F0 07 02 call _NewLine - 62 D1:C11F C3 DF A8 D1 jp Fin - 63 D1:C123 - - - - - 64 D1:C123 41 76 61 69 + 56 D1:C11B - - - - ; Extention Point + 57 D1:C11B - - - - + 58 D1:C11B CD F0 07 02 call _NewLine + 59 D1:C11F 21 43 C1 D1 ld hl, fshcmdHELPfLine2 + 60 D1:C123 CD C0 07 02 call _PutS + 61 D1:C127 CD F0 07 02 call _NewLine + 62 D1:C12B C3 DF A8 D1 jp Fin + 63 D1:C12F - - - - + 64 D1:C12F 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 - 65 D1:C137 54 79 70 65 + 65 D1:C143 54 79 70 65 20 27 4D 41 4E 27 20 61 6E 64 20 63 @@ -3669,11 +3684,11 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/HELP.asm 69 6E 66 6F 00 - - - fshcmdHELPfLine2: .db "Type 'MAN' and command for more info", 0 Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/FshCommands.inc" - 11 D1:C15C - - - - #include "includes/FshCommands/MAN.asm" + 11 D1:C168 - - - - #include "includes/FshCommands/MAN.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/MAN.asm" - 1 D1:C15C 4D 41 4E 00 fshcmdMAN: .db "MAN", 0 - 2 D1:C160 22 00 - - fshcmdMANo: .dw $0022 - 3 D1:C162 44 69 73 70 + 1 D1:C168 4D 41 4E 00 fshcmdMAN: .db "MAN", 0 + 2 D1:C16C 22 00 - - fshcmdMANo: .dw $0022 + 3 D1:C16E 44 69 73 70 6C 61 79 73 20 4D 41 4E 20 74 65 78 @@ -3681,254 +3696,254 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/MAN.asm" 72 20 63 6F 6D 6D 61 6E 64 00 - - fshcmdMANm: .db "Displays MAN text for command", 0 - 4 D1:C180 4D 41 4E 20 + 4 D1:C18C 4D 41 4E 20 3C 63 6F 6D 6D 61 6E 64 3E 00 - - fshcmdMANu: .db "MAN ", 0 - 5 D1:C18E - - - - fshcmdMANf: - 6 D1:C18E - - - - fshcmdMANfCheckArgs: - 7 D1:C18E 21 CD EA D0 ld hl, FshCmdArgFlags - 8 D1:C192 CB 46 - - bit 0, (hl) - 9 D1:C194 28 10 - - jr z, fshcmdMANfArg0Get - 10 D1:C196 CB 4E - - bit 1, (hl) - 11 D1:C198 28 24 - - jr z, fshcmdMANfExe - 12 D1:C19A 21 F2 B3 D1 ld hl, ErrUsageo - 13 D1:C19E CD 5D B3 D1 call ErrSet - 14 D1:C1A2 CD 10 B3 D1 call ErrCatch - 15 D1:C1A6 - - - - fshcmdMANfArg0Get: - 16 D1:C1A6 21 3B C2 D1 ld hl, fshcmdMANfPrompt - 17 D1:C1AA CD 21 AB D1 call printprompt - 18 D1:C1AE - - - - - 19 D1:C1AE 21 A8 EA D0 ld hl, FshCmdArg0 - 20 D1:C1B2 11 08 00 00 ld de, FshCmdCmdSize - 21 D1:C1B6 CD A9 AD D1 call inputstr - 22 D1:C1BA CD F0 07 02 call _NewLine - 23 D1:C1BE - - - - - 24 D1:C1BE - - - - fshcmdMANfExe: - 25 D1:C1BE 21 A8 EA D0 ld hl, FshCmdArg0 - 26 D1:C1C2 11 9F EA D0 ld de, FshCmd - 27 D1:C1C6 CD 6C AC D1 call strcpy - 28 D1:C1CA - - - - - 29 D1:C1CA 21 2A C2 D1 ld hl, fshcmdMANfPrefix - 30 D1:C1CE CD C0 07 02 call _PutS - 31 D1:C1D2 - - - - - 32 D1:C1D2 21 9F EA D0 ld hl, FshCmd - 33 D1:C1D6 CD C0 07 02 call _PutS - 34 D1:C1DA CD F0 07 02 call _NewLine - 35 D1:C1DE CD F0 07 02 call _NewLine - 36 D1:C1E2 - - - - - 37 D1:C1E2 21 9F EA D0 ld hl, FshCmd - 38 D1:C1E6 CD 7A B7 D1 call manroute - 39 D1:C1EA 11 00 00 00 ld de, $00 - 40 D1:C1EE CD 7A A9 D1 call cpHLDE - 41 D1:C1F2 CA E7 A8 D1 jp z, Err - 42 D1:C1F6 - - - - - 43 D1:C1F6 CD C0 07 02 call _PutS - 44 D1:C1FA CD F0 07 02 call _NewLine - 45 D1:C1FE CD F0 07 02 call _NewLine - 46 D1:C202 - - - - - 47 D1:C202 21 33 C2 D1 ld hl, fshcmdMANfUsage - 48 D1:C206 CD C0 07 02 call _PutS - 49 D1:C20A - - - - - 50 D1:C20A 21 9F EA D0 ld hl, FshCmd - 51 D1:C20E CD 90 B7 D1 call manrouteu - 52 D1:C212 11 00 00 00 ld de, $00 - 53 D1:C216 CD 7A A9 D1 call cpHLDE - 54 D1:C21A CA E7 A8 D1 jp z, Err - 55 D1:C21E CD C0 07 02 call _PutS - 56 D1:C222 CD F0 07 02 call _NewLine - 57 D1:C226 - - - - - 58 D1:C226 C3 DF A8 D1 jp Fin - 59 D1:C22A - - - - - 60 D1:C22A 4D 41 4E 2D + 5 D1:C19A - - - - fshcmdMANf: + 6 D1:C19A - - - - fshcmdMANfCheckArgs: + 7 D1:C19A 21 CD EA D0 ld hl, FshCmdArgFlags + 8 D1:C19E CB 46 - - bit 0, (hl) + 9 D1:C1A0 28 10 - - jr z, fshcmdMANfArg0Get + 10 D1:C1A2 CB 4E - - bit 1, (hl) + 11 D1:C1A4 28 24 - - jr z, fshcmdMANfExe + 12 D1:C1A6 21 F2 B3 D1 ld hl, ErrUsageo + 13 D1:C1AA CD 5D B3 D1 call ErrSet + 14 D1:C1AE CD 10 B3 D1 call ErrCatch + 15 D1:C1B2 - - - - fshcmdMANfArg0Get: + 16 D1:C1B2 21 47 C2 D1 ld hl, fshcmdMANfPrompt + 17 D1:C1B6 CD 21 AB D1 call printprompt + 18 D1:C1BA - - - - + 19 D1:C1BA 21 A8 EA D0 ld hl, FshCmdArg0 + 20 D1:C1BE 11 08 00 00 ld de, FshCmdCmdSize + 21 D1:C1C2 CD A9 AD D1 call inputstr + 22 D1:C1C6 CD F0 07 02 call _NewLine + 23 D1:C1CA - - - - + 24 D1:C1CA - - - - fshcmdMANfExe: + 25 D1:C1CA 21 A8 EA D0 ld hl, FshCmdArg0 + 26 D1:C1CE 11 9F EA D0 ld de, FshCmd + 27 D1:C1D2 CD 6C AC D1 call strcpy + 28 D1:C1D6 - - - - + 29 D1:C1D6 21 36 C2 D1 ld hl, fshcmdMANfPrefix + 30 D1:C1DA CD C0 07 02 call _PutS + 31 D1:C1DE - - - - + 32 D1:C1DE 21 9F EA D0 ld hl, FshCmd + 33 D1:C1E2 CD C0 07 02 call _PutS + 34 D1:C1E6 CD F0 07 02 call _NewLine + 35 D1:C1EA CD F0 07 02 call _NewLine + 36 D1:C1EE - - - - + 37 D1:C1EE 21 9F EA D0 ld hl, FshCmd + 38 D1:C1F2 CD 86 B7 D1 call manroute + 39 D1:C1F6 11 00 00 00 ld de, $00 + 40 D1:C1FA CD 7A A9 D1 call cpHLDE + 41 D1:C1FE CA E7 A8 D1 jp z, Err + 42 D1:C202 - - - - + 43 D1:C202 CD C0 07 02 call _PutS + 44 D1:C206 CD F0 07 02 call _NewLine + 45 D1:C20A CD F0 07 02 call _NewLine + 46 D1:C20E - - - - + 47 D1:C20E 21 3F C2 D1 ld hl, fshcmdMANfUsage + 48 D1:C212 CD C0 07 02 call _PutS + 49 D1:C216 - - - - + 50 D1:C216 21 9F EA D0 ld hl, FshCmd + 51 D1:C21A CD 9C B7 D1 call manrouteu + 52 D1:C21E 11 00 00 00 ld de, $00 + 53 D1:C222 CD 7A A9 D1 call cpHLDE + 54 D1:C226 CA E7 A8 D1 jp z, Err + 55 D1:C22A CD C0 07 02 call _PutS + 56 D1:C22E CD F0 07 02 call _NewLine + 57 D1:C232 - - - - + 58 D1:C232 C3 DF A8 D1 jp Fin + 59 D1:C236 - - - - + 60 D1:C236 4D 41 4E 2D 44 42 DF 20 00 - - - fshcmdMANfPrefix: .db "MAN-DB", $DF, ' ', 0 - 61 D1:C233 55 73 61 67 + 61 D1:C23F 55 73 61 67 65 3A 20 00 fshcmdMANfUsage: .db "Usage: ",0 - 62 D1:C23B 43 6F 6D 6D + 62 D1:C247 43 6F 6D 6D 61 6E 64 3D 20 00 - - fshcmdMANfPrompt: .db "Command= ", 0 Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/FshCommands.inc" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/FshCommands/FshCommand.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/Command.asm" - 50 D1:C245 - - - - #include "includes/CryptoCommands/CryptoCommand.asm" + 50 D1:C251 - - - - #include "includes/CryptoCommands/CryptoCommand.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/CryptoCommand.asm" - 1 D1:C245 - - - - cryptocmddecode: - 2 D1:C245 E5 D5 11 7F + 1 D1:C251 - - - - cryptocmddecode: + 2 D1:C251 E5 D5 11 8B C4 D1 CD 59 - AC D1 21 87 + AC D1 21 93 C4 D1 D1 CC 52 AA D1 E1 decodecmdopt(cryptocmdENCRYPT, cryptocmdENCRYPTo) Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/CryptoCommand.asm" - 3 D1:C259 E5 D5 11 35 + 3 D1:C265 E5 D5 11 41 C8 D1 CD 59 - AC D1 21 3D + AC D1 21 49 C8 D1 D1 CC 52 AA D1 E1 decodecmdopt(cryptocmdDECRYPT, cryptocmdDECRYPTo) - 4 D1:C26D C9 - - - ret - 5 D1:C26E - - - - - 6 D1:C26E - - - - cryptocmdroute: - 7 D1:C26E C1 - - - pop bc - 8 D1:C26F 11 87 C4 D1 + 4 D1:C279 C9 - - - ret + 5 D1:C27A - - - - + 6 D1:C27A - - - - cryptocmdroute: + 7 D1:C27A C1 - - - pop bc + 8 D1:C27B 11 93 C4 D1 CD 5E AA D1 - CA F7 C4 D1 routeoptjp(cryptocmdENCRYPTo, cryptocmdENCRYPTf) - 9 D1:C27B 11 3D C8 D1 + CA 03 C5 D1 routeoptjp(cryptocmdENCRYPTo, cryptocmdENCRYPTf) + 9 D1:C287 11 49 C8 D1 CD 5E AA D1 - CA AD C8 D1 routeoptjp(cryptocmdDECRYPTo, cryptocmdDECRYPTf) - 10 D1:C287 C5 - - - push bc - 11 D1:C288 C9 - - - ret - 12 D1:C289 - - - - - 13 D1:C289 - - - - cryptocmdmanroute: - 14 D1:C289 C1 - - - pop bc - 15 D1:C28A E5 11 7F C4 + CA B9 C8 D1 routeoptjp(cryptocmdDECRYPTo, cryptocmdDECRYPTf) + 10 D1:C293 C5 - - - push bc + 11 D1:C294 C9 - - - ret + 12 D1:C295 - - - - + 13 D1:C295 - - - - cryptocmdmanroute: + 14 D1:C295 C1 - - - pop bc + 15 D1:C296 E5 11 8B C4 D1 CD 59 AC D1 21 00 00 00 20 04 21 B1 EA D0 11 - 80 C5 D1 CD + 8C C5 D1 CD 59 AC D1 E1 - 11 84 C5 D1 - CA 8D B7 D1 subroutestrjp(cryptocmdENCRYPT, cryptocmdROT, cryptocmdROTm) - 16 D1:C2AE E5 11 35 C8 + 11 90 C5 D1 + CA 99 B7 D1 subroutestrjp(cryptocmdENCRYPT, cryptocmdROT, cryptocmdROTm) + 16 D1:C2BA E5 11 41 C8 D1 CD 59 AC D1 21 00 00 00 20 04 21 B1 EA D0 11 - 36 C9 D1 CD + 42 C9 D1 CD 59 AC D1 E1 - 11 3A C9 D1 - CA 8D B7 D1 subroutestrjp(cryptocmdDECRYPT, cryptocmdunROT, cryptocmdunROTm) - 17 D1:C2D2 - - - - - 18 D1:C2D2 E5 11 7F C4 + 11 46 C9 D1 + CA 99 B7 D1 subroutestrjp(cryptocmdDECRYPT, cryptocmdunROT, cryptocmdunROTm) + 17 D1:C2DE - - - - + 18 D1:C2DE E5 11 8B C4 D1 CD 59 AC D1 21 00 00 00 20 04 21 B1 EA D0 11 - 8E C6 D1 CD + 9A C6 D1 CD 59 AC D1 E1 - 11 92 C6 D1 - CA 8D B7 D1 subroutestrjp(cryptocmdENCRYPT, cryptocmdXOR, cryptocmdXORm) - 19 D1:C2F6 E5 11 35 C8 + 11 9E C6 D1 + CA 99 B7 D1 subroutestrjp(cryptocmdENCRYPT, cryptocmdXOR, cryptocmdXORm) + 19 D1:C302 E5 11 41 C8 D1 CD 59 AC D1 21 00 00 00 20 04 21 B1 EA D0 11 - 3D CA D1 CD + 49 CA D1 CD 59 AC D1 E1 - 11 41 CA D1 - CA 8D B7 D1 subroutestrjp(cryptocmdDECRYPT, cryptocmdunXOR, cryptocmdunXORm) - 20 D1:C31A - - - - - 21 D1:C31A E5 11 7F C4 + 11 4D CA D1 + CA 99 B7 D1 subroutestrjp(cryptocmdDECRYPT, cryptocmdunXOR, cryptocmdunXORm) + 20 D1:C326 - - - - + 21 D1:C326 E5 11 8B C4 D1 CD 59 AC D1 21 00 00 00 20 04 21 B1 EA D0 11 - 8D C7 D1 CD + 99 C7 D1 CD 59 AC D1 E1 - 11 92 C7 D1 - CA 8D B7 D1 subroutestrjp(cryptocmdENCRYPT, cryptocmdHELP, cryptocmdHELPm) - 22 D1:C33E E5 11 35 C8 + 11 9E C7 D1 + CA 99 B7 D1 subroutestrjp(cryptocmdENCRYPT, cryptocmdHELP, cryptocmdHELPm) + 22 D1:C34A E5 11 41 C8 D1 CD 59 AC D1 21 00 00 00 20 04 21 B1 EA D0 11 - 52 CB D1 CD + 5E CB D1 CD 59 AC D1 E1 - 11 57 CB D1 - CA 8D B7 D1 subroutestrjp(cryptocmdDECRYPT, cryptocmdunHELP, cryptocmdunHELPm) - 23 D1:C362 - - - - - 24 D1:C362 11 7F C4 D1 + 11 63 CB D1 + CA 99 B7 D1 subroutestrjp(cryptocmdDECRYPT, cryptocmdunHELP, cryptocmdunHELPm) + 23 D1:C36E - - - - + 24 D1:C36E 11 8B C4 D1 CD 59 AC D1 - 11 89 C4 D1 - CA 8D B7 D1 routestrjp(cryptocmdENCRYPT, cryptocmdENCRYPTm) - 25 D1:C372 11 35 C8 D1 + 11 95 C4 D1 + CA 99 B7 D1 routestrjp(cryptocmdENCRYPT, cryptocmdENCRYPTm) + 25 D1:C37E 11 41 C8 D1 CD 59 AC D1 - 11 3F C8 D1 - CA 8D B7 D1 routestrjp(cryptocmdDECRYPT, cryptocmdDECRYPTm) - 26 D1:C382 - - - - - 27 D1:C382 C5 - - - push bc - 28 D1:C383 C9 - - - ret - 29 D1:C384 - - - - - 30 D1:C384 - - - - - 31 D1:C384 - - - - cryptocmdmanrouteu: - 32 D1:C384 C1 - - - pop bc - 33 D1:C385 E5 11 7F C4 + 11 4B C8 D1 + CA 99 B7 D1 routestrjp(cryptocmdDECRYPT, cryptocmdDECRYPTm) + 26 D1:C38E - - - - + 27 D1:C38E C5 - - - push bc + 28 D1:C38F C9 - - - ret + 29 D1:C390 - - - - + 30 D1:C390 - - - - + 31 D1:C390 - - - - cryptocmdmanrouteu: + 32 D1:C390 C1 - - - pop bc + 33 D1:C391 E5 11 8B C4 D1 CD 59 AC D1 21 00 00 00 20 04 21 B1 EA D0 11 - 80 C5 D1 CD + 8C C5 D1 CD 59 AC D1 E1 - 11 BB C5 D1 - CA A3 B7 D1 subrouteustrjp(cryptocmdENCRYPT, cryptocmdROT, cryptocmdROTu) - 34 D1:C3A9 E5 11 35 C8 + 11 C7 C5 D1 + CA AF B7 D1 subrouteustrjp(cryptocmdENCRYPT, cryptocmdROT, cryptocmdROTu) + 34 D1:C3B5 E5 11 41 C8 D1 CD 59 AC D1 21 00 00 00 20 04 21 B1 EA D0 11 - 36 C9 D1 CD + 42 C9 D1 CD 59 AC D1 E1 - 11 71 C9 D1 - CA A3 B7 D1 subrouteustrjp(cryptocmdDECRYPT, cryptocmdunROT, cryptocmdunROTu) - 35 D1:C3CD - - - - - 36 D1:C3CD E5 11 7F C4 + 11 7D C9 D1 + CA AF B7 D1 subrouteustrjp(cryptocmdDECRYPT, cryptocmdunROT, cryptocmdunROTu) + 35 D1:C3D9 - - - - + 36 D1:C3D9 E5 11 8B C4 D1 CD 59 AC D1 21 00 00 00 20 04 21 B1 EA D0 11 - 8E C6 D1 CD + 9A C6 D1 CD 59 AC D1 E1 - 11 B4 C6 D1 - CA A3 B7 D1 subrouteustrjp(cryptocmdENCRYPT, cryptocmdXOR, cryptocmdXORu) - 37 D1:C3F1 E5 11 35 C8 + 11 C0 C6 D1 + CA AF B7 D1 subrouteustrjp(cryptocmdENCRYPT, cryptocmdXOR, cryptocmdXORu) + 37 D1:C3FD E5 11 41 C8 D1 CD 59 AC D1 21 00 00 00 20 04 21 B1 EA D0 11 - 3D CA D1 CD + 49 CA D1 CD 59 AC D1 E1 - 11 63 CA D1 - CA A3 B7 D1 subrouteustrjp(cryptocmdDECRYPT, cryptocmdunXOR, cryptocmdunXORu) - 38 D1:C415 - - - - - 39 D1:C415 E5 11 7F C4 + 11 6F CA D1 + CA AF B7 D1 subrouteustrjp(cryptocmdDECRYPT, cryptocmdunXOR, cryptocmdunXORu) + 38 D1:C421 - - - - + 39 D1:C421 E5 11 8B C4 D1 CD 59 AC D1 21 00 00 00 20 04 21 B1 EA D0 11 - 8D C7 D1 CD + 99 C7 D1 CD 59 AC D1 E1 - 11 A3 C7 D1 - CA A3 B7 D1 subrouteustrjp(cryptocmdENCRYPT, cryptocmdHELP, cryptocmdHELPu) - 40 D1:C439 E5 11 35 C8 + 11 AF C7 D1 + CA AF B7 D1 subrouteustrjp(cryptocmdENCRYPT, cryptocmdHELP, cryptocmdHELPu) + 40 D1:C445 E5 11 41 C8 D1 CD 59 AC D1 21 00 00 00 20 04 21 B1 EA D0 11 - 52 CB D1 CD + 5E CB D1 CD 59 AC D1 E1 - 11 68 CB D1 - CA A3 B7 D1 subrouteustrjp(cryptocmdDECRYPT, cryptocmdunHELP, cryptocmdunHELPu) - 41 D1:C45D - - - - - 42 D1:C45D 11 7F C4 D1 + 11 74 CB D1 + CA AF B7 D1 subrouteustrjp(cryptocmdDECRYPT, cryptocmdunHELP, cryptocmdunHELPu) + 41 D1:C469 - - - - + 42 D1:C469 11 8B C4 D1 CD 59 AC D1 - 11 D2 C4 D1 - CA A3 B7 D1 routeustrjp(cryptocmdENCRYPT, cryptocmdENCRYPTu) - 43 D1:C46D 11 35 C8 D1 + 11 DE C4 D1 + CA AF B7 D1 routeustrjp(cryptocmdENCRYPT, cryptocmdENCRYPTu) + 43 D1:C479 11 41 C8 D1 CD 59 AC D1 - 11 88 C8 D1 - CA A3 B7 D1 routeustrjp(cryptocmdDECRYPT, cryptocmdDECRYPTu) - 44 D1:C47D - - - - - 45 D1:C47D C5 - - - push bc - 46 D1:C47E C9 - - - ret - 47 D1:C47F - - - - - 48 D1:C47F - - - - #include "includes/CryptoCommands/CryptoCommands.inc" + 11 94 C8 D1 + CA AF B7 D1 routeustrjp(cryptocmdDECRYPT, cryptocmdDECRYPTu) + 44 D1:C489 - - - - + 45 D1:C489 C5 - - - push bc + 46 D1:C48A C9 - - - ret + 47 D1:C48B - - - - + 48 D1:C48B - - - - #include "includes/CryptoCommands/CryptoCommands.inc" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/CryptoCommands.inc" - 1 D1:C47F - - - - #include "includes/CryptoCommands/ENCRYPT.asm" + 1 D1:C48B - - - - #include "includes/CryptoCommands/ENCRYPT.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/ENCRYPT.asm" - 1 D1:C47F 45 4E 43 52 + 1 D1:C48B 45 4E 43 52 59 50 54 00 cryptocmdENCRYPT: .db "ENCRYPT", 0 - 2 D1:C487 01 02 - - cryptocmdENCRYPTo: .dw $0201 - 3 D1:C489 45 6E 63 72 + 2 D1:C493 01 02 - - cryptocmdENCRYPTo: .dw $0201 + 3 D1:C495 45 6E 63 72 79 70 74 73 20 61 20 73 74 72 69 6E @@ -3947,7 +3962,7 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/ENCRY 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:C4D2 45 4E 43 52 + 4 D1:C4DE 45 4E 43 52 59 50 54 20 3C 43 72 79 70 74 20 43 @@ -3957,64 +3972,64 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/ENCRY 70 74 20 41 72 67 73 3E 00 - - - cryptocmdENCRYPTu: .db "ENCRYPT ", 0 - 5 D1:C4F7 - - - - cryptocmdENCRYPTf: - 6 D1:C4F7 - - - - cryptocmdENCRYPTfArg0: - 7 D1:C4F7 21 CD EA D0 ld hl, FshCmdArgFlags - 8 D1:C4FB CB 46 - - bit 0, (hl) - 9 D1:C4FD 28 10 - - jr z, cryptocmdENCRYPTfArg0Get - 10 D1:C4FF CB 4E - - bit 1, (hl) - 11 D1:C501 28 24 - - jr z, cryptocmdENCRYPTfExe - 12 D1:C503 21 F2 B3 D1 ld hl, ErrUsageo - 13 D1:C507 CD 5D B3 D1 call ErrSet - 14 D1:C50B CD 10 B3 D1 call ErrCatch - 15 D1:C50F - - - - cryptocmdENCRYPTfArg0Get: - 16 D1:C50F 21 77 C5 D1 ld hl, cryptocmdENCRYPTfSCypher - 17 D1:C513 CD 21 AB D1 call printprompt - 18 D1:C517 21 A8 EA D0 ld hl, FshCmdArg0 - 19 D1:C51B 11 2C 00 00 ld de, FshCmdInptSize - 20 D1:C51F CD A9 AD D1 call inputstr - 21 D1:C523 CD F0 07 02 call _NewLine - 22 D1:C527 - - - - cryptocmdENCRYPTfExe: - 23 D1:C527 - - - - - 24 D1:C527 - - - - #macro cryptocmdENCRYPTcmpjp(cmdX, cmdXf) - 25 D1:C527 ld hl, FshCmdArg0 - 26 D1:C527 ld de, CmdX - 27 D1:C527 call strcmp - 28 D1:C527 jp z, cmdXf - 29 D1:C527 #endmacro - 30 D1:C527 - - - - - 31 D1:C527 21 A8 EA D0 - 11 80 C5 D1 + 5 D1:C503 - - - - cryptocmdENCRYPTf: + 6 D1:C503 - - - - cryptocmdENCRYPTfArg0: + 7 D1:C503 21 CD EA D0 ld hl, FshCmdArgFlags + 8 D1:C507 CB 46 - - bit 0, (hl) + 9 D1:C509 28 10 - - jr z, cryptocmdENCRYPTfArg0Get + 10 D1:C50B CB 4E - - bit 1, (hl) + 11 D1:C50D 28 24 - - jr z, cryptocmdENCRYPTfExe + 12 D1:C50F 21 F2 B3 D1 ld hl, ErrUsageo + 13 D1:C513 CD 5D B3 D1 call ErrSet + 14 D1:C517 CD 10 B3 D1 call ErrCatch + 15 D1:C51B - - - - cryptocmdENCRYPTfArg0Get: + 16 D1:C51B 21 83 C5 D1 ld hl, cryptocmdENCRYPTfSCypher + 17 D1:C51F CD 21 AB D1 call printprompt + 18 D1:C523 21 A8 EA D0 ld hl, FshCmdArg0 + 19 D1:C527 11 2C 00 00 ld de, FshCmdInptSize + 20 D1:C52B CD A9 AD D1 call inputstr + 21 D1:C52F CD F0 07 02 call _NewLine + 22 D1:C533 - - - - cryptocmdENCRYPTfExe: + 23 D1:C533 - - - - + 24 D1:C533 - - - - #macro cryptocmdENCRYPTcmpjp(cmdX, cmdXf) + 25 D1:C533 ld hl, FshCmdArg0 + 26 D1:C533 ld de, CmdX + 27 D1:C533 call strcmp + 28 D1:C533 jp z, cmdXf + 29 D1:C533 #endmacro + 30 D1:C533 - - - - + 31 D1:C533 21 A8 EA D0 + 11 8C C5 D1 CD 59 AC D1 - CA DA C5 D1 cryptocmdENCRYPTcmpjp(cryptocmdROT, cryptocmdROTf) + CA E6 C5 D1 cryptocmdENCRYPTcmpjp(cryptocmdROT, cryptocmdROTf) Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/ENCRYPT.asm" - 32 D1:C537 21 A8 EA D0 - 11 8E C6 D1 + 32 D1:C543 21 A8 EA D0 + 11 9A C6 D1 CD 59 AC D1 - CA D0 C6 D1 cryptocmdENCRYPTcmpjp(cryptocmdXOR, cryptocmdXORf) - 33 D1:C547 21 A8 EA D0 - 11 8D C7 D1 + CA DC C6 D1 cryptocmdENCRYPTcmpjp(cryptocmdXOR, cryptocmdXORf) + 33 D1:C553 21 A8 EA D0 + 11 99 C7 D1 CD 59 AC D1 - CA B0 C7 D1 cryptocmdENCRYPTcmpjp(cryptocmdHELP, cryptocmdHELPf) - 34 D1:C557 - - - - - 35 D1:C557 21 A8 EA D0 ld hl, FshCmdArg0 - 36 D1:C55B 11 9F EA D0 ld de, FshCmd - 37 D1:C55F CD 6C AC D1 call strcpy - 38 D1:C563 - - - - - 39 D1:C563 21 6C B3 D1 ld hl, ErrCmdNotFoundo - 40 D1:C567 11 CE EA D0 ld de, FshCmdErrCode - 41 D1:C56B CD 4A AA D1 call bytecpy - 42 D1:C56F CD 5D B3 D1 call ErrSet - 43 D1:C573 C3 E7 A8 D1 jp Err - 44 D1:C577 - - - - - 45 D1:C577 43 79 70 68 + CA BC C7 D1 cryptocmdENCRYPTcmpjp(cryptocmdHELP, cryptocmdHELPf) + 34 D1:C563 - - - - + 35 D1:C563 21 A8 EA D0 ld hl, FshCmdArg0 + 36 D1:C567 11 9F EA D0 ld de, FshCmd + 37 D1:C56B CD 6C AC D1 call strcpy + 38 D1:C56F - - - - + 39 D1:C56F 21 6C B3 D1 ld hl, ErrCmdNotFoundo + 40 D1:C573 11 CE EA D0 ld de, FshCmdErrCode + 41 D1:C577 CD 4A AA D1 call bytecpy + 42 D1:C57B CD 5D B3 D1 call ErrSet + 43 D1:C57F C3 E7 A8 D1 jp Err + 44 D1:C583 - - - - + 45 D1:C583 43 79 70 68 65 72 3D 20 00 - - - cryptocmdENCRYPTfSCypher: .db "Cypher= ", 0 Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/CryptoCommands.inc" - 2 D1:C580 - - - - #include "includes/CryptoCommands/ROT.asm" + 2 D1:C58C - - - - #include "includes/CryptoCommands/ROT.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/ROT.asm" - 1 D1:C580 52 4F 54 00 cryptocmdROT: .db "ROT", 0 - 2 D1:C584 52 4F 54 3A + 1 D1:C58C 52 4F 54 00 cryptocmdROT: .db "ROT", 0 + 2 D1:C590 52 4F 54 3A 20 43 79 70 68 65 72 2C 20 72 6F 74 @@ -4028,7 +4043,7 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/ROT.a 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:C5BB 45 4E 43 52 + 3 D1:C5C7 45 4E 43 52 59 50 54 20 52 4F 54 20 3C 73 68 69 @@ -4036,72 +4051,72 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/ROT.a 20 3C 6D 65 73 73 61 67 65 3E 00 - cryptocmdROTu: .db "ENCRYPT ROT ", 0 - 4 D1:C5DA - - - - cryptocmdROTf: - 5 D1:C5DA - - - - cryptocmdROTfArg1: - 6 D1:C5DA 21 CD EA D0 ld hl, FshCmdArgFlags - 7 D1:C5DE CB 5E - - bit 3, (hl) - 8 D1:C5E0 20 32 - - jr nz, cryptocmdROTfArg2 - 9 D1:C5E2 CB 56 - - bit 2, (hl) - 10 D1:C5E4 28 0C - - jr z, cryptocmdROTfArg1Get - 11 D1:C5E6 21 F2 B3 D1 ld hl, ErrUsageo - 12 D1:C5EA CD 5D B3 D1 call ErrSet - 13 D1:C5EE CD 10 B3 D1 call ErrCatch - 14 D1:C5F2 - - - - cryptocmdROTfArg1Get: - 15 D1:C5F2 21 73 C6 D1 ld hl, cryptocmdROTfDShift - 16 D1:C5F6 CD 21 AB D1 call printprompt - 17 D1:C5FA 21 B1 EA D0 ld hl, FshCmdArg1 - 18 D1:C5FE 11 03 00 00 ld de, 3 - 19 D1:C602 CD E1 AF D1 call inputnumstr - 20 D1:C606 CD E3 AC D1 call strtow - 21 D1:C60A 11 B1 EA D0 ld de, FshCmdArg1 - 22 D1:C60E EB - - - ex de, hl - 23 D1:C60F 73 - - - ld (hl), e - 24 D1:C610 CD F0 07 02 call _NewLine - 25 D1:C614 - - - - cryptocmdROTfArg2: - 26 D1:C614 21 BA EA D0 ld hl, FshCmdArg2 - 27 D1:C618 11 D1 EA D0 ld de, FshScratch - 28 D1:C61C CD 6C AC D1 call strcpy - 29 D1:C620 21 CD EA D0 ld hl, FshCmdArgFlags - 30 D1:C624 CB 66 - - bit 4, (hl) - 31 D1:C626 28 10 - - jr z, cryptocmdROTfArg2Get - 32 D1:C628 CB 6E - - bit 5, (hl) - 33 D1:C62A 28 24 - - jr z, cryptocmdROTfExe - 34 D1:C62C 21 F2 B3 D1 ld hl, ErrUsageo - 35 D1:C630 CD 5D B3 D1 call ErrSet - 36 D1:C634 CD 10 B3 D1 call ErrCatch - 37 D1:C638 - - - - cryptocmdROTfArg2Get: - 38 D1:C638 21 7B C6 D1 ld hl, cryptocmdROTfDMessage - 39 D1:C63C CD 21 AB D1 call printprompt - 40 D1:C640 21 D1 EA D0 ld hl, FshScratch - 41 D1:C644 11 10 00 00 ld de, FshScratchSize - 4 - 42 D1:C648 CD CD AE D1 call inputcharstr - 43 D1:C64C CD F0 07 02 call _NewLine - 44 D1:C650 - - - - cryptocmdROTfExe: - 45 D1:C650 21 B1 EA D0 ld hl, FshCmdArg1 - 46 D1:C654 7E - - - ld a, (hl) - 47 D1:C655 21 D1 EA D0 ld hl, FshScratch - 48 D1:C659 CD 89 B6 D1 call rotletencrypt - 49 D1:C65D E5 - - - push hl - 50 D1:C65E 21 85 C6 D1 ld hl, cryptocmdROTfDResult - 51 D1:C662 CD C0 07 02 call _PutS - 52 D1:C666 E1 - - - pop hl - 53 D1:C667 CD C0 07 02 call _PutS - 54 D1:C66B CD F0 07 02 call _NewLine - 55 D1:C66F C3 DF A8 D1 jp Fin - 56 D1:C673 - - - - - 57 D1:C673 53 68 69 66 + 4 D1:C5E6 - - - - cryptocmdROTf: + 5 D1:C5E6 - - - - cryptocmdROTfArg1: + 6 D1:C5E6 21 CD EA D0 ld hl, FshCmdArgFlags + 7 D1:C5EA CB 5E - - bit 3, (hl) + 8 D1:C5EC 20 32 - - jr nz, cryptocmdROTfArg2 + 9 D1:C5EE CB 56 - - bit 2, (hl) + 10 D1:C5F0 28 0C - - jr z, cryptocmdROTfArg1Get + 11 D1:C5F2 21 F2 B3 D1 ld hl, ErrUsageo + 12 D1:C5F6 CD 5D B3 D1 call ErrSet + 13 D1:C5FA CD 10 B3 D1 call ErrCatch + 14 D1:C5FE - - - - cryptocmdROTfArg1Get: + 15 D1:C5FE 21 7F C6 D1 ld hl, cryptocmdROTfDShift + 16 D1:C602 CD 21 AB D1 call printprompt + 17 D1:C606 21 B1 EA D0 ld hl, FshCmdArg1 + 18 D1:C60A 11 03 00 00 ld de, 3 + 19 D1:C60E CD E1 AF D1 call inputnumstr + 20 D1:C612 CD E3 AC D1 call strtow + 21 D1:C616 11 B1 EA D0 ld de, FshCmdArg1 + 22 D1:C61A EB - - - ex de, hl + 23 D1:C61B 73 - - - ld (hl), e + 24 D1:C61C CD F0 07 02 call _NewLine + 25 D1:C620 - - - - cryptocmdROTfArg2: + 26 D1:C620 21 BA EA D0 ld hl, FshCmdArg2 + 27 D1:C624 11 D1 EA D0 ld de, FshScratch + 28 D1:C628 CD 6C AC D1 call strcpy + 29 D1:C62C 21 CD EA D0 ld hl, FshCmdArgFlags + 30 D1:C630 CB 66 - - bit 4, (hl) + 31 D1:C632 28 10 - - jr z, cryptocmdROTfArg2Get + 32 D1:C634 CB 6E - - bit 5, (hl) + 33 D1:C636 28 24 - - jr z, cryptocmdROTfExe + 34 D1:C638 21 F2 B3 D1 ld hl, ErrUsageo + 35 D1:C63C CD 5D B3 D1 call ErrSet + 36 D1:C640 CD 10 B3 D1 call ErrCatch + 37 D1:C644 - - - - cryptocmdROTfArg2Get: + 38 D1:C644 21 87 C6 D1 ld hl, cryptocmdROTfDMessage + 39 D1:C648 CD 21 AB D1 call printprompt + 40 D1:C64C 21 D1 EA D0 ld hl, FshScratch + 41 D1:C650 11 10 00 00 ld de, FshScratchSize - 4 + 42 D1:C654 CD CD AE D1 call inputcharstr + 43 D1:C658 CD F0 07 02 call _NewLine + 44 D1:C65C - - - - cryptocmdROTfExe: + 45 D1:C65C 21 B1 EA D0 ld hl, FshCmdArg1 + 46 D1:C660 7E - - - ld a, (hl) + 47 D1:C661 21 D1 EA D0 ld hl, FshScratch + 48 D1:C665 CD 95 B6 D1 call rotletencrypt + 49 D1:C669 E5 - - - push hl + 50 D1:C66A 21 91 C6 D1 ld hl, cryptocmdROTfDResult + 51 D1:C66E CD C0 07 02 call _PutS + 52 D1:C672 E1 - - - pop hl + 53 D1:C673 CD C0 07 02 call _PutS + 54 D1:C677 CD F0 07 02 call _NewLine + 55 D1:C67B C3 DF A8 D1 jp Fin + 56 D1:C67F - - - - + 57 D1:C67F 53 68 69 66 74 3D 20 00 cryptocmdROTfDShift: .db "Shift= ", 0 - 58 D1:C67B 4D 65 73 73 + 58 D1:C687 4D 65 73 73 61 67 65 3D 20 00 - - cryptocmdROTfDMessage: .db "Message= ", 0 - 59 D1:C685 52 65 73 75 + 59 D1:C691 52 65 73 75 6C 74 3A 20 00 - - - cryptocmdROTfDResult: .db "Result: ", 0 Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/CryptoCommands.inc" - 3 D1:C68E - - - - #include "includes/CryptoCommands/XOR.asm" + 3 D1:C69A - - - - #include "includes/CryptoCommands/XOR.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/XOR.asm" - 1 D1:C68E 58 4F 52 00 cryptocmdXOR: .db "XOR", 0 - 2 D1:C692 58 4F 52 3A + 1 D1:C69A 58 4F 52 00 cryptocmdXOR: .db "XOR", 0 + 2 D1:C69E 58 4F 52 3A 20 43 79 70 68 65 72 2C 20 61 6E 64 @@ -4110,193 +4125,193 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/XOR.a 20 61 20 73 74 72 69 6E 67 00 - - cryptocmdXORm: .db "XOR: Cypher, and encodes a string", 0 - 3 D1:C6B4 45 4E 43 52 + 3 D1:C6C0 45 4E 43 52 59 50 54 20 58 4F 52 20 3C 6B 65 79 3E 20 3C 6D 65 73 73 61 67 65 3E 00 cryptocmdXORu: .db "ENCRYPT XOR ", 0 - 4 D1:C6D0 - - - - cryptocmdXORf: - 5 D1:C6D0 - - - - cryptocmdXORfArg1: - 6 D1:C6D0 21 CD EA D0 ld hl, FshCmdArgFlags - 7 D1:C6D4 CB 56 - - bit 2, (hl) - 8 D1:C6D6 28 10 - - jr z, cryptocmdXORfArg1Get - 9 D1:C6D8 CB 5E - - bit 3, (hl) - 10 D1:C6DA 28 24 - - jr z, cryptocmdXORfArg2 - 11 D1:C6DC 21 F2 B3 D1 ld hl, ErrUsageo - 12 D1:C6E0 CD 5D B3 D1 call ErrSet - 13 D1:C6E4 CD 10 B3 D1 call ErrCatch - 14 D1:C6E8 - - - - cryptocmdXORfArg1Get: - 15 D1:C6E8 21 74 C7 D1 ld hl, cryptocmdXORfDKey - 16 D1:C6EC CD 21 AB D1 call printprompt - 17 D1:C6F0 21 B1 EA D0 ld hl, FshCmdArg1 - 18 D1:C6F4 11 08 00 00 ld de, FshCmdCmdSize - 19 D1:C6F8 CD A9 AD D1 call inputstr - 20 D1:C6FC CD F0 07 02 call _NewLine - 21 D1:C700 - - - - cryptocmdXORfArg2: - 22 D1:C700 21 BA EA D0 ld hl, FshCmdArg2 - 23 D1:C704 11 D1 EA D0 ld de, FshScratch - 24 D1:C708 CD 6C AC D1 call strcpy - 25 D1:C70C 21 CD EA D0 ld hl, FshCmdArgFlags - 26 D1:C710 CB 66 - - bit 4, (hl) - 27 D1:C712 28 10 - - jr z, cryptocmdXORfArg2Get - 28 D1:C714 CB 6E - - bit 5, (hl) - 29 D1:C716 28 24 - - jr z, cryptocmdXORfExe - 30 D1:C718 21 F2 B3 D1 ld hl, ErrUsageo - 31 D1:C71C CD 5D B3 D1 call ErrSet - 32 D1:C720 CD 10 B3 D1 call ErrCatch - 33 D1:C724 - - - - cryptocmdXORfArg2Get: - 34 D1:C724 21 7A C7 D1 ld hl, cryptocmdXORfDMessage - 35 D1:C728 CD 21 AB D1 call printprompt - 36 D1:C72C 21 D1 EA D0 ld hl, FshScratch - 37 D1:C730 11 09 00 00 ld de, FshScratchSize - 1 / 2 - 38 D1:C734 CD CD AE D1 call inputcharstr - 39 D1:C738 CD F0 07 02 call _NewLine - 40 D1:C73C - - - - cryptocmdXORfExe: - 41 D1:C73C 21 D1 EA D0 ld hl, FshScratch - 42 D1:C740 11 B1 EA D0 ld de, FshCmdArg1 - 43 D1:C744 CD 17 B7 D1 call xorcrypt - 44 D1:C748 21 84 C7 D1 ld hl, cryptocmdXORfDResult - 45 D1:C74C CD C0 07 02 call _PutS - 46 D1:C750 21 D1 EA D0 ld hl, FshScratch - 47 D1:C754 - - - - cryptocmdXORfPrint: - 48 D1:C754 7E - - - ld a, (hl) - 49 D1:C755 B7 - - - or a, a - 50 D1:C756 28 14 - - jr z, cryptocmdXORfPrintEnd - 51 D1:C758 E5 - - - push hl - 52 D1:C759 CD C2 AB D1 call bytetohexstr - 53 D1:C75D 7E - - - ld a, (hl) - 54 D1:C75E CD B8 07 02 call _PutC - 55 D1:C762 23 - - - inc hl - 56 D1:C763 7E - - - ld a, (hl) - 57 D1:C764 CD B8 07 02 call _PutC - 58 D1:C768 E1 - - - pop hl - 59 D1:C769 23 - - - inc hl - 60 D1:C76A 18 E8 - - jr cryptocmdXORfPrint - 61 D1:C76C - - - - cryptocmdXORfPrintEnd: - 62 D1:C76C CD F0 07 02 call _NewLine - 63 D1:C770 C3 DF A8 D1 jp Fin - 64 D1:C774 - - - - - 65 D1:C774 4B 65 79 3D + 4 D1:C6DC - - - - cryptocmdXORf: + 5 D1:C6DC - - - - cryptocmdXORfArg1: + 6 D1:C6DC 21 CD EA D0 ld hl, FshCmdArgFlags + 7 D1:C6E0 CB 56 - - bit 2, (hl) + 8 D1:C6E2 28 10 - - jr z, cryptocmdXORfArg1Get + 9 D1:C6E4 CB 5E - - bit 3, (hl) + 10 D1:C6E6 28 24 - - jr z, cryptocmdXORfArg2 + 11 D1:C6E8 21 F2 B3 D1 ld hl, ErrUsageo + 12 D1:C6EC CD 5D B3 D1 call ErrSet + 13 D1:C6F0 CD 10 B3 D1 call ErrCatch + 14 D1:C6F4 - - - - cryptocmdXORfArg1Get: + 15 D1:C6F4 21 80 C7 D1 ld hl, cryptocmdXORfDKey + 16 D1:C6F8 CD 21 AB D1 call printprompt + 17 D1:C6FC 21 B1 EA D0 ld hl, FshCmdArg1 + 18 D1:C700 11 08 00 00 ld de, FshCmdCmdSize + 19 D1:C704 CD A9 AD D1 call inputstr + 20 D1:C708 CD F0 07 02 call _NewLine + 21 D1:C70C - - - - cryptocmdXORfArg2: + 22 D1:C70C 21 BA EA D0 ld hl, FshCmdArg2 + 23 D1:C710 11 D1 EA D0 ld de, FshScratch + 24 D1:C714 CD 6C AC D1 call strcpy + 25 D1:C718 21 CD EA D0 ld hl, FshCmdArgFlags + 26 D1:C71C CB 66 - - bit 4, (hl) + 27 D1:C71E 28 10 - - jr z, cryptocmdXORfArg2Get + 28 D1:C720 CB 6E - - bit 5, (hl) + 29 D1:C722 28 24 - - jr z, cryptocmdXORfExe + 30 D1:C724 21 F2 B3 D1 ld hl, ErrUsageo + 31 D1:C728 CD 5D B3 D1 call ErrSet + 32 D1:C72C CD 10 B3 D1 call ErrCatch + 33 D1:C730 - - - - cryptocmdXORfArg2Get: + 34 D1:C730 21 86 C7 D1 ld hl, cryptocmdXORfDMessage + 35 D1:C734 CD 21 AB D1 call printprompt + 36 D1:C738 21 D1 EA D0 ld hl, FshScratch + 37 D1:C73C 11 09 00 00 ld de, FshScratchSize - 1 / 2 + 38 D1:C740 CD CD AE D1 call inputcharstr + 39 D1:C744 CD F0 07 02 call _NewLine + 40 D1:C748 - - - - cryptocmdXORfExe: + 41 D1:C748 21 D1 EA D0 ld hl, FshScratch + 42 D1:C74C 11 B1 EA D0 ld de, FshCmdArg1 + 43 D1:C750 CD 23 B7 D1 call xorcrypt + 44 D1:C754 21 90 C7 D1 ld hl, cryptocmdXORfDResult + 45 D1:C758 CD C0 07 02 call _PutS + 46 D1:C75C 21 D1 EA D0 ld hl, FshScratch + 47 D1:C760 - - - - cryptocmdXORfPrint: + 48 D1:C760 7E - - - ld a, (hl) + 49 D1:C761 B7 - - - or a, a + 50 D1:C762 28 14 - - jr z, cryptocmdXORfPrintEnd + 51 D1:C764 E5 - - - push hl + 52 D1:C765 CD C2 AB D1 call bytetohexstr + 53 D1:C769 7E - - - ld a, (hl) + 54 D1:C76A CD B8 07 02 call _PutC + 55 D1:C76E 23 - - - inc hl + 56 D1:C76F 7E - - - ld a, (hl) + 57 D1:C770 CD B8 07 02 call _PutC + 58 D1:C774 E1 - - - pop hl + 59 D1:C775 23 - - - inc hl + 60 D1:C776 18 E8 - - jr cryptocmdXORfPrint + 61 D1:C778 - - - - cryptocmdXORfPrintEnd: + 62 D1:C778 CD F0 07 02 call _NewLine + 63 D1:C77C C3 DF A8 D1 jp Fin + 64 D1:C780 - - - - + 65 D1:C780 4B 65 79 3D 20 00 - - cryptocmdXORfDKey: .db "Key= ", 0 - 66 D1:C77A 4D 65 73 73 + 66 D1:C786 4D 65 73 73 61 67 65 3D 20 00 - - cryptocmdXORfDMessage: .db "Message= ", 0 - 67 D1:C784 52 65 73 75 + 67 D1:C790 52 65 73 75 6C 74 3A 20 00 - - - cryptocmdXORfDResult: .db "Result: ", 0 Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/CryptoCommands.inc" - 4 D1:C78D - - - - #include "includes/CryptoCommands/HELP.asm" + 4 D1:C799 - - - - #include "includes/CryptoCommands/HELP.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/HELP.asm" - 1 D1:C78D 48 45 4C 50 + 1 D1:C799 48 45 4C 50 00 - - - cryptocmdHELP: .db "HELP", 0 - 2 D1:C792 48 65 6C 70 + 2 D1:C79E 48 65 6C 70 20 66 6F 72 20 63 79 70 68 65 72 73 00 - - - cryptocmdHELPm: .db "Help for cyphers", 0 - 3 D1:C7A3 45 4E 43 52 + 3 D1:C7AF 45 4E 43 52 59 50 54 20 48 45 4C 50 00 - - - cryptocmdHELPu: .db "ENCRYPT HELP", 0 - 4 D1:C7B0 - - - - cryptocmdHELPf: - 5 D1:C7B0 21 CD EA D0 ld hl, FshCmdArgFlags - 6 D1:C7B4 CB 56 - - bit 2, (hl) - 7 D1:C7B6 28 0C - - jr z, cryptocmdHELPfExe - 8 D1:C7B8 21 F2 B3 D1 ld hl, ErrUsageo - 9 D1:C7BC CD 5D B3 D1 call ErrSet - 10 D1:C7C0 CD 10 B3 D1 call ErrCatch - 11 D1:C7C4 - - - - cryptocmdHELPfExe: - 12 D1:C7C4 21 22 C8 D1 ld hl, cryptocmdHELPfLine1 - 13 D1:C7C8 CD C0 07 02 call _PutS - 14 D1:C7CC CD F0 07 02 call _NewLine - 15 D1:C7D0 - - - - - 16 D1:C7D0 - - - - #macro cryptocmdHELPmRow1(cmdXs) - 17 D1:C7D0 xor a - 18 D1:C7D0 ld (curCol), a - 19 D1:C7D0 ld hl, cmdXs - 20 D1:C7D0 call _PutS - 21 D1:C7D0 call _NewLine - 22 D1:C7D0 #endmacro - 23 D1:C7D0 - - - - #macro cryptocmdHELPmRowU(cmdXs, cmdXu) - 24 D1:C7D0 xor a - 25 D1:C7D0 ld (curCol), a - 26 D1:C7D0 ld hl, cmdXs - 27 D1:C7D0 call _PutS - 28 D1:C7D0 ld a, ':' - 29 D1:C7D0 call _PutC - 30 D1:C7D0 ld a, ' ' - 31 D1:C7D0 call _PutC - 32 D1:C7D0 ld hl, cmdXu - 33 D1:C7D0 call _PutS - 34 D1:C7D0 call _NewLine - 35 D1:C7D0 #endmacro - 36 D1:C7D0 - - - - #macro cryptocmdHELPmRow2(cmdXs, cmdYs) - 37 D1:C7D0 xor a - 38 D1:C7D0 ld (curCol), a - 39 D1:C7D0 ld hl, cmdXs - 40 D1:C7D0 call _PutS - 41 D1:C7D0 ld a, 9 - 42 D1:C7D0 ld (curcol), a - 43 D1:C7D0 ld hl, cmdYs - 44 D1:C7D0 call _PutS - 45 D1:C7D0 call _NewLine - 46 D1:C7D0 #endmacro - 47 D1:C7D0 - - - - #macro cryptocmdHELPmRow3(cmdXs, cmdYs, cmdZs) - 48 D1:C7D0 xor a - 49 D1:C7D0 ld (curCol), a - 50 D1:C7D0 ld hl, cmdXs - 51 D1:C7D0 call _PutS - 52 D1:C7D0 ld a, 9 - 53 D1:C7D0 ld (curcol), a - 54 D1:C7D0 ld hl, cmdYs - 55 D1:C7D0 call _PutS - 56 D1:C7D0 ld a, 19 - 57 D1:C7D0 ld (curcol), a - 58 D1:C7D0 ld hl, cmdZs - 59 D1:C7D0 call _PutS - 60 D1:C7D0 call _NewLine - 61 D1:C7D0 #endmacro - 62 D1:C7D0 - - - - - 63 D1:C7D0 AF 32 96 05 - D0 21 80 C5 + 4 D1:C7BC - - - - cryptocmdHELPf: + 5 D1:C7BC 21 CD EA D0 ld hl, FshCmdArgFlags + 6 D1:C7C0 CB 56 - - bit 2, (hl) + 7 D1:C7C2 28 0C - - jr z, cryptocmdHELPfExe + 8 D1:C7C4 21 F2 B3 D1 ld hl, ErrUsageo + 9 D1:C7C8 CD 5D B3 D1 call ErrSet + 10 D1:C7CC CD 10 B3 D1 call ErrCatch + 11 D1:C7D0 - - - - cryptocmdHELPfExe: + 12 D1:C7D0 21 2E C8 D1 ld hl, cryptocmdHELPfLine1 + 13 D1:C7D4 CD C0 07 02 call _PutS + 14 D1:C7D8 CD F0 07 02 call _NewLine + 15 D1:C7DC - - - - + 16 D1:C7DC - - - - #macro cryptocmdHELPmRow1(cmdXs) + 17 D1:C7DC xor a + 18 D1:C7DC ld (curCol), a + 19 D1:C7DC ld hl, cmdXs + 20 D1:C7DC call _PutS + 21 D1:C7DC call _NewLine + 22 D1:C7DC #endmacro + 23 D1:C7DC - - - - #macro cryptocmdHELPmRowU(cmdXs, cmdXu) + 24 D1:C7DC xor a + 25 D1:C7DC ld (curCol), a + 26 D1:C7DC ld hl, cmdXs + 27 D1:C7DC call _PutS + 28 D1:C7DC ld a, ':' + 29 D1:C7DC call _PutC + 30 D1:C7DC ld a, ' ' + 31 D1:C7DC call _PutC + 32 D1:C7DC ld hl, cmdXu + 33 D1:C7DC call _PutS + 34 D1:C7DC call _NewLine + 35 D1:C7DC #endmacro + 36 D1:C7DC - - - - #macro cryptocmdHELPmRow2(cmdXs, cmdYs) + 37 D1:C7DC xor a + 38 D1:C7DC ld (curCol), a + 39 D1:C7DC ld hl, cmdXs + 40 D1:C7DC call _PutS + 41 D1:C7DC ld a, 9 + 42 D1:C7DC ld (curcol), a + 43 D1:C7DC ld hl, cmdYs + 44 D1:C7DC call _PutS + 45 D1:C7DC call _NewLine + 46 D1:C7DC #endmacro + 47 D1:C7DC - - - - #macro cryptocmdHELPmRow3(cmdXs, cmdYs, cmdZs) + 48 D1:C7DC xor a + 49 D1:C7DC ld (curCol), a + 50 D1:C7DC ld hl, cmdXs + 51 D1:C7DC call _PutS + 52 D1:C7DC ld a, 9 + 53 D1:C7DC ld (curcol), a + 54 D1:C7DC ld hl, cmdYs + 55 D1:C7DC call _PutS + 56 D1:C7DC ld a, 19 + 57 D1:C7DC ld (curcol), a + 58 D1:C7DC ld hl, cmdZs + 59 D1:C7DC call _PutS + 60 D1:C7DC call _NewLine + 61 D1:C7DC #endmacro + 62 D1:C7DC - - - - + 63 D1:C7DC AF 32 96 05 + D0 21 8C C5 D1 CD C0 07 02 3E 3A CD B8 07 02 3E 20 CD B8 07 - 02 21 BB C5 + 02 21 C7 C5 D1 CD C0 07 02 CD F0 07 02 - - - cryptocmdHELPmRowU(cryptocmdROT, cryptocmdROTu) Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/HELP.asm" - 64 D1:C7F5 AF 32 96 05 - D0 21 8E C6 + 64 D1:C801 AF 32 96 05 + D0 21 9A C6 D1 CD C0 07 02 3E 3A CD B8 07 02 3E 20 CD B8 07 - 02 21 B4 C6 + 02 21 C0 C6 D1 CD C0 07 02 CD F0 07 02 - - - cryptocmdHELPmRowU(cryptocmdXOR, cryptocmdXORu) - 65 D1:C81A - - - - - 66 D1:C81A CD F0 07 02 call _NewLine - 67 D1:C81E C3 DF A8 D1 jp Fin - 68 D1:C822 - - - - - 69 D1:C822 41 76 61 69 + 65 D1:C826 - - - - + 66 D1:C826 CD F0 07 02 call _NewLine + 67 D1:C82A C3 DF A8 D1 jp Fin + 68 D1:C82E - - - - + 69 D1:C82E 41 76 61 69 6C 61 62 6C 65 20 43 72 79 70 74 6F 73 3A 00 - cryptocmdHELPfLine1: .db "Available Cryptos:", 0 Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/CryptoCommands.inc" - 5 D1:C835 - - - - - 6 D1:C835 - - - - #include "includes/CryptoCommands/DECRYPT.asm" + 5 D1:C841 - - - - + 6 D1:C841 - - - - #include "includes/CryptoCommands/DECRYPT.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/DECRYPT.asm" - 1 D1:C835 44 45 43 52 + 1 D1:C841 44 45 43 52 59 50 54 00 cryptocmdDECRYPT: .db "DECRYPT", 0 - 2 D1:C83D 02 02 - - cryptocmdDECRYPTo: .dw $0202 - 3 D1:C83F 44 65 63 72 + 2 D1:C849 02 02 - - cryptocmdDECRYPTo: .dw $0202 + 3 D1:C84B 44 65 63 72 79 70 74 73 20 61 20 73 74 72 69 6E @@ -4315,7 +4330,7 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/DECRY 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:C888 44 45 43 52 + 4 D1:C894 44 45 43 52 59 50 54 20 3C 43 72 79 70 74 20 43 @@ -4325,64 +4340,64 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/DECRY 70 74 20 41 72 67 73 3E 00 - - - cryptocmdDECRYPTu: .db "DECRYPT ", 0 - 5 D1:C8AD - - - - cryptocmdDECRYPTf: - 6 D1:C8AD - - - - cryptocmdDECRYPTfArg0: - 7 D1:C8AD 21 CD EA D0 ld hl, FshCmdArgFlags - 8 D1:C8B1 CB 46 - - bit 0, (hl) - 9 D1:C8B3 28 10 - - jr z, cryptocmdDECRYPTfArg0Get - 10 D1:C8B5 CB 4E - - bit 1, (hl) - 11 D1:C8B7 28 24 - - jr z, cryptocmdDECRYPTfExe - 12 D1:C8B9 21 F2 B3 D1 ld hl, ErrUsageo - 13 D1:C8BD CD 5D B3 D1 call ErrSet - 14 D1:C8C1 CD 10 B3 D1 call ErrCatch - 15 D1:C8C5 - - - - cryptocmdDECRYPTfArg0Get: - 16 D1:C8C5 21 2D C9 D1 ld hl, cryptocmdDECRYPTfSCypher - 17 D1:C8C9 CD 21 AB D1 call printprompt - 18 D1:C8CD 21 A8 EA D0 ld hl, FshCmdArg0 - 19 D1:C8D1 11 2C 00 00 ld de, FshCmdInptSize - 20 D1:C8D5 CD A9 AD D1 call inputstr - 21 D1:C8D9 CD F0 07 02 call _NewLine - 22 D1:C8DD - - - - cryptocmdDECRYPTfExe: - 23 D1:C8DD - - - - - 24 D1:C8DD - - - - #macro cryptocmdDECRYPTcmpjp(cmdX, cmdXf) - 25 D1:C8DD ld hl, FshCmdArg0 - 26 D1:C8DD ld de, CmdX - 27 D1:C8DD call strcmp - 28 D1:C8DD jp z, cmdXf - 29 D1:C8DD #endmacro - 30 D1:C8DD - - - - - 31 D1:C8DD 21 A8 EA D0 - 11 36 C9 D1 + 5 D1:C8B9 - - - - cryptocmdDECRYPTf: + 6 D1:C8B9 - - - - cryptocmdDECRYPTfArg0: + 7 D1:C8B9 21 CD EA D0 ld hl, FshCmdArgFlags + 8 D1:C8BD CB 46 - - bit 0, (hl) + 9 D1:C8BF 28 10 - - jr z, cryptocmdDECRYPTfArg0Get + 10 D1:C8C1 CB 4E - - bit 1, (hl) + 11 D1:C8C3 28 24 - - jr z, cryptocmdDECRYPTfExe + 12 D1:C8C5 21 F2 B3 D1 ld hl, ErrUsageo + 13 D1:C8C9 CD 5D B3 D1 call ErrSet + 14 D1:C8CD CD 10 B3 D1 call ErrCatch + 15 D1:C8D1 - - - - cryptocmdDECRYPTfArg0Get: + 16 D1:C8D1 21 39 C9 D1 ld hl, cryptocmdDECRYPTfSCypher + 17 D1:C8D5 CD 21 AB D1 call printprompt + 18 D1:C8D9 21 A8 EA D0 ld hl, FshCmdArg0 + 19 D1:C8DD 11 2C 00 00 ld de, FshCmdInptSize + 20 D1:C8E1 CD A9 AD D1 call inputstr + 21 D1:C8E5 CD F0 07 02 call _NewLine + 22 D1:C8E9 - - - - cryptocmdDECRYPTfExe: + 23 D1:C8E9 - - - - + 24 D1:C8E9 - - - - #macro cryptocmdDECRYPTcmpjp(cmdX, cmdXf) + 25 D1:C8E9 ld hl, FshCmdArg0 + 26 D1:C8E9 ld de, CmdX + 27 D1:C8E9 call strcmp + 28 D1:C8E9 jp z, cmdXf + 29 D1:C8E9 #endmacro + 30 D1:C8E9 - - - - + 31 D1:C8E9 21 A8 EA D0 + 11 42 C9 D1 CD 59 AC D1 - CA 86 C9 D1 cryptocmdDECRYPTcmpjp(cryptocmdunROT, cryptocmdunROTf) + CA 92 C9 D1 cryptocmdDECRYPTcmpjp(cryptocmdunROT, cryptocmdunROTf) Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/DECRYPT.asm" - 32 D1:C8ED 21 A8 EA D0 - 11 3D CA D1 + 32 D1:C8F9 21 A8 EA D0 + 11 49 CA D1 CD 59 AC D1 - CA 75 CA D1 cryptocmdDECRYPTcmpjp(cryptocmdunXOR, cryptocmdunXORf) - 33 D1:C8FD 21 A8 EA D0 - 11 52 CB D1 + CA 81 CA D1 cryptocmdDECRYPTcmpjp(cryptocmdunXOR, cryptocmdunXORf) + 33 D1:C909 21 A8 EA D0 + 11 5E CB D1 CD 59 AC D1 - CA 75 CB D1 cryptocmdDECRYPTcmpjp(cryptocmdunHELP, cryptocmdunHELPf) - 34 D1:C90D - - - - - 35 D1:C90D 21 A8 EA D0 ld hl, FshCmdArg0 - 36 D1:C911 11 9F EA D0 ld de, FshCmd - 37 D1:C915 CD 6C AC D1 call strcpy - 38 D1:C919 - - - - - 39 D1:C919 21 6C B3 D1 ld hl, ErrCmdNotFoundo - 40 D1:C91D 11 CE EA D0 ld de, FshCmdErrCode - 41 D1:C921 CD 4A AA D1 call bytecpy - 42 D1:C925 CD 5D B3 D1 call ErrSet - 43 D1:C929 C3 E7 A8 D1 jp Err - 44 D1:C92D - - - - - 45 D1:C92D 43 79 70 68 + CA 81 CB D1 cryptocmdDECRYPTcmpjp(cryptocmdunHELP, cryptocmdunHELPf) + 34 D1:C919 - - - - + 35 D1:C919 21 A8 EA D0 ld hl, FshCmdArg0 + 36 D1:C91D 11 9F EA D0 ld de, FshCmd + 37 D1:C921 CD 6C AC D1 call strcpy + 38 D1:C925 - - - - + 39 D1:C925 21 6C B3 D1 ld hl, ErrCmdNotFoundo + 40 D1:C929 11 CE EA D0 ld de, FshCmdErrCode + 41 D1:C92D CD 4A AA D1 call bytecpy + 42 D1:C931 CD 5D B3 D1 call ErrSet + 43 D1:C935 C3 E7 A8 D1 jp Err + 44 D1:C939 - - - - + 45 D1:C939 43 79 70 68 65 72 3D 20 00 - - - cryptocmdDECRYPTfSCypher: .db "Cypher= ", 0 Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/CryptoCommands.inc" - 7 D1:C936 - - - - #include "includes/CryptoCommands/unROT.asm" + 7 D1:C942 - - - - #include "includes/CryptoCommands/unROT.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/unROT.asm" - 1 D1:C936 52 4F 54 00 cryptocmdunROT: .db "ROT", 0 - 2 D1:C93A 52 4F 54 3A + 1 D1:C942 52 4F 54 00 cryptocmdunROT: .db "ROT", 0 + 2 D1:C946 52 4F 54 3A 20 43 79 70 68 65 72 2C 20 72 6F 74 @@ -4396,79 +4411,79 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/unROT 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:C971 44 45 43 52 + 3 D1:C97D 44 45 43 52 59 50 54 20 52 4F 54 20 3C 73 68 69 66 74 23 3E 00 - - - cryptocmdunROTu: .db "DECRYPT ROT ", 0 - 4 D1:C986 - - - - cryptocmdunROTf: - 5 D1:C986 - - - - cryptocmdunROTfArg1: - 6 D1:C986 21 CD EA D0 ld hl, FshCmdArgFlags - 7 D1:C98A CB 5E - - bit 3, (hl) - 8 D1:C98C 20 32 - - jr nz, cryptocmdunROTfArg2 - 9 D1:C98E CB 56 - - bit 2, (hl) - 10 D1:C990 28 0C - - jr z, cryptocmdunROTfArg1Get - 11 D1:C992 21 F2 B3 D1 ld hl, ErrUsageo - 12 D1:C996 CD 5D B3 D1 call ErrSet - 13 D1:C99A CD 10 B3 D1 call ErrCatch - 14 D1:C99E - - - - cryptocmdunROTfArg1Get: - 15 D1:C99E 21 1F CA D1 ld hl, cryptocmdunROTfDShift - 16 D1:C9A2 CD 21 AB D1 call printprompt - 17 D1:C9A6 21 B1 EA D0 ld hl, FshCmdArg1 - 18 D1:C9AA 11 03 00 00 ld de, 3 - 19 D1:C9AE CD E1 AF D1 call inputnumstr - 20 D1:C9B2 CD E3 AC D1 call strtow - 21 D1:C9B6 11 B1 EA D0 ld de, FshCmdArg1 - 22 D1:C9BA EB - - - ex de, hl - 23 D1:C9BB 73 - - - ld (hl), e - 24 D1:C9BC CD F0 07 02 call _NewLine - 25 D1:C9C0 - - - - cryptocmdunROTfArg2: - 26 D1:C9C0 21 BA EA D0 ld hl, FshCmdArg2 - 27 D1:C9C4 11 D1 EA D0 ld de, FshScratch - 28 D1:C9C8 CD 6C AC D1 call strcpy - 29 D1:C9CC 21 CD EA D0 ld hl, FshCmdArgFlags - 30 D1:C9D0 CB 66 - - bit 4, (hl) - 31 D1:C9D2 28 10 - - jr z, cryptocmdunROTfArg2Get - 32 D1:C9D4 CB 6E - - bit 5, (hl) - 33 D1:C9D6 28 24 - - jr z, cryptocmdunROTfExe - 34 D1:C9D8 21 F2 B3 D1 ld hl, ErrUsageo - 35 D1:C9DC CD 5D B3 D1 call ErrSet - 36 D1:C9E0 CD 10 B3 D1 call ErrCatch - 37 D1:C9E4 - - - - cryptocmdunROTfArg2Get: - 38 D1:C9E4 21 27 CA D1 ld hl, cryptocmdunROTfDMessage - 39 D1:C9E8 CD 21 AB D1 call printprompt - 40 D1:C9EC 21 D1 EA D0 ld hl, FshScratch - 41 D1:C9F0 11 10 00 00 ld de, FshScratchSize - 4 - 42 D1:C9F4 CD CD AE D1 call inputcharstr - 43 D1:C9F8 CD F0 07 02 call _NewLine - 44 D1:C9FC - - - - cryptocmdunROTfExe: - 45 D1:C9FC 21 B1 EA D0 ld hl, FshCmdArg1 - 46 D1:CA00 7E - - - ld a, (hl) - 47 D1:CA01 21 D1 EA D0 ld hl, FshScratch - 48 D1:CA05 CD AE B6 D1 call rotletdecrypt - 49 D1:CA09 E5 - - - push hl - 50 D1:CA0A 21 34 CA D1 ld hl, cryptocmdunROTfDResult - 51 D1:CA0E CD C0 07 02 call _PutS - 52 D1:CA12 E1 - - - pop hl - 53 D1:CA13 CD C0 07 02 call _PutS - 54 D1:CA17 CD F0 07 02 call _NewLine - 55 D1:CA1B C3 DF A8 D1 jp Fin - 56 D1:CA1F - - - - - 57 D1:CA1F 53 68 69 66 + 4 D1:C992 - - - - cryptocmdunROTf: + 5 D1:C992 - - - - cryptocmdunROTfArg1: + 6 D1:C992 21 CD EA D0 ld hl, FshCmdArgFlags + 7 D1:C996 CB 5E - - bit 3, (hl) + 8 D1:C998 20 32 - - jr nz, cryptocmdunROTfArg2 + 9 D1:C99A CB 56 - - bit 2, (hl) + 10 D1:C99C 28 0C - - jr z, cryptocmdunROTfArg1Get + 11 D1:C99E 21 F2 B3 D1 ld hl, ErrUsageo + 12 D1:C9A2 CD 5D B3 D1 call ErrSet + 13 D1:C9A6 CD 10 B3 D1 call ErrCatch + 14 D1:C9AA - - - - cryptocmdunROTfArg1Get: + 15 D1:C9AA 21 2B CA D1 ld hl, cryptocmdunROTfDShift + 16 D1:C9AE CD 21 AB D1 call printprompt + 17 D1:C9B2 21 B1 EA D0 ld hl, FshCmdArg1 + 18 D1:C9B6 11 03 00 00 ld de, 3 + 19 D1:C9BA CD E1 AF D1 call inputnumstr + 20 D1:C9BE CD E3 AC D1 call strtow + 21 D1:C9C2 11 B1 EA D0 ld de, FshCmdArg1 + 22 D1:C9C6 EB - - - ex de, hl + 23 D1:C9C7 73 - - - ld (hl), e + 24 D1:C9C8 CD F0 07 02 call _NewLine + 25 D1:C9CC - - - - cryptocmdunROTfArg2: + 26 D1:C9CC 21 BA EA D0 ld hl, FshCmdArg2 + 27 D1:C9D0 11 D1 EA D0 ld de, FshScratch + 28 D1:C9D4 CD 6C AC D1 call strcpy + 29 D1:C9D8 21 CD EA D0 ld hl, FshCmdArgFlags + 30 D1:C9DC CB 66 - - bit 4, (hl) + 31 D1:C9DE 28 10 - - jr z, cryptocmdunROTfArg2Get + 32 D1:C9E0 CB 6E - - bit 5, (hl) + 33 D1:C9E2 28 24 - - jr z, cryptocmdunROTfExe + 34 D1:C9E4 21 F2 B3 D1 ld hl, ErrUsageo + 35 D1:C9E8 CD 5D B3 D1 call ErrSet + 36 D1:C9EC CD 10 B3 D1 call ErrCatch + 37 D1:C9F0 - - - - cryptocmdunROTfArg2Get: + 38 D1:C9F0 21 33 CA D1 ld hl, cryptocmdunROTfDMessage + 39 D1:C9F4 CD 21 AB D1 call printprompt + 40 D1:C9F8 21 D1 EA D0 ld hl, FshScratch + 41 D1:C9FC 11 10 00 00 ld de, FshScratchSize - 4 + 42 D1:CA00 CD CD AE D1 call inputcharstr + 43 D1:CA04 CD F0 07 02 call _NewLine + 44 D1:CA08 - - - - cryptocmdunROTfExe: + 45 D1:CA08 21 B1 EA D0 ld hl, FshCmdArg1 + 46 D1:CA0C 7E - - - ld a, (hl) + 47 D1:CA0D 21 D1 EA D0 ld hl, FshScratch + 48 D1:CA11 CD BA B6 D1 call rotletdecrypt + 49 D1:CA15 E5 - - - push hl + 50 D1:CA16 21 40 CA D1 ld hl, cryptocmdunROTfDResult + 51 D1:CA1A CD C0 07 02 call _PutS + 52 D1:CA1E E1 - - - pop hl + 53 D1:CA1F CD C0 07 02 call _PutS + 54 D1:CA23 CD F0 07 02 call _NewLine + 55 D1:CA27 C3 DF A8 D1 jp Fin + 56 D1:CA2B - - - - + 57 D1:CA2B 53 68 69 66 74 3D 20 00 cryptocmdunROTfDShift: .db "Shift= ", 0 - 58 D1:CA27 43 79 70 68 + 58 D1:CA33 43 79 70 68 65 72 54 65 78 74 3D 20 00 - - - cryptocmdunROTfDMessage: .db "CypherText= ", 0 - 59 D1:CA34 52 65 73 75 + 59 D1:CA40 52 65 73 75 6C 74 3A 20 00 - - - cryptocmdunROTfDResult: .db "Result: ", 0 Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/CryptoCommands.inc" - 8 D1:CA3D - - - - #include "includes/CryptoCommands/unXOR.asm" + 8 D1:CA49 - - - - #include "includes/CryptoCommands/unXOR.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/unXOR.asm" - 1 D1:CA3D 58 4F 52 00 cryptocmdunXOR: .db "XOR", 0 - 2 D1:CA41 58 4F 52 3A + 1 D1:CA49 58 4F 52 00 cryptocmdunXOR: .db "XOR", 0 + 2 D1:CA4D 58 4F 52 3A 20 43 79 70 68 65 72 2C 20 61 6E 64 @@ -4477,188 +4492,188 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/unXOR 20 61 20 73 74 72 69 6E 67 00 - - cryptocmdunXORm: .db "XOR: Cypher, and decodes a string", 0 - 3 D1:CA63 44 45 43 52 + 3 D1:CA6F 44 45 43 52 59 50 54 20 58 4F 52 20 3C 6B 65 79 3E 00 - - cryptocmdunXORu: .db "DECRYPT XOR ", 0 - 4 D1:CA75 - - - - cryptocmdunXORf: - 5 D1:CA75 - - - - cryptocmdunXORfArg1: - 6 D1:CA75 21 CD EA D0 ld hl, FshCmdArgFlags - 7 D1:CA79 CB 56 - - bit 2, (hl) - 8 D1:CA7B 28 10 - - jr z, cryptocmdunXORfArg1Get - 9 D1:CA7D CB 5E - - bit 3, (hl) - 10 D1:CA7F 28 24 - - jr z, cryptocmdunXORfArg2 - 11 D1:CA81 21 F2 B3 D1 ld hl, ErrUsageo - 12 D1:CA85 CD 5D B3 D1 call ErrSet - 13 D1:CA89 CD 10 B3 D1 call ErrCatch - 14 D1:CA8D - - - - cryptocmdunXORfArg1Get: - 15 D1:CA8D 21 22 CB D1 ld hl, cryptocmdunXORfDKey - 16 D1:CA91 CD 21 AB D1 call printprompt - 17 D1:CA95 21 B1 EA D0 ld hl, FshCmdArg1 - 18 D1:CA99 11 08 00 00 ld de, FshCmdCmdSize - 19 D1:CA9D CD A9 AD D1 call inputstr - 20 D1:CAA1 CD F0 07 02 call _NewLine - 21 D1:CAA5 - - - - cryptocmdunXORfArg2: - 22 D1:CAA5 21 BA EA D0 ld hl, FshCmdArg2 - 23 D1:CAA9 11 D1 EA D0 ld de, FshScratch - 24 D1:CAAD CD 6C AC D1 call strcpy - 25 D1:CAB1 21 CD EA D0 ld hl, FshCmdArgFlags - 26 D1:CAB5 CB 66 - - bit 4, (hl) - 27 D1:CAB7 20 45 - - jr nz, cryptocmdunXORfExe - 28 D1:CAB9 - - - - cryptocmdunXORfArg2Get: - 29 D1:CAB9 21 42 CB D1 ld hl, cryptocmdunXORfStringPBuffer - 30 D1:CABD 06 0F - - ld b, $0F - 31 D1:CABF 3E 00 - - ld a, $00 - 32 D1:CAC1 CD 6B AA D1 call memset - 33 D1:CAC5 21 28 CB D1 ld hl, cryptocmdunXORfDMessage - 34 D1:CAC9 CD 21 AB D1 call printprompt - 35 D1:CACD 21 D1 EA D0 ld hl, FshScratch - 36 D1:CAD1 11 10 00 00 ld de, FshScratchSize - 4 - 37 D1:CAD5 CD A9 AD D1 call inputstr - 38 D1:CAD9 01 42 CB D1 ld bc, cryptocmdunXORfStringPBuffer - 39 D1:CADD - - - - cryptocmdunXORfArg2GetLoop: - 40 D1:CADD 7E - - - ld a, (hl) - 41 D1:CADE B7 - - - or a, a - 42 D1:CADF 28 19 - - jr z, cryptocmdunXORfArg2GetLoopEnd - 43 D1:CAE1 32 3E CB D1 ld (cryptocmdunXORfStringBuffer), a - 44 D1:CAE5 23 - - - inc hl - 45 D1:CAE6 7E - - - ld a, (hl) - 46 D1:CAE7 32 3F CB D1 ld (cryptocmdunXORfStringBuffer + 1), a - 47 D1:CAEB E5 - - - push hl - 48 D1:CAEC 21 3E CB D1 ld hl, cryptocmdunXORfStringBuffer - 49 D1:CAF0 CD 1C AC D1 call hexToA - 50 D1:CAF4 E1 - - - pop hl - 51 D1:CAF5 02 - - - ld (bc), a - 52 D1:CAF6 23 - - - inc hl - 53 D1:CAF7 03 - - - inc bc - 54 D1:CAF8 18 E3 - - jr cryptocmdunXORfArg2GetLoop - 55 D1:CAFA - - - - cryptocmdunXORfArg2GetLoopEnd: - 56 D1:CAFA CD F0 07 02 call _NewLine - 57 D1:CAFE - - - - cryptocmdunXORfExe: - 58 D1:CAFE 21 42 CB D1 ld hl, cryptocmdunXORfStringPBuffer - 59 D1:CB02 11 B1 EA D0 ld de, FshCmdArg1 - 60 D1:CB06 CD 17 B7 D1 call xorcrypt - 61 D1:CB0A 21 35 CB D1 ld hl, cryptocmdunXORfDResult - 62 D1:CB0E CD C0 07 02 call _PutS - 63 D1:CB12 21 42 CB D1 ld hl, cryptocmdunXORfStringPBuffer - 64 D1:CB16 CD C0 07 02 call _PutS - 65 D1:CB1A CD F0 07 02 call _NewLine - 66 D1:CB1E C3 DF A8 D1 jp Fin - 67 D1:CB22 - - - - - 68 D1:CB22 4B 65 79 3D + 4 D1:CA81 - - - - cryptocmdunXORf: + 5 D1:CA81 - - - - cryptocmdunXORfArg1: + 6 D1:CA81 21 CD EA D0 ld hl, FshCmdArgFlags + 7 D1:CA85 CB 56 - - bit 2, (hl) + 8 D1:CA87 28 10 - - jr z, cryptocmdunXORfArg1Get + 9 D1:CA89 CB 5E - - bit 3, (hl) + 10 D1:CA8B 28 24 - - jr z, cryptocmdunXORfArg2 + 11 D1:CA8D 21 F2 B3 D1 ld hl, ErrUsageo + 12 D1:CA91 CD 5D B3 D1 call ErrSet + 13 D1:CA95 CD 10 B3 D1 call ErrCatch + 14 D1:CA99 - - - - cryptocmdunXORfArg1Get: + 15 D1:CA99 21 2E CB D1 ld hl, cryptocmdunXORfDKey + 16 D1:CA9D CD 21 AB D1 call printprompt + 17 D1:CAA1 21 B1 EA D0 ld hl, FshCmdArg1 + 18 D1:CAA5 11 08 00 00 ld de, FshCmdCmdSize + 19 D1:CAA9 CD A9 AD D1 call inputstr + 20 D1:CAAD CD F0 07 02 call _NewLine + 21 D1:CAB1 - - - - cryptocmdunXORfArg2: + 22 D1:CAB1 21 BA EA D0 ld hl, FshCmdArg2 + 23 D1:CAB5 11 D1 EA D0 ld de, FshScratch + 24 D1:CAB9 CD 6C AC D1 call strcpy + 25 D1:CABD 21 CD EA D0 ld hl, FshCmdArgFlags + 26 D1:CAC1 CB 66 - - bit 4, (hl) + 27 D1:CAC3 20 45 - - jr nz, cryptocmdunXORfExe + 28 D1:CAC5 - - - - cryptocmdunXORfArg2Get: + 29 D1:CAC5 21 4E CB D1 ld hl, cryptocmdunXORfStringPBuffer + 30 D1:CAC9 06 0F - - ld b, $0F + 31 D1:CACB 3E 00 - - ld a, $00 + 32 D1:CACD CD 6B AA D1 call memset + 33 D1:CAD1 21 34 CB D1 ld hl, cryptocmdunXORfDMessage + 34 D1:CAD5 CD 21 AB D1 call printprompt + 35 D1:CAD9 21 D1 EA D0 ld hl, FshScratch + 36 D1:CADD 11 10 00 00 ld de, FshScratchSize - 4 + 37 D1:CAE1 CD A9 AD D1 call inputstr + 38 D1:CAE5 01 4E CB D1 ld bc, cryptocmdunXORfStringPBuffer + 39 D1:CAE9 - - - - cryptocmdunXORfArg2GetLoop: + 40 D1:CAE9 7E - - - ld a, (hl) + 41 D1:CAEA B7 - - - or a, a + 42 D1:CAEB 28 19 - - jr z, cryptocmdunXORfArg2GetLoopEnd + 43 D1:CAED 32 4A CB D1 ld (cryptocmdunXORfStringBuffer), a + 44 D1:CAF1 23 - - - inc hl + 45 D1:CAF2 7E - - - ld a, (hl) + 46 D1:CAF3 32 4B CB D1 ld (cryptocmdunXORfStringBuffer + 1), a + 47 D1:CAF7 E5 - - - push hl + 48 D1:CAF8 21 4A CB D1 ld hl, cryptocmdunXORfStringBuffer + 49 D1:CAFC CD 1C AC D1 call hexToA + 50 D1:CB00 E1 - - - pop hl + 51 D1:CB01 02 - - - ld (bc), a + 52 D1:CB02 23 - - - inc hl + 53 D1:CB03 03 - - - inc bc + 54 D1:CB04 18 E3 - - jr cryptocmdunXORfArg2GetLoop + 55 D1:CB06 - - - - cryptocmdunXORfArg2GetLoopEnd: + 56 D1:CB06 CD F0 07 02 call _NewLine + 57 D1:CB0A - - - - cryptocmdunXORfExe: + 58 D1:CB0A 21 4E CB D1 ld hl, cryptocmdunXORfStringPBuffer + 59 D1:CB0E 11 B1 EA D0 ld de, FshCmdArg1 + 60 D1:CB12 CD 23 B7 D1 call xorcrypt + 61 D1:CB16 21 41 CB D1 ld hl, cryptocmdunXORfDResult + 62 D1:CB1A CD C0 07 02 call _PutS + 63 D1:CB1E 21 4E CB D1 ld hl, cryptocmdunXORfStringPBuffer + 64 D1:CB22 CD C0 07 02 call _PutS + 65 D1:CB26 CD F0 07 02 call _NewLine + 66 D1:CB2A C3 DF A8 D1 jp Fin + 67 D1:CB2E - - - - + 68 D1:CB2E 4B 65 79 3D 20 00 - - cryptocmdunXORfDKey: .db "Key= ", 0 - 69 D1:CB28 43 79 70 68 + 69 D1:CB34 43 79 70 68 65 72 54 65 78 74 3D 20 00 - - - cryptocmdunXORfDMessage: .db "CypherText= ", 0 - 70 D1:CB35 52 65 73 75 + 70 D1:CB41 52 65 73 75 6C 74 3A 20 00 - - - cryptocmdunXORfDResult: .db "Result: ", 0 - 71 D1:CB3E 00 00 00 00 cryptocmdunXORfStringBuffer: .db $00, $00, $00, $00 - 72 D1:CB42 00 00 00 00 + 71 D1:CB4A 00 00 00 00 cryptocmdunXORfStringBuffer: .db $00, $00, $00, $00 + 72 D1:CB4E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 cryptocmdunXORfStringPBuffer: .db $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/CryptoCommands.inc" - 9 D1:CB52 - - - - #include "includes/CryptoCommands/unHELP.asm" + 9 D1:CB5E - - - - #include "includes/CryptoCommands/unHELP.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/unHELP.asm" - 1 D1:CB52 48 45 4C 50 + 1 D1:CB5E 48 45 4C 50 00 - - - cryptocmdunHELP: .db "HELP", 0 - 2 D1:CB57 48 65 6C 70 + 2 D1:CB63 48 65 6C 70 20 66 6F 72 20 63 79 70 68 65 72 73 00 - - - cryptocmdunHELPm: .db "Help for cyphers", 0 - 3 D1:CB68 44 45 43 52 + 3 D1:CB74 44 45 43 52 59 50 54 20 48 45 4C 50 00 - - - cryptocmdunHELPu: .db "DECRYPT HELP", 0 - 4 D1:CB75 - - - - cryptocmdunHELPf: - 5 D1:CB75 21 CD EA D0 ld hl, FshCmdArgFlags - 6 D1:CB79 CB 56 - - bit 2, (hl) - 7 D1:CB7B 28 0C - - jr z, cryptocmdunHELPfExe - 8 D1:CB7D 21 F2 B3 D1 ld hl, ErrUsageo - 9 D1:CB81 CD 5D B3 D1 call ErrSet - 10 D1:CB85 CD 10 B3 D1 call ErrCatch - 11 D1:CB89 - - - - cryptocmdunHELPfExe: - 12 D1:CB89 21 E7 CB D1 ld hl, cryptocmdunHELPfLine1 - 13 D1:CB8D CD C0 07 02 call _PutS - 14 D1:CB91 CD F0 07 02 call _NewLine - 15 D1:CB95 - - - - - 16 D1:CB95 - - - - #macro cryptocmdunHELPmRow1(cmdXs) - 17 D1:CB95 xor a - 18 D1:CB95 ld (curCol), a - 19 D1:CB95 ld hl, cmdXs - 20 D1:CB95 call _PutS - 21 D1:CB95 call _NewLine - 22 D1:CB95 #endmacro - 23 D1:CB95 - - - - #macro cryptocmdunHELPmRowU(cmdXs, cmdXu) - 24 D1:CB95 xor a - 25 D1:CB95 ld (curCol), a - 26 D1:CB95 ld hl, cmdXs - 27 D1:CB95 call _PutS - 28 D1:CB95 ld a, ':' - 29 D1:CB95 call _PutC - 30 D1:CB95 ld a, ' ' - 31 D1:CB95 call _PutC - 32 D1:CB95 ld hl, cmdXu - 33 D1:CB95 call _PutS - 34 D1:CB95 call _NewLine - 35 D1:CB95 #endmacro - 36 D1:CB95 - - - - #macro cryptocmdunHELPmRow2(cmdXs, cmdYs) - 37 D1:CB95 xor a - 38 D1:CB95 ld (curCol), a - 39 D1:CB95 ld hl, cmdXs - 40 D1:CB95 call _PutS - 41 D1:CB95 ld a, 9 - 42 D1:CB95 ld (curcol), a - 43 D1:CB95 ld hl, cmdYs - 44 D1:CB95 call _PutS - 45 D1:CB95 call _NewLine - 46 D1:CB95 #endmacro - 47 D1:CB95 - - - - #macro cryptocmdunHELPmRow3(cmdXs, cmdYs, cmdZs) - 48 D1:CB95 xor a - 49 D1:CB95 ld (curCol), a - 50 D1:CB95 ld hl, cmdXs - 51 D1:CB95 call _PutS - 52 D1:CB95 ld a, 9 - 53 D1:CB95 ld (curcol), a - 54 D1:CB95 ld hl, cmdYs - 55 D1:CB95 call _PutS - 56 D1:CB95 ld a, 19 - 57 D1:CB95 ld (curcol), a - 58 D1:CB95 ld hl, cmdZs - 59 D1:CB95 call _PutS - 60 D1:CB95 call _NewLine - 61 D1:CB95 #endmacro - 62 D1:CB95 - - - - - 63 D1:CB95 AF 32 96 05 - D0 21 36 C9 + 4 D1:CB81 - - - - cryptocmdunHELPf: + 5 D1:CB81 21 CD EA D0 ld hl, FshCmdArgFlags + 6 D1:CB85 CB 56 - - bit 2, (hl) + 7 D1:CB87 28 0C - - jr z, cryptocmdunHELPfExe + 8 D1:CB89 21 F2 B3 D1 ld hl, ErrUsageo + 9 D1:CB8D CD 5D B3 D1 call ErrSet + 10 D1:CB91 CD 10 B3 D1 call ErrCatch + 11 D1:CB95 - - - - cryptocmdunHELPfExe: + 12 D1:CB95 21 F3 CB D1 ld hl, cryptocmdunHELPfLine1 + 13 D1:CB99 CD C0 07 02 call _PutS + 14 D1:CB9D CD F0 07 02 call _NewLine + 15 D1:CBA1 - - - - + 16 D1:CBA1 - - - - #macro cryptocmdunHELPmRow1(cmdXs) + 17 D1:CBA1 xor a + 18 D1:CBA1 ld (curCol), a + 19 D1:CBA1 ld hl, cmdXs + 20 D1:CBA1 call _PutS + 21 D1:CBA1 call _NewLine + 22 D1:CBA1 #endmacro + 23 D1:CBA1 - - - - #macro cryptocmdunHELPmRowU(cmdXs, cmdXu) + 24 D1:CBA1 xor a + 25 D1:CBA1 ld (curCol), a + 26 D1:CBA1 ld hl, cmdXs + 27 D1:CBA1 call _PutS + 28 D1:CBA1 ld a, ':' + 29 D1:CBA1 call _PutC + 30 D1:CBA1 ld a, ' ' + 31 D1:CBA1 call _PutC + 32 D1:CBA1 ld hl, cmdXu + 33 D1:CBA1 call _PutS + 34 D1:CBA1 call _NewLine + 35 D1:CBA1 #endmacro + 36 D1:CBA1 - - - - #macro cryptocmdunHELPmRow2(cmdXs, cmdYs) + 37 D1:CBA1 xor a + 38 D1:CBA1 ld (curCol), a + 39 D1:CBA1 ld hl, cmdXs + 40 D1:CBA1 call _PutS + 41 D1:CBA1 ld a, 9 + 42 D1:CBA1 ld (curcol), a + 43 D1:CBA1 ld hl, cmdYs + 44 D1:CBA1 call _PutS + 45 D1:CBA1 call _NewLine + 46 D1:CBA1 #endmacro + 47 D1:CBA1 - - - - #macro cryptocmdunHELPmRow3(cmdXs, cmdYs, cmdZs) + 48 D1:CBA1 xor a + 49 D1:CBA1 ld (curCol), a + 50 D1:CBA1 ld hl, cmdXs + 51 D1:CBA1 call _PutS + 52 D1:CBA1 ld a, 9 + 53 D1:CBA1 ld (curcol), a + 54 D1:CBA1 ld hl, cmdYs + 55 D1:CBA1 call _PutS + 56 D1:CBA1 ld a, 19 + 57 D1:CBA1 ld (curcol), a + 58 D1:CBA1 ld hl, cmdZs + 59 D1:CBA1 call _PutS + 60 D1:CBA1 call _NewLine + 61 D1:CBA1 #endmacro + 62 D1:CBA1 - - - - + 63 D1:CBA1 AF 32 96 05 + D0 21 42 C9 D1 CD C0 07 02 3E 3A CD B8 07 02 3E 20 CD B8 07 - 02 21 71 C9 + 02 21 7D C9 D1 CD C0 07 02 CD F0 07 02 - - - cryptocmdunHELPmRowU(cryptocmdunROT, cryptocmdunROTu) Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/unHELP.asm" - 64 D1:CBBA AF 32 96 05 - D0 21 3D CA + 64 D1:CBC6 AF 32 96 05 + D0 21 49 CA D1 CD C0 07 02 3E 3A CD B8 07 02 3E 20 CD B8 07 - 02 21 63 CA + 02 21 6F CA D1 CD C0 07 02 CD F0 07 02 - - - cryptocmdunHELPmRowU(cryptocmdunXOR, cryptocmdunXORu) - 65 D1:CBDF - - - - - 66 D1:CBDF CD F0 07 02 call _NewLine - 67 D1:CBE3 C3 DF A8 D1 jp Fin - 68 D1:CBE7 - - - - - 69 D1:CBE7 41 76 61 69 + 65 D1:CBEB - - - - + 66 D1:CBEB CD F0 07 02 call _NewLine + 67 D1:CBEF C3 DF A8 D1 jp Fin + 68 D1:CBF3 - - - - + 69 D1:CBF3 41 76 61 69 6C 61 62 6C 65 20 43 72 79 70 74 6F @@ -4666,70 +4681,95 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/unHEL Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/CryptoCommands.inc" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/CryptoCommands/CryptoCommand.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/Command.asm" - 51 D1:CBFA - - - - #include "includes/PrgmCommands/PrgmCommand.asm" + 51 D1:CC06 - - - - #include "includes/PrgmCommands/PrgmCommand.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/PrgmCommands/PrgmCommand.asm" - 1 D1:CBFA - - - - prgmcmddecode: - 2 D1:CBFA E5 D5 11 44 + 1 D1:CC06 - - - - prgmcmddecode: + 2 D1:CC06 E5 D5 11 50 CC D1 CD 59 - AC D1 21 49 + AC D1 21 55 CC D1 D1 CC 52 AA D1 E1 decodecmdopt(prgmcmdPRGM, prgmcmdPRGMo) Listing for file "/home/pi/Documents/asm/fsh-shell/includes/PrgmCommands/PrgmCommand.asm" - 3 D1:CC0E C9 - - - ret - 4 D1:CC0F - - - - - 5 D1:CC0F - - - - prgmcmdroute: - 6 D1:CC0F C1 - - - pop bc - 7 D1:CC10 11 49 CC D1 + 3 D1:CC1A C9 - - - ret + 4 D1:CC1B - - - - + 5 D1:CC1B - - - - prgmcmdroute: + 6 D1:CC1B C1 - - - pop bc + 7 D1:CC1C 11 55 CC D1 CD 5E AA D1 - CA 55 CC D1 routeoptjp(prgmcmdPRGMo, prgmcmdPRGMf) - 8 D1:CC1C C5 - - - push bc - 9 D1:CC1D C9 - - - ret - 10 D1:CC1E - - - - - 11 D1:CC1E - - - - prgmcmdmanroute: - 12 D1:CC1E C1 - - - pop bc - 13 D1:CC1F 11 44 CC D1 + CA 61 CC D1 routeoptjp(prgmcmdPRGMo, prgmcmdPRGMf) + 8 D1:CC28 C5 - - - push bc + 9 D1:CC29 C9 - - - ret + 10 D1:CC2A - - - - + 11 D1:CC2A - - - - prgmcmdmanroute: + 12 D1:CC2A C1 - - - pop bc + 13 D1:CC2B 11 50 CC D1 CD 59 AC D1 - 11 4B CC D1 - CA 8D B7 D1 routestrjp(prgmcmdPRGM, prgmcmdPRGMm) - 14 D1:CC2F C5 - - - push bc - 15 D1:CC30 C9 - - - ret - 16 D1:CC31 - - - - - 17 D1:CC31 - - - - - 18 D1:CC31 - - - - prgmcmdmanrouteu: - 19 D1:CC31 C1 - - - pop bc - 20 D1:CC32 11 44 CC D1 + 11 57 CC D1 + CA 99 B7 D1 routestrjp(prgmcmdPRGM, prgmcmdPRGMm) + 14 D1:CC3B C5 - - - push bc + 15 D1:CC3C C9 - - - ret + 16 D1:CC3D - - - - + 17 D1:CC3D - - - - + 18 D1:CC3D - - - - prgmcmdmanrouteu: + 19 D1:CC3D C1 - - - pop bc + 20 D1:CC3E 11 50 CC D1 CD 59 AC D1 - 11 50 CC D1 - CA A3 B7 D1 routeustrjp(prgmcmdPRGM, prgmcmdPRGMu) - 21 D1:CC42 C5 - - - push bc - 22 D1:CC43 C9 - - - ret - 23 D1:CC44 - - - - - 24 D1:CC44 - - - - #include "includes/PrgmCommands/PrgmCommands.inc" + 11 5C CC D1 + CA AF B7 D1 routeustrjp(prgmcmdPRGM, prgmcmdPRGMu) + 21 D1:CC4E C5 - - - push bc + 22 D1:CC4F C9 - - - ret + 23 D1:CC50 - - - - + 24 D1:CC50 - - - - #include "includes/PrgmCommands/PrgmCommands.inc" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/PrgmCommands/PrgmCommands.inc" - 1 D1:CC44 - - - - #include "includes/PrgmCommands/PRGM.asm" + 1 D1:CC50 - - - - #include "includes/PrgmCommands/PRGM.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/PrgmCommands/PRGM.asm" - 1 D1:CC44 50 52 47 4D + 1 D1:CC50 50 52 47 4D 00 - - - prgmcmdPRGM: .db "PRGM", 0 - 2 D1:CC49 00 01 - - prgmcmdPRGMo: .dw $0100 - 3 D1:CC4B 68 65 6C 70 + 2 D1:CC55 00 01 - - prgmcmdPRGMo: .dw $0100 + 3 D1:CC57 68 65 6C 70 00 - - - prgmcmdPRGMm: .db "help", 0 - 4 D1:CC50 50 52 47 4D + 4 D1:CC5C 50 52 47 4D 00 - - - prgmcmdPRGMu: .db "PRGM", 0 - 5 D1:CC55 - - - - prgmcmdPRGMf: - 6 D1:CC55 - - - - - 7 D1:CC55 21 61 CC D1 ld hl, prgmcmdPRGMSprgm - 8 D1:CC59 CD 20 03 02 call _Mov9ToOP1 - 9 D1:CC5D - - - - - 10 D1:CC5D C3 34 B5 D1 jp prgmrun - 11 D1:CC61 - - - - - 12 D1:CC61 05 45 41 53 - 45 00 - - prgmcmdPRGMSprgm: .db ProgObj, "EASE", 0 + 5 D1:CC61 - - - - prgmcmdPRGMf: + 6 D1:CC61 - - - - prgmcmdPRGMfCheckArgs: + 7 D1:CC61 21 CD EA D0 ld hl, FshCmdArgFlags + 8 D1:CC65 CB 46 - - bit 0, (hl) + 9 D1:CC67 28 10 - - jr z, prgmcmdPRGMfArg0Get + 10 D1:CC69 CB 4E - - bit 1, (hl) + 11 D1:CC6B 28 24 - - jr z, prgmcmdPRGMfExe + 12 D1:CC6D 21 F2 B3 D1 ld hl, ErrUsageo + 13 D1:CC71 CD 5D B3 D1 call ErrSet + 14 D1:CC75 CD 10 B3 D1 call ErrCatch + 15 D1:CC79 - - - - prgmcmdPRGMfArg0Get: + 16 D1:CC79 21 B3 CC D1 ld hl, prgmcmdPRGMfPrompt + 17 D1:CC7D CD 21 AB D1 call printprompt + 18 D1:CC81 - - - - + 19 D1:CC81 21 A8 EA D0 ld hl, FshCmdArg0 + 20 D1:CC85 11 08 00 00 ld de, 8 + 21 D1:CC89 CD A9 AD D1 call inputstr + 22 D1:CC8D CD F0 07 02 call _NewLine + 23 D1:CC91 - - - - + 24 D1:CC91 - - - - prgmcmdPRGMfExe: + 25 D1:CC91 21 A8 EA D0 ld hl, fshCmdArg0 + 26 D1:CC95 11 AA CC D1 ld de, prgmcmdPRGMSprgm + 1 + 27 D1:CC99 CD 6C AC D1 call strcpy + 28 D1:CC9D - - - - + 29 D1:CC9D 21 A9 CC D1 ld hl, prgmcmdPRGMSprgm + 30 D1:CCA1 CD 20 03 02 call _Mov9ToOP1 + 31 D1:CCA5 - - - - + 32 D1:CCA5 C3 34 B5 D1 jp prgmrun + 33 D1:CCA9 - - - - + 34 D1:CCA9 05 00 00 00 + 00 00 00 00 + 00 00 - - prgmcmdPRGMSprgm: .db ProgObj, 0, 0, 0, 0, 0, 0, 0, 0, 0 + 35 D1:CCB3 50 72 67 6D + 3D 00 - - prgmcmdPRGMfPrompt: .db "Prgm=", 0 Listing for file "/home/pi/Documents/asm/fsh-shell/includes/PrgmCommands/PrgmCommands.inc" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/PrgmCommands/PrgmCommand.asm" Listing for file "/home/pi/Documents/asm/fsh-shell/includes/Command.asm" Listing for file "FSHa.asm" - 77 D1:CC67 - - - - - 78 D1:CC67 45 4E 44 46 + 77 D1:CCB9 - - - - + 78 D1:CCB9 45 4E 44 46 53 48 41 - .db "ENDFSHA" - 79 D1:CC6E - - - - - 80 D1:CC6E - - - - .end + 79 D1:CCC0 - - - - + 80 D1:CCC0 - - - - .end diff --git a/includes/PrgmCommands/PRGM.asm b/includes/PrgmCommands/PRGM.asm index d770d80..6d435e7 100644 --- a/includes/PrgmCommands/PRGM.asm +++ b/includes/PrgmCommands/PRGM.asm @@ -3,10 +3,33 @@ prgmcmdPRGMo: .dw $0100 prgmcmdPRGMm: .db "help", 0 prgmcmdPRGMu: .db "PRGM", 0 prgmcmdPRGMf: +prgmcmdPRGMfCheckArgs: + ld hl, FshCmdArgFlags + bit 0, (hl) + jr z, prgmcmdPRGMfArg0Get + bit 1, (hl) + jr z, prgmcmdPRGMfExe + ld hl, ErrUsageo + call ErrSet + call ErrCatch +prgmcmdPRGMfArg0Get: + ld hl, prgmcmdPRGMfPrompt + call printprompt + + ld hl, FshCmdArg0 + ld de, 8 + call inputstr + call _NewLine + +prgmcmdPRGMfExe: + ld hl, fshCmdArg0 + ld de, prgmcmdPRGMSprgm + 1 + call strcpy ld hl, prgmcmdPRGMSprgm call _Mov9ToOP1 jp prgmrun -prgmcmdPRGMSprgm: .db ProgObj, "EASE", 0 +prgmcmdPRGMSprgm: .db ProgObj, 0, 0, 0, 0, 0, 0, 0, 0, 0 +prgmcmdPRGMfPrompt: .db "Prgm=", 0 diff --git a/includes/lib/prgm/Prgm.asm b/includes/lib/prgm/Prgm.asm index 0c6847a..0f2def6 100644 --- a/includes/lib/prgm/Prgm.asm +++ b/includes/lib/prgm/Prgm.asm @@ -28,13 +28,15 @@ prgmloader: ;ld (mpLcdCtrl),a ; Set LCD to 16bpp call _DrawStatusBar ;ld hl,(prgmNamePtr) - ;call NamePtrToOP1 + ;call NamePtrToOP1 call prgm_to_usermem - ld hl, userMem + 1 + ld hl, userMem + inc hl + inc hl ld a, (hl) - cp a,tAsm84CECmp - jr nz,RunBasicProgram ; is it a basic program - ld hl, prgmunloader + cp a,tExtTok + jr z, runBasicProgram ; is it a basic program + ld hl, prgmunloader;ErrCatchBASIC call _PushErrorHandler ld hl, prgmunloader push hl @@ -50,8 +52,8 @@ runBasicProgram: ;inc de ;pop bc ;call _ChkBCIs0 -; jr z,InROM ; there's nothing to copy -; ld hl,(userMem) + ;jr z,InROM ; there's nothing to copy + ;ld hl,(userMem) ;ldi ;jp po,InROM ;ldir @@ -62,7 +64,7 @@ GoodInRAM: ;ld bc,StopErrorEnd-StopError ;ldir set graphdraw,(iy+graphFlags) - ld hl,prgmerrunloader;ErrCatchBASIC + ld hl,ErrCatchBASIC call _PushErrorHandler set progExecuting,(iy+newdispf) set allowProgTokens,(iy+newDispF) @@ -73,6 +75,7 @@ GoodInRAM: sub a,a ld (kbdGetKy),a ei + halt jp _ParseInp ; run program @@ -85,12 +88,15 @@ ErrCatchBASIC: ld (curRow),hl ld hl,QuitStr1 call _PutS - ld hl,QuitStr2 res textInverse, (iy + textFlags) + ld hl,QuitStr2 call _PutS call _GetKey jr +_ +QuitStr1: .db "1:",0 +QuitStr2: .db "Quit",0 + prgmunloader: call _PopErrorHandler @@ -161,7 +167,15 @@ DeleteTempProgramGetName: call nc,_DelVarArc ; delete the temp prgm if it exists jp _PopOP1 +prgmattributes: + + + tmpPrgmName: .db tempProgObj,"ZTGP",0 prgmFsh: .db ProgObj, "FSHA", 0 +prgmFlags: .db $00 ;basic +#define isasm equ 0 +#define isbasic equ 1 +#define isice equ 2 prgmmov_end: endrelocate()