Skip to content

HoneyCrisp v1.3.4

Latest

Choose a tag to compare

@landonjsmith landonjsmith released this 27 Jun 13:45
fd15511

HoneyCrisp v1.3.4

Released on June 27th, 2026 @ 8:45 AM, CST

This release introduces CFFA1 CompactFlash device emulation, a new fullscreen rendering engine, a full BCD/decimal mode implementation (finally), a new catalog program, and various bug fixes. :-)


What's New

CFFA1 CompactFlash Interface:
The emulator now includes a full CFFA1 emulation layer, mapping the CFFA1 ROM to $9000–$AFFF and an ATA register interface to $8700–$8EFF. A new CompactFlash Image Loader panel sits alongside the Tape File Loader in the control panel, allowing ProDOS .po disk images to be mounted and ejected at any time. Mounted disks survive system resets. Type 9000R from WOZMON to launch the CFFA1 menu. You can also drag and drop a .po file directly onto the terminal. A download link to the "ULTIMATE APPLE-1" ProDOS disk image is included for user convenience. The emulation layer allows all types of read/write operations to be performed under the condition that a ProDOS diskette image has been inserted, which allows for mass storage of many data types. If a read/write operation is attempted while a diskette is NOT mounted, then a I/O error with code $27 will occur.
For more information, check out this PDF: CFFA 1 Manual, v1.1

Improved Fullscreen Mode:
The older CSS-only fullscreen implementation has been replaced with a JavaScript-driven layout engine (applyFullscreenLayout). Font size is now dynamically calculated to fill the screen as precisely as possible, and the layout correctly handles orientation changes and window resize events while in fullscreen. The terminal's parent element is used as the fullscreen target rather than the terminal itself, fixing display issues in several browsers. Cross-browser fullscreen change events (webkitfullscreenchange, mozfullscreenchange, MSFullscreenChange) are now all handled.

Full Decimal Mode (BCD) Implementation:
ADC and SBC in decimal mode have been rewritten with dedicated ADC_BCD and SBC_BCD methods that accurately implement NMOS 6502 BCD behavior, including correct nibble-level adjustments, carry, zero, and negative flag handling. Previously, decimal mode was not implemented at all. This basically means that decimal mode now fully works for the very few APPLE-1 programs that actually use it. ( Looking at you, Uncle Bernie's CODEBREAKER... .-. )

Ctrl+D Support:
Matching the original APPLE-1 hardware, Ctrl+D now injects $84 into the keyboard buffer.
This key combination is primarily used to terminate the AUTO function within Integer BASIC.

Terminal Rendering: Consecutive Underscores:
The terminal renderer now uses innerHTML instead of textContent, applying a small letter-spacing correction to consecutive underscore characters (_) for more accurate Apple-1 character display.
(In which the APPLE-1 had slight spacing in between consecutive underscore characters...)

Patched a boot race condition:
The boot sequence now uses a retry loop (safeLoadACIROM) to wait for loadACIROM to be defined before proceeding, fixing a race condition where the ACI script could be called before it had loaded.

POST: Decimal Mode Test Added:
The Power-On Self Test now includes a dedicated BCD/decimal mode test covering the fully implemented ADC and SBC cases.

Program Catalog Addition:

  • Timer (originally by Landon Smith)

Adjusted some minor UI/UX elements:

  • A few HTML elements have been modified for a cleaner and more streamlined experience. :-)

Updates to The HoneyCrisp Emulator Repository:

  • I've removed HoneyCrisp Emulator v1.0 and v1.1 to keep things tidy. They are also very outdated at this point, and probably should not be used. They have been backed up to a private archive until further notice.

That's just about it for this update!