Files
libretro/bios/Oric/Oric/basic10.pch
Abdessamad Derraz 13c561888d v2: automated BIOS platform with full pipeline
Reorganized 6 branches into bios/Manufacturer/Console/.
Scrapers for RetroArch, Batocera, Recalbox, and libretro core-info.
Platform-aware verification replicating native logic per platform.
Pack generation with dedup, alias resolution, variant support.
CI/CD: weekly auto-scrape, auto-release, PR validation.
Large files (>50MB) stored as GitHub Release assets, auto-fetched at build time.
2026-03-17 10:54:39 +01:00

75 lines
2.0 KiB
Plaintext

;
; ROM patches file
;
; This file describes how to patch a ROM for things like turbotape,
; and filename decoding.
;
; ****** ROM INFORMATION ******
; This part isn't actual patches, just information about
; the hardware the ROM expects to be present.
; ROM expects a special keyboard layout?
keymap = qwerty
; ****** FILENAME DECODING *******
; When the PC is about to execute this address, we should be at a point
; in CLOAD/CSAVE/STORE/RECALL where the filename is valid in memory.
fd_cload_getname_pc = $e4af
fd_csave_getname_pc = $e7ef
;fd_store_getname_pc =
;fd_recall_getname_pc =
; The address to read the CLOAD filename
fd_getname_addr = $0035
; ****** TURBOTAPE ******
; Address of the "Cassette Sync" function in ROM
tt_getsync_pc = $e696
; Address of the RTS at the end of the cassette sync function (so we can
; skip the function)
tt_getsync_end_pc = $e6b9
; If turbotape is enabled, but no tape is inserted, the cassette sync
; function will be executed normally. Here we have an address inside the
; loop that waits for the cassette sync signal, so that we can break out
; of it if a tape is inserted.
tt_getsync_loop_pc = $e681
; Address of the "Read Byte" function in ROM
tt_readbyte_pc = $e630
; Address of the RTS at the end of the read byte function
tt_readbyte_end_pc = $e65b
; Set carry at end of readbyte routine?
tt_readbyte_setcarry = no
; In order to simulate the effects of the read byte routine, you can
; specify an address to write the byte read, and an address to write
; zero to.
tt_readbyte_storebyte_addr = $002f
;tt_readbyte_storezero_addr =
; Address of the "put byte" function in ROM
tt_putbyte_pc = $e5c6
; Address of the RTS at the end of the put byte function
tt_putbyte_end_pc = $e5f2
; Address of the RTS at the end of CSAVE
tt_csave_end_pc = $e7fe
; Address of the RTS at the end of STORE
;tt_store_end_pc =
; Address of the function that writes the tape leader
; (so we can write a shorter one)
tt_writeleader_pc = $e6ba
tt_writeleader_end_pc = $e6c9