Update 1 - full speed & better sound.
What is this?
An emulator for the Fairchild Channel F, the first console to use programmable ROMs and a microprocessor.
The console was released in 1975, so don't expect much in the way of graphics, gameplay, or usability.
See Wikipedia for more info.
And what's that game running?
That's a homebrewed (i.e. - NOT original) game made by Blackbird and e5frog. You can find it here.
Any sound glitches are due to the emulator, not the game, by the way. (See below)
It pushes the capabilities of the console to its limits, so its quality is considerably higher than that of the other games for the console.
It's also anachronistic - the original Pac-Man wasn't released until 1980.
And how do I play other games?
In order to play other games, you first need the console's BIOS files and the ROM for the other game you want to play. (Having these is up to you and they cannot be shared)
By the way, a BIOS is needed since the "BIOS" included with the emulator is a homebrewed one which is only good enough for running a few games which don't use it much.
If you wish to copy the BIOS and ROM to the cart yourself - e.g. via cstore, they should be copied sequentially: BIOS SL31253 or SL90025 to location 0x0, BIOS SL31254 to location 0x400, and the cart to location 0x800. (Just like the Fairchild's own memory layout)
What are the controls?
In "1P" mode (default), the controls are:
- arrow keys = move
- Z = push
- S/F = rotate left/right
- E/D = push/pull
- left shift = hold to control player 2 instead of player 1
In "2P" mode, the controls are:
- arrow keys = move
- N + arrow keys = rotate/push/pull
- S/F/E/D = player 2 move
- left shift + S/F/E/D = player 2 rotate/push/pull
In both modes, additional controls are:
- X + left/down/up/right = press console key 1/2/3/4. (can also use the mouse)
- X + Z = switch between 1P/2P modes. (can also use the mouse; only affects the controls)
What's working well?
All functionality is working and most likely bug-free, so all original and homebrew games work well, including the carts with extra memory.
(Exception: no support for the homebrewed multicart, which is too large for pico8 anyway)
Thanks to some optimizations, games now usually run at full speed.
What's not working well?
Sound has occasional glitches (either due to pico8's sound limitations or my implementation).
Keys sometime need to be pressed for a few moments to work in some games. This might be due to the original console's controls being slow to press.
What's the point of this?
Proving that emulators for non-trivial systems are possible to do in pico-8.
And just for the fun of creating and/or playing an emulator!
I don't understand how this slipped by me back in May, but this is truly amazing. Your tool for "inserting" another cartridge via GPIO is an ingenious idea.
Post this on a website with a UI for uploading BIOS/games instead of having to use the console (host it on itch?) and post about it on the AtariAge forums if you haven't already, that's where the Channel F people (including e5frog) are hanging out.
I've seen this for a-while. Definitely beyond me. Can someone please explain to me the importance of GPIO, what it does in your own words, and why it's useful in carts ?
I've been doing a little reading up on it myself and although the documentation I found shows HOW to use it, it does not explain WHY it should be used outside of any other memory location like the very useful and valid 256-byte Cartridge Data cartdata().
[Please log in to post a comment]