Foenijs: Difference between revisions
From F256 Foenix
Jump to navigationJump to search
(Created page with "[https://white-flame.com/foenijs/ Foenijs] is a web-based emulator, whose unique purpose is ease of use in demonstrating the platform, as well as being a full-featured emulator. == Current Status == === '''CPU''' === * 65c02 and 65816 fully implemented, cycle-accurate. * Powerful debugging features (no labels yet, though). * '''Turbo mode''' still emulates the entire machine, stopping to display a frame every 100ms. <code>mandel.bas</code> turbos to 70MHz on an AMD 79...") |
m (→CPU) |
||
| Line 3: | Line 3: | ||
== Current Status == | == Current Status == | ||
=== | === CPU === | ||
* 65c02 and 65816 fully implemented, cycle-accurate. | * 65c02 and 65816 fully implemented, cycle-accurate. | ||
| Line 14: | Line 14: | ||
* 65816 has access to flat RAM above bank 1. | * 65816 has access to flat RAM above bank 1. | ||
=== | === Video === | ||
All standard F256K/Jr video features implemented directly in GPU shaders. Nothing from 2x yet. | All standard F256K/Jr video features implemented directly in GPU shaders. Nothing from 2x yet. | ||
| Line 24: | Line 24: | ||
Still need to tackle this. Square waves from PSGs are the only thing implemented right now. | Still need to tackle this. Square waves from PSGs are the only thing implemented right now. | ||
=== | === Joysticks === | ||
* USB controllers for NES/SNES interface. | * USB controllers for NES/SNES interface. | ||
| Line 34: | Line 34: | ||
* K2 internal keyboard | * K2 internal keyboard | ||
=== | === SD Card === | ||
Only 1 slot currently. | Only 1 slot currently. | ||
Revision as of 17:43, 31 December 2025
Foenijs is a web-based emulator, whose unique purpose is ease of use in demonstrating the platform, as well as being a full-featured emulator.
Current Status
CPU
- 65c02 and 65816 fully implemented, cycle-accurate.
- Powerful debugging features (no labels yet, though).
- Turbo mode still emulates the entire machine, stopping to display a frame every 100ms.
mandel.basturbos to 70MHz on an AMD 7940HS mini PC under Firefox.
MMU
- 512kB 1x mode implemented for both CPUs.
- 65816 has access to flat RAM above bank 1.
Video
All standard F256K/Jr video features implemented directly in GPU shaders. Nothing from 2x yet.
- Rendering is per-rasterline, no mid-line changes will show.
- Only I/O changes can change mid-frame, in-RAM redefinitions won't show.
- Vertical scrolling mid-frame and such latches on real hardware aren't implemented; everything is draw independently on the fly and can be more dynamic than the real thing.
Audio
Still need to tackle this. Square waves from PSGs are the only thing implemented right now.
Joysticks
- USB controllers for NES/SNES interface.
- Atari joystick emulated with cursor keys and
ZXCfor 3 buttons.
Keyboards
- PS/2 interface
- K2 internal keyboard
SD Card
Only 1 slot currently.
- Create a blank card
- Download/upload full card image
- Download/upload/delete individual files
- Launch programs directly from directory browser.
TODO & Wishlist
[Any and all mundane or insane ideas welcome.]
K2 optical keyboard, maybe C64 keyboard
PS/2 Mouse support (mouse pointer works already)
6809
680x0
Core2x video stuff
Core2x memory mapping