Skip to content

Commit

Permalink
Implement proper string/file execution routines and argc/argv handlin…
Browse files Browse the repository at this point in the history
…g, make all processes their own threads but "halt" the caller
  • Loading branch information
beckadamtheinventor committed Mar 16, 2024
1 parent 8613f48 commit a9478ee
Show file tree
Hide file tree
Showing 32 changed files with 1,107 additions and 577 deletions.
6 changes: 6 additions & 0 deletions bos.inc
Original file line number Diff line number Diff line change
Expand Up @@ -496,6 +496,11 @@ namespace bos
?util_RemoveFromSymList := $226C8
?util_SearchSymList := $226CC
?util_FreeSymList := $226D0
?sys_Exec := $226D4
?sys_ExecV := $226D8
?sys_ExecData := $226DC
?sys_ExecBegin := $226E0
?sys_ExecContinue := $226E4
; end of jump table
;-------------------------------------------------------------------------------
; OS memory areas and misc defines
Expand Down Expand Up @@ -549,6 +554,7 @@ namespace bos
?saved_LcdUpbase := ti.appData+60 ; 3 bytes, saves LcdUpbase during sector caching
?text_flags := ti.appData+63 ; 1 byte. Instructs the OS character printing routines
?gfx_routine_temp := ti.appData+64 ; 16 bytes, temp location for graphics routines
?LastExitCode := ti.appData+80 ; 4 bytes, stores the exit code of the last program that finished executing
?ScrapByte := ti.flashByte
?ScrapWord := ti.scrapMem
?ScrapMem := ti.scrapMem
Expand Down
10 changes: 10 additions & 0 deletions bos.src
Original file line number Diff line number Diff line change
Expand Up @@ -178,6 +178,11 @@
public _util_RemoveFromSymList
public _util_SearchSymList
public _util_FreeSymList
public _sys_Exec
public _sys_ExecV
public _sys_ExecData
public _sys_ExecBegin
public _sys_ExecContinue
_boot_os := $20108
_handle_interrupt := $2010C
_HandleInstruction := $20110
Expand Down Expand Up @@ -356,6 +361,11 @@ _util_AppendSymList := $226C4
_util_RemoveFromSymList := $226C8
_util_SearchSymList := $226CC
_util_FreeSymList := $226D0
_sys_Exec := $226D4
_sys_ExecV := $226D8
_sys_ExecData := $226DC
_sys_ExecBegin := $226E0
_sys_ExecContinue := $226E4

public ram_executable
public ram_executable_at
Expand Down
4 changes: 2 additions & 2 deletions src/compatibility/_Str.asm
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,12 @@ _StrCmpre:
_StrLength:
push af,hl
xor a,a
sbc hl,hl
ld c,a
mlt bc
cpir
scf
sbc hl,hl
sbc hl,bc
dec hl
ex (sp),hl
pop bc,af
ret
Expand Down
Loading

0 comments on commit a9478ee

Please sign in to comment.