Skip to content

xuodor/ttgo-vga32-spc1000

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

71 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TTGO VGA32 Bare-metal SPC-1000 emulator

What is this?

This repo provides the emulator for SPC-1000, 8-bit PC produced by Samsung back in 80s, running on TTGO VGA32.

spc-1000

How to Build

Use the following versions of build tools/configurations:

  • Arduino 1.8.18
  • fabgl 1.0.9
  • board: TTGO T7 V.14 Mini32

mem.c that contains the ROM image is generated as follows:

esp32-spc1000$ z80asm -o dos src/dos.asm
esp32-spc1000$ python gen_romc.py dos > src/mem.c

Follow this instrucables article for setting up the build environments.

Mods

Some enhancements were made to IOCS/Basic interpreter to run the emulator smoothly on the platform:

  • Added new disk-like operations for file access to cassette I/O:
    • DIR
    • DEL
    • LOAD needs a file to load. LOAD without one tries loading from the currently open file. It returns an error if no file is open.
    • SAVE

spc-1000

  • Accelerated I/O: IOCS routines for LOAD/SAVE was rewritten (PWM replaced with direct bit control) to speed up the access.

  • Dynamic configuration is possible via I/O ports. These settings persist across power cycle:

OUT &H800A, <0/1>: Toggles font face between MC6847/CGBUF (MC6847 by default)
OUT &h800B, <0/1>: Turns on/off vintage CRT effect (on by default)

Credits

About

TTGO VGA32 Bare-metal SPC-1000 emulator

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published