Skip to content
This repository was archived by the owner on Sep 10, 2025. It is now read-only.

Commit f5f73b2

Browse files
committed
Added DirectScreenFunctions, which is used by Turbo Pascal
1 parent 3835ca7 commit f5f73b2

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

cpm/cpm.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -354,6 +354,11 @@ func New(logger *slog.Logger, prn string, condriver string, ccp string) (*CPM, e
354354
Handler: SysCallTime,
355355
Fake: true,
356356
}
357+
sys[113] = CPMHandler{ // used by Turbo Pascal
358+
Desc: "DirectScreenFunctions",
359+
Handler: SysCallDirectScreenFunctions,
360+
Fake: true,
361+
}
357362

358363
//
359364
// Create and populate our syscall table for the BIOS syscalls.

cpm/cpm_bdos.go

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1441,3 +1441,10 @@ func SysCallDriveReset(cpm *CPM) error {
14411441
func SysCallTime(cpm *CPM) error {
14421442
return nil
14431443
}
1444+
1445+
// SysCallDirectScreenFunctions receives a pointer in DE to a parameter block,
1446+
// which specifies which function to run. I've only seen this invoked in
1447+
// TurboPascal when choosing the "Execute" or "Run" options.
1448+
func SysCallDirectScreenFunctions(cpm *CPM) error {
1449+
return nil
1450+
}

0 commit comments

Comments
 (0)