forked from rebecca/BSX
David Jolley
e03ceb1871
Uses pkg-config to source locations of libSDL. As commented in Makefile, *may* cause issues with builds on Mac, but there are known Mac-isms to make this work. Also needs the math library for round() as referenced by video.o This causes builds to start working on Ubuntu 24.04 with the default SDL2 libraries installed using apt. Arch is known to need pkg-config to use SDL libs too, but I'm not sitting at my arch machine at the moment, so no idea if this is complete for that platform. A meta-build system *may* be a good idea? |
||
---|---|---|
bsxmac.xcodeproj | ||
src | ||
.gitignore | ||
LICENSE | ||
Makefile | ||
README.org | ||
todo.org |
README.org
Bsx : Sentinel 65X System Emulator
(C)opyright 2024, Rebecca Buckingham.
License
- lib65816 code is licensed GPL3.
- VERA emulation is licensed 2-clause BSD.
- All other code is licensed GPL3.
Requirements
- SDL2 development libraries need to be installed.
Installation
- Run make, then copy the bsx executable whereever you want it.
Usage
- bsx path_to_rom_file
Status
What's done
- 65C816 emulation via lib65816.
-
Selected 65C265 features. (Can be disabled by undefining CPU65265 in opcodes.h.)
- 65C265 Vectors are implemented. (COP, ABORT, NMI, IRQ)
- Added some 65C265-specific IRQ sources and vectors: IRQT5, IRNE64.
- VERA emulation via code extracted from X16 emulator.
- Loading of selected BIOS ROM.
What's not done (i.e. TODO List)
- System timing. Emulation always runs flat out instead at stable 8 Mhz.
- Clean up dispatch loop in dispatch.c for easier maintenance.
- Keyboard emulation.
- Timer emulation. (Start with timer #5)
- SD Card emulation.
- Audio emulation.
- SNES controller emulation.