ugh, no work well
This commit is contained in:
parent
f993fb057f
commit
54648a2c9a
BIN
bin/FSHa.8xp
BIN
bin/FSHa.8xp
Binary file not shown.
130
bin/FSHa.lst
130
bin/FSHa.lst
|
|
@ -2253,7 +2253,7 @@ 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/prgm/Prgm.asm"
|
||||
1 D1:B534 - - - - #define prgmloadersize prgmloaderend - prgmloader
|
||||
2 D1:B534 - - - - #define prgmunloadersize prgmunloaderend - prgmunloader
|
||||
3 D1:B534 - - - - #define prgm_to_usermem_size prgm_to_usermem - prgm_to_usermem_end
|
||||
3 D1:B534 - - - - #define prgm_to_usermem_size prgm_to_usermem_end - prgm_to_usermem
|
||||
4 D1:B534 - - - - prgmloaderloc equ SafeSScreen
|
||||
5 D1:B534 - - - - prgmunloaderloc equ SafeSScreen + prgmloadersize
|
||||
6 D1:B534 - - - - prgm_to_usermem_loc equ SafeSScreen + prgmloadersize + prgmunloadersize
|
||||
|
|
@ -2270,17 +2270,17 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/lib/prgm/Prgm.asm"
|
|||
17 D1:B548 C3 D5 EE D0 jp prgmloaderloc
|
||||
18 D1:B54C - - - -
|
||||
19 D1:B54C - - - - prgminstallload:
|
||||
20 D1:B54C 21 77 B5 D1 ld hl, prgmloader
|
||||
20 D1:B54C 21 77 B5 D1 ld hl, prgmmov_start
|
||||
21 D1:B550 11 D5 EE D0 ld de, prgmloaderloc
|
||||
22 D1:B554 01 11 00 00 ld bc, prgmloadersize
|
||||
23 D1:B558 ED B0 - - ldir
|
||||
24 D1:B55A 21 88 B5 D1 ld hl, prgmunloader
|
||||
24 D1:B55A 21 88 B5 D1 ld hl, prgmmov_start + prgmloadersize
|
||||
25 D1:B55E 11 34 B5 D1 ld de, prgmunloaderloc
|
||||
26 D1:B562 01 18 00 00 ld bc, prgmunloadersize
|
||||
27 D1:B566 ED B0 - - ldir
|
||||
28 D1:B568 21 A0 B5 D1 ld hl, prgm_to_usermem
|
||||
28 D1:B568 21 A0 B5 D1 ld hl, prgmmov_start + prgmloadersize + prgmunloadersize
|
||||
29 D1:B56C 11 34 B5 D1 ld de, prgm_to_usermem_loc
|
||||
30 D1:B570 01 BC FF FF ld bc, prgm_to_usermem_size
|
||||
30 D1:B570 01 44 00 00 ld bc, prgm_to_usermem_size
|
||||
31 D1:B574 ED B0 - - ldir
|
||||
32 D1:B576 C9 - - - ret
|
||||
33 D1:B577 - - - -
|
||||
|
|
@ -2288,67 +2288,67 @@ Listing for file "/home/pi/Documents/asm/fsh-shell/includes/lib/prgm/Prgm.asm"
|
|||
35 D1:B577 - - - -
|
||||
36 D1:B577 - - - - prgmmov_start:
|
||||
37 D1:B577 - - - -
|
||||
38 D1:B577 - - - - ;.org SafeSScreen
|
||||
39 D1:B577 - - - -
|
||||
40 D1:B577 - - - - prgmmov:
|
||||
41 D1:B577 - - - -
|
||||
42 D1:B577 - - - - prgmloader:
|
||||
43 D1:B577 CD 34 B5 D1 call prgm_to_usermem_loc
|
||||
44 D1:B57B 21 34 B5 D1 ld hl, prgmunloaderloc
|
||||
45 D1:B57F E5 - - - push hl
|
||||
46 D1:B580 FD CB 0D D6 set appAutoScroll,(iy + appflags)
|
||||
47 D1:B584 C3 81 A8 D1 jp userMem
|
||||
48 D1:B588 - - - - prgmloaderend:
|
||||
49 D1:B588 - - - -
|
||||
50 D1:B588 - - - - prgmunloader:
|
||||
51 D1:B588 21 04 A9 D1 ld hl, Fsh
|
||||
52 D1:B58C 11 F8 05 D0 ld de, OP1
|
||||
53 D1:B590 CD 6C AC D1 call strcpy
|
||||
54 D1:B594 CD 34 B5 D1 call prgm_to_usermem_loc
|
||||
55 D1:B598 CD 48 08 02 call _RunIndicOff
|
||||
56 D1:B59C C3 DF A8 D1 jp Fin
|
||||
57 D1:B5A0 - - - - prgmunloaderend:
|
||||
58 D1:B5A0 - - - -
|
||||
59 D1:B5A0 - - - - prgm_to_usermem:
|
||||
60 D1:B5A0 3E 09 - - ld a,$9 ; 'add hl,bc'
|
||||
61 D1:B5A2 32 E0 B5 D1 ld (prgm_to_usermem.smc),a
|
||||
62 D1:B5A6 CD 0C 05 02 call _ChkFindSym
|
||||
63 D1:B5AA CD 98 1F 02 call _ChkInRam
|
||||
64 D1:B5AE EB - - - ex de,hl
|
||||
65 D1:B5AF 28 0D - - jr z, prgm_to_usermem.in_ram
|
||||
66 D1:B5B1 AF - - - xor a,a
|
||||
67 D1:B5B2 32 E0 B5 D1 ld (prgm_to_usermem.smc),a
|
||||
68 D1:B5B6 11 09 00 00 ld de,9
|
||||
69 D1:B5BA 19 - - - add hl,de
|
||||
70 D1:B5BB 5E - - - ld e,(hl)
|
||||
71 D1:B5BC 19 - - - add hl,de
|
||||
72 D1:B5BD 23 - - - inc hl
|
||||
73 D1:B5BE - - - - prgm_to_usermem.in_ram: ; hl -> size bytes
|
||||
74 D1:B5BE CD 9C 1D 02 call _LoadDEInd_s
|
||||
75 D1:B5C2 23 - - - inc hl
|
||||
76 D1:B5C3 23 - - - inc hl ; bypass tExtTok, tAsm84CECmp
|
||||
77 D1:B5C4 E5 - - - push hl
|
||||
78 D1:B5C5 D5 - - - push de
|
||||
79 D1:B5C6 EB - - - ex de,hl
|
||||
80 D1:B5C7 CD 2C 07 02 call _ErrNotEnoughMem ; check and see if we have enough memory
|
||||
81 D1:B5CB E1 - - - pop hl
|
||||
82 D1:B5CC 22 8C 11 D0 ld (asm_prgm_size),hl ; store the size of the program
|
||||
83 D1:B5D0 11 81 A8 D1 ld de,userMem
|
||||
84 D1:B5D4 D5 - - - push de
|
||||
85 D1:B5D5 CD 14 05 02 call _InsertMem; insert memory into usermem
|
||||
86 D1:B5D9 D1 - - - pop de
|
||||
87 D1:B5DA E1 - - - pop hl ; hl -> start of program
|
||||
88 D1:B5DB ED 4B 8C 11
|
||||
38 D1:B577 - - - - .org SafeSScreen
|
||||
39 D0:EED5 - - - -
|
||||
40 D0:EED5 - - - - prgmmov:
|
||||
41 D0:EED5 - - - -
|
||||
42 D0:EED5 - - - - prgmloader:
|
||||
43 D0:EED5 CD FE EE D0 call prgm_to_usermem
|
||||
44 D0:EED9 21 E6 EE D0 ld hl, prgmunloader
|
||||
45 D0:EEDD E5 - - - push hl
|
||||
46 D0:EEDE FD CB 0D D6 set appAutoScroll,(iy + appflags)
|
||||
47 D0:EEE2 C3 81 A8 D1 jp userMem
|
||||
48 D0:EEE6 - - - - prgmloaderend:
|
||||
49 D0:EEE6 - - - -
|
||||
50 D0:EEE6 - - - - prgmunloader:
|
||||
51 D0:EEE6 21 04 A9 D1 ld hl, Fsh
|
||||
52 D0:EEEA 11 F8 05 D0 ld de, OP1
|
||||
53 D0:EEEE CD 6C AC D1 call strcpy
|
||||
54 D0:EEF2 CD FE EE D0 call prgm_to_usermem
|
||||
55 D0:EEF6 CD 48 08 02 call _RunIndicOff
|
||||
56 D0:EEFA C3 DF A8 D1 jp Fin
|
||||
57 D0:EEFE - - - - prgmunloaderend:
|
||||
58 D0:EEFE - - - -
|
||||
59 D0:EEFE - - - - prgm_to_usermem:
|
||||
60 D0:EEFE 3E 09 - - ld a,$9 ; 'add hl,bc'
|
||||
61 D0:EF00 32 3E EF D0 ld (prgm_to_usermem.smc),a
|
||||
62 D0:EF04 CD 0C 05 02 call _ChkFindSym
|
||||
63 D0:EF08 CD 98 1F 02 call _ChkInRam
|
||||
64 D0:EF0C EB - - - ex de,hl
|
||||
65 D0:EF0D 28 0D - - jr z, prgm_to_usermem.in_ram
|
||||
66 D0:EF0F AF - - - xor a,a
|
||||
67 D0:EF10 32 3E EF D0 ld (prgm_to_usermem.smc),a
|
||||
68 D0:EF14 11 09 00 00 ld de,9
|
||||
69 D0:EF18 19 - - - add hl,de
|
||||
70 D0:EF19 5E - - - ld e,(hl)
|
||||
71 D0:EF1A 19 - - - add hl,de
|
||||
72 D0:EF1B 23 - - - inc hl
|
||||
73 D0:EF1C - - - - prgm_to_usermem.in_ram: ; hl -> size bytes
|
||||
74 D0:EF1C CD 9C 1D 02 call _LoadDEInd_s
|
||||
75 D0:EF20 23 - - - inc hl
|
||||
76 D0:EF21 23 - - - inc hl ; bypass tExtTok, tAsm84CECmp
|
||||
77 D0:EF22 E5 - - - push hl
|
||||
78 D0:EF23 D5 - - - push de
|
||||
79 D0:EF24 EB - - - ex de,hl
|
||||
80 D0:EF25 CD 2C 07 02 call _ErrNotEnoughMem ; check and see if we have enough memory
|
||||
81 D0:EF29 E1 - - - pop hl
|
||||
82 D0:EF2A 22 8C 11 D0 ld (asm_prgm_size),hl ; store the size of the program
|
||||
83 D0:EF2E 11 81 A8 D1 ld de,userMem
|
||||
84 D0:EF32 D5 - - - push de
|
||||
85 D0:EF33 CD 14 05 02 call _InsertMem; insert memory into usermem
|
||||
86 D0:EF37 D1 - - - pop de
|
||||
87 D0:EF38 E1 - - - pop hl ; hl -> start of program
|
||||
88 D0:EF39 ED 4B 8C 11
|
||||
D0 - - - ld bc,(asm_prgm_size) ; load size of current program
|
||||
89 D1:B5E0 - - - - prgm_to_usermem.smc equ $
|
||||
90 D1:B5E0 09 - - - add hl,bc ; if not in ram smc it so it doesn't execute
|
||||
91 D1:B5E1 ED B0 - - ldir ; copy the program to userMem
|
||||
92 D1:B5E3 C9 - - - ret
|
||||
93 D1:B5E4 - - - - prgm_to_usermem_end:
|
||||
94 D1:B5E4 - - - -
|
||||
95 D1:B5E4 - - - - prgmmov_end:
|
||||
96 D1:B5E4 - - - -
|
||||
97 D1:B5E4 - - - - ;.org prgmmov_start+prgmmov_end-prgmmov
|
||||
89 D0:EF3E - - - - prgm_to_usermem.smc equ $
|
||||
90 D0:EF3E 09 - - - add hl,bc ; if not in ram smc it so it doesn't execute
|
||||
91 D0:EF3F ED B0 - - ldir ; copy the program to userMem
|
||||
92 D0:EF41 C9 - - - ret
|
||||
93 D0:EF42 - - - - prgm_to_usermem_end:
|
||||
94 D0:EF42 - - - -
|
||||
95 D0:EF42 - - - - prgmmov_end:
|
||||
96 D0:EF42 - - - -
|
||||
97 D0:EF42 - - - - .org prgmmov_start+prgmmov_end-prgmmov
|
||||
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:B5E4 - - - - #include "includes/lib/crypto/crypto.inc"
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
#define prgmloadersize prgmloaderend - prgmloader
|
||||
#define prgmunloadersize prgmunloaderend - prgmunloader
|
||||
#define prgm_to_usermem_size prgm_to_usermem - prgm_to_usermem_end
|
||||
#define prgm_to_usermem_size prgm_to_usermem_end - prgm_to_usermem
|
||||
prgmloaderloc equ SafeSScreen
|
||||
prgmunloaderloc equ SafeSScreen + prgmloadersize
|
||||
prgm_to_usermem_loc equ SafeSScreen + prgmloadersize + prgmunloadersize
|
||||
|
|
@ -17,15 +17,15 @@ prgmasm:
|
|||
jp prgmloaderloc
|
||||
|
||||
prgminstallload:
|
||||
ld hl, prgmloader
|
||||
ld hl, prgmmov_start
|
||||
ld de, prgmloaderloc
|
||||
ld bc, prgmloadersize
|
||||
ldir
|
||||
ld hl, prgmunloader
|
||||
ld hl, prgmmov_start + prgmloadersize
|
||||
ld de, prgmunloaderloc
|
||||
ld bc, prgmunloadersize
|
||||
ldir
|
||||
ld hl, prgm_to_usermem
|
||||
ld hl, prgmmov_start + prgmloadersize + prgmunloadersize
|
||||
ld de, prgm_to_usermem_loc
|
||||
ld bc, prgm_to_usermem_size
|
||||
ldir
|
||||
|
|
@ -35,13 +35,13 @@ prgminstallload:
|
|||
|
||||
prgmmov_start:
|
||||
|
||||
;.org SafeSScreen
|
||||
.org SafeSScreen
|
||||
|
||||
prgmmov:
|
||||
|
||||
prgmloader:
|
||||
call prgm_to_usermem_loc
|
||||
ld hl, prgmunloaderloc
|
||||
call prgm_to_usermem
|
||||
ld hl, prgmunloader
|
||||
push hl
|
||||
set appAutoScroll,(iy + appflags)
|
||||
jp userMem
|
||||
|
|
@ -51,7 +51,7 @@ prgmunloader:
|
|||
ld hl, Fsh
|
||||
ld de, OP1
|
||||
call strcpy
|
||||
call prgm_to_usermem_loc
|
||||
call prgm_to_usermem
|
||||
call _RunIndicOff
|
||||
jp Fin
|
||||
prgmunloaderend:
|
||||
|
|
@ -94,4 +94,4 @@ prgm_to_usermem_end:
|
|||
|
||||
prgmmov_end:
|
||||
|
||||
;.org prgmmov_start+prgmmov_end-prgmmov
|
||||
.org prgmmov_start+prgmmov_end-prgmmov
|
||||
|
|
|
|||
Loading…
Reference in New Issue