!

[c64] C64E (Commodore C64 Emulator) 0.8.1.0 Alpha 05/06/2026

[14] @ !!! Sobota, 6 Czerwca 2026 01:00 CET [29-03-2026 00:52 CET]

C64E to nowy projekt emulatora "ziemniaczka" autorstwa  Christopher Broscharda. Napisany w C++, powoli i metodycznie obrasta w piórka i jest to na tyle młody projekt, że można go śledzić od totalnej podstawki;). 

Commodore C64 Emulator  0.8.1.0 Alpha 05/06/2026

Highlights

  • Improved C64 cold/warm reset handling
  • Fixed IEC drive detection issues after cold reset and disk changes
  • Improved 1541 and 1571 reset synchronization
  • 1581 drive now loads .d81 images correctly and blank .d81 disk creation works
  • Continued VIC-II timing work toward more cycle/pixel accuracy
  • Continued cartridge infrastructure cleanup
  • Added early groundwork for IDE64 cartridge support
  • Improved ML monitor command handling and help routing

C64 Core

Reset / Startup

  • Improved reset controller behavior for cold and warm resets.
  • Improved system state restoration during reset.
  • Fixed an issue where changing an inserted disk after cold reset could cause the first disk access to fail with DEVICE NOT PRESENT.
  • Improved synchronization between the C64 IEC bus state and attached drives during reset.
  • Cleaned up reset flow so devices are restored into a more predictable state.

VIC-II / Video

  • Continued groundwork for moving the VIC-II toward more cycle-accurate and pixel-based behavior.
  • Improved internal timing structure around raster/cycle progression.
  • Continued work around:
    • raster timing
    • badline behavior
    • DMA timing
    • register latching
    • sprite rendering behavior
    • display enable timing
  • Added more structure for future VIC-II accuracy improvements.

IEC / Disk Drive Handling

General IEC

  • Improved IEC bus/device resynchronization after reset.
  • Fixed first-access drive detection problems after disk changes.
  • Improved reset-time IEC line propagation into drive-side VIA/CIA state.
  • Reduced cases where drives could briefly appear unavailable immediately after reset.

1541

  • Improved reset synchronization with the IEC bus.
  • Fixed an issue where the 1541 could report DEVICE NOT PRESENT on the first access after changing disks following a cold reset.
  • Improved VIA IEC input line restoration during reset.

1571

  • Applied similar reset synchronization improvements as the 1541.
  • Improved IEC state restoration after reset.
  • Fixed first-access detection issues after changing disks.
  • Continued work toward more accurate 1571 ROM-driven behavior.

1581

  • Improved disk activity LED behavior.
  • Investigated and refined cases where the LED turned off too quickly during loads.
  • Improved activity tracking so the LED is not dependent only on track/sector changes.
  • Better handles directory loads and repeated reads where the track/sector may not visibly change.
  • Continued tuning toward more realistic 1581 activity timing.

Cartridge Support

  • Continued cleanup of cartridge infrastructure and cartridge type handling.
  • Added early groundwork for IDE64 cartridge support.
  • Reviewed remaining IDE64 implementation requirements before modeling it as a full device.
  • Continued work on mapper/system integration paths.
  • Improved cartridge-related organization for future expansion.

ML Monitor / Debugger

  • Improved monitor command handling.
  • Fixed help <command> behavior so command-specific help can be displayed instead of always printing the full command list.
  • Improved command routing structure for future monitor expansion.
  • Continued cleanup of monitor command formatting and consistency.

Developer / Debugging Improvements

  • Improved traceability of reset and device state issues.
  • Improved ability to diagnose IEC bus state during reset.
  • Added cleaner paths for monitor-driven debugging.
  • Continued cleanup of helper formatting and command output.
  • Improved emulator state visibility during drive and reset testing.

Bug Fixes

  • Fixed IEC device presence issue after cold reset and disk swap.
  • Fixed 1541 first-access failure after changing disks.
  • Fixed 1571 first-access failure after changing disks.
  • Fixed monitor help <command> routing.
  • Improved 1581 LED behavior where the activity light shut off too soon during loading.
  • Reduced reset-state inconsistencies between C64, IEC bus, and attached drives.

Known Issues / Work in Progress

  • IDE64 support is still early and not yet a complete emulated device.
  • VIC-II pixel/cycle accuracy work is ongoing.
  • 1571 behavior is still being refined, especially around ROM-driven operation.
  • 1581 activity LED timing may still need additional tuning.
  • Cartridge mapper support continues to be expanded and validated.
  • ML monitor assembler/disassembler support is still under development.

 

Commodore C64 Emulator 0.8.0.0 Alpha 23/05/2026

The biggest focus areas are VIC-II timing, CPU/VIC bus behavior, monitor/debug tooling, drive-chip refactoring, cartridge support, SID diagnostics, REU support, and media-handling improvements. This release may not look dramatically different on the surface, but it contains important groundwork for more accurate C64, cartridge, and disk-drive emulation going forward.

Najważniejsze zmiany:

 

  • Continued VIC-II timing, raster, sprite, and bus arbitration improvements
  • Improved CPU / 6510 diagnostics and micro-op work
  • Expanded ML monitor and debug tooling
  • Added monitor output capture to file
  • Continued 1541 / 1571 VIA refactoring work
  • Improved IEC / drive diagnostics
  • Expanded EasyFlash and cartridge handling
  • Improved SID model, clock, and audio diagnostics
  • Expanded REU support and monitor commands
  • Improved disk image and media handling
  • Continued UI cleanup and emulator architecture refactoring

Link more & deeper.

 

Commodore 64 Emulator v0.7.9.9 alpha 8/05/2026

Primarily an accuracy and stability release. The biggest improvements are in VIC-II timing groundwork, SID register/audio correctness, chip model selection, and safer PRG/cartridge transition behavior. These changes move the emulator closer to real C64 hardware behavior while also improving the debug tooling needed to keep refining compatibility.

  • Continued VIC-II hardware accuracy improvements across raster timing, badline behavior, bus arbitration, border handling, and pixel-phase rendering.
  • Improved SID emulation accuracy, including better register handling, filter routing, OSC3/ENV3 reads, audio underrun behavior, and 6581/8580 model selection.
  • Added/expanded SID chip model selection so the emulator can switch between MOS 6581 and MOS 8580 behavior.
  • Fixed PRG loading flow so loading a PRG performs a cleaner machine reset path, including cold reset behavior and cartridge detach handling.
  • Improved emulator stability and diagnostics around display, audio, CPU, and media loading behavior.

Commodore 64 Emulator v0.7.9.5 alpha 26/04/2026

This update focuses on VIC-II rendering performance, smoother horizontal scrolling, improved raster-latched render behavior, and continued drive/media/UI work.

v0.7.9.7-alpha improves VIC-II rendering performance and stabilizes raster-latched rendering behavior. Pac-Man and Ms. Pac-Man now run without the previous audible slowdown, horizontal scrolling is smoother, and Spy Hunter’s lower-screen corruption has been fixed through improved render-register latching.

Drive emulation and media/UI work also continued, especially around 1571 native mode, D71 geometry/BAM behavior, 1581 IEC debugging, and disk image management.

Changes

VIC-II Rendering Performance

Improved the scanline rendering path to reduce per-raster overhead.

Changes include:

  • Optimized border mask generation.
  • Optimized raster line emission by writing the final raster color buffer directly.
  • Removed unnecessary background-opacity copying for the current raster.
  • Reduced renderer overhead enough to resolve audible slowdown in Pac-Man and Ms. Pac-Man.

Horizontal Scrolling Improvements

Improved horizontal scroll stability by making completed raster rendering use more consistent latched raster state.

Changes include:

  • Background geometry now uses per-raster border/window latches.
  • Text, bitmap, multicolor bitmap, and ECM render paths now use latched horizontal bounds.
  • Background render paths now use latched character/bitmap/screen base state where appropriate.
  • Multicolor text mode selection now follows latched D016 state during rendering.

This improved side scrolling in games such as Pac-Man and reduced visual jerkiness caused by mixing live register state with latched scanline state.

Raster Register Latching Cleanup

Improved the VIC-II render latch model.

Render-facing D011, D016, and D018 state is now latched at raster start instead of being retroactively changed by late register writes during the same raster.

This fixed a long-standing bottom-screen corruption issue in Spy Hunter, where late D011 writes near the bottom of the screen were affecting how the completed scanline was rendered.

Spy Hunter Bottom Screen Fix

Investigated and fixed the corrupted lower display area in Spy Hunter.

The issue was traced to late D011 writes around raster 241/242 that changed RSEL and Y-scroll timing near the bottom of the screen. The final fix was to stabilize per-raster render latches instead of bypassing the border or forcing display rows through the border mask.

Monitor / Debug Consistency

Cleaned up how VIC state is represented in monitor/debug output.

Current behavior:

  • Raw register dumps continue to show live register values.
  • Decoded render base addresses use latched raster state.
  • Cycle/debug views continue to use effective/current timing state.

This keeps the monitor useful for both live register inspection and render-state debugging.

Sprite / DMA Timing Preservation

No final changes were made to sprite DMA fetch timing, BA/AEC arbitration, or sprite pointer/data fetch sequencing.

Earlier bus-owner-table experiments were abandoned because they introduced regressions in Pac-Man / Ms. Pac-Man speed and sprite behavior. The final stable changes focus on rendering performance and render-latch consistency only.

Drive Emulation Work

Continued investigation and cleanup around Commodore drive emulation.

Recent areas of work include:

  • Continued 1571 native mode testing.
  • D71 geometry and BAM/block-count debugging.
  • 1581 IEC / device-present investigation.
  • VIA/CIA timer behavior review, including Timer 2 one-shot behavior.
  • Continued movement away from high-level IEC shortcuts toward ROM-driven IEC behavior.

Several behaviors were compared against VICE, especially around D71 loading, block counts, and 1571 native mode behavior.

Media / UI Work

Continued work on emulator media handling and UI organization.

Recent areas include:

  • Blank disk image creation planning.
  • D64/D71/D81 formatting behavior.
  • Drive-specific disk creation menu work.
  • Cartridge detach menu behavior.
  • Drive status and LED/menu improvements.

Known Remaining Issues

Bottom Text Scrollers

Games such as Pitfall and Ghostbusters still show slightly jerky bottom text scrolling.

Current theory:

  • The text renderer is now more consistent.
  • The remaining issue is likely related to D016 horizontal scroll write timing.
  • D016 may need targeted current-raster latch handling without disturbing D011/D018 behavior.

VIC-II Pixel Accuracy

The VIC-II is still primarily a cycle-timed scanline renderer rather than a full pixel/dot pipeline.

Known limitations:

  • Sprites are still prepared and composed mostly per raster line.
  • Sprite/background collision timing is still line-based.
  • Border behavior is improved but not yet modeled as true pixel-time flip-flops.
  • Some mid-line raster effects remain approximate.

1581 IEC Timing

1581 emulation still needs additional work.

  • CIA/VIA IEC pin behavior.
  • Drive CPU timing.
  • ROM-driven IEC bus behavior.
  • Correct ATN/DATA/CLK interaction.
  • Device-present / startup handshake behavior.

Commodore 64 Emulator v0.7.9.5 alpha 12/04/2026

This release focuses on improving the hardware accuracy of the VIC-II emulation through a series of targeted fixes and cleanup work completed over the last two weeks. The main areas of improvement were bad-line handling, BA/AEC bus arbitration, display row progression, fetched-row ownership, open-bus behavior, raster timing cleanup, VIC state/save-load consistency, and joystick input handling through CIA1.

Highlights

VIC-II bad-line and display row improvements

  • Refined bad-line behavior and tightened the relationship between bad-line start, row fetch setup, and active display state.
  • Improved how display-row state is carried across lines to better match real VIC-II behavior.
  • Decoupled parts of bad-line fetch startup from broader display-enable behavior.
  • Cleaned up vmliBase handling so fetched row state remains more stable across display shutdown/opening transitions.
  • Added explicit bad-line matrix fetch progress tracking with vmliFetchIndex, making the internal row-fetch model closer to real hardware and easier to reason about.

BA/AEC bus arbitration improvements

  • Improved VIC-II bus arbitration behavior to better separate BA-low warning/ownership from true AEC-low CPU steal cycles.
  • Sprite pointer fetches no longer force full AEC steals, while real sprite data fetches still do.
  • Reduced overly aggressive bus-steal behavior that could cause performance/timing regressions in some games.

Fetched-row ownership and display sourcing

  • Continued moving the emulator toward a cleaner model where fetched row data owns active display output.
  • Improved consistency between bad-line fetched row data and the data consumed during active display.
  • Laid groundwork for stricter FIFO-backed row usage during active display rendering.

Open-bus behavior cleanup

  • Moved open-bus updates toward the actual fetch moment instead of later render-time usage.
  • Cleaned up bitmap, ECM, text, sprite, and bad-line fetch paths so open bus is updated when bytes are actually fetched.
  • Removed several duplicate render-time open-bus relatches that were less hardware-faithful.

Raster, IRQ, and latch timing cleanup

  • Continued refining raster/IRQ timing behavior and per-raster latch usage.
  • Improved handling of per-raster VIC register state and timing-sensitive behavior tied to those latches.
  • Kept the internal timing model more consistent across line start, decision phases, and fetch phases.

Save/load and internal state correctness

  • Expanded VIC save/load coverage to better preserve internal runtime state.
  • Added persistence and restoration for new VIC runtime fields like bad-line fetch progress.
  • Improved reset/frame-start cleanup so transient VIC row-fetch state does not leak across frames or states.
  • Added additional sanity/clamp handling for restored VIC runtime values.

Joystick input fixes

  • Fixed joystick handling for Joy1 and Joy2 through CIA1.
  • Improved controller input routing so joystick state is presented through the correct hardware path instead of behaving inconsistently at the emulator input layer.
  • Better matches real C64 joystick port behavior and improves compatibility with games that rely on correct CIA1-backed joystick input.

Practical impact

These changes improve compatibility and correctness across a range of timing-sensitive titles and test cases, especially in areas involving:

  • bad lines
  • display row progression
  • bus arbitration
  • sprite fetch interaction with CPU timing
  • open-bus-sensitive behavior
  • frame/row state stability
  • joystick handling through CIA1

Internal focus of this release

This was primarily a hardware-accuracy release, not a feature release. Most of the work went into making the VIC-II and related input behavior act more like the real hardware in edge cases rather than adding new user-facing functionality.

Commodore 64 Emulator v0.7.9-alpha

Commodore-C64-Emulator GUI

This alpha focuses on emulator-core accuracy, VIC-II improvements, expanded tracing/debugging, cartridge and mapper work, save/load fixes, and continued IEC/drive development.

Added

  • Expanded tracing detail categories across major subsystems
  • Added more targeted tracing for:
    • CPU
    • VIC
    • CIA
    • PLA
    • Memory and I/O
    • Cartridge / mapper behavior
  • Added improved cartridge-side tracing helpers for mapper, line, memory, and bank activity
  • Continued cartridge persistence support work for mappers that require saved EEPROM/flash-style state
  • Extended internal save-state coverage for more runtime state

Changed

  • Continued refinement of VIC-II emulation
  • Improved raster IRQ handling and related timing behavior
  • Refined display progression, badline-related handling, and raster-driven internal VIC state
  • Continued work on sprite DMA and bus arbitration behavior
  • Improved cartridge/memory interaction paths for mapper-controlled behavior
  • Continued development of IDE64 support, including controller/register groundwork and RTC-related work
  • Continued work toward more accurate IEC bus and disk-drive emulation
  • Improved monitor/debug workflows with more granular tracing controls

Fixed

  • Fixed multiple raster IRQ and VIC-related issues discovered during compatibility testing
  • Fixed save/load problems caused by stale or missing runtime state
  • Fixed issues affecting successful state restore in some scenarios
  • Fixed watch/monitor behavior regressions in debugging workflows
  • Corrected a VIC regression in display/counter progression logic that could break game rendering/loading behavior
  • Corrected issues introduced during register-write and tracing-related refactors

Improved

  • Better diagnostics for difficult game-specific issues
  • Better visibility into PLA mode changes and memory resolution
  • Better visibility into memory-mapped I/O behavior
  • Better mapper debugging for cartridge banking and control-line changes
  • Improved confidence when isolating regressions through internal tracing and testing
  • Mapper and cartridge work
    • Continued refinement of cartridge mapper support and behavior
    • Ongoing work across supported mapper types, including improvements around:
      • Ocean
      • Action Replay variants
      • Retro Replay
      • GMOD2
      • IDE64
    • Improved handling for mapper-controlled windows, bank behavior, and persistence-related state
  • Save state / load state
  • Expanded serialization coverage for runtime emulator state
  • Improved restoration of derived internal state after loading
  • Reduced load-state failures caused by unsaved transient data
  • Continued stabilization of chunk-based save-state behavior across subsystems

Commodore 64 Emulator v0.7.8-alpha

This release focuses on emulator usability and stability, especially around pause handling, monitor behavior, and window scaling.

What’s new

  • Added support for resizing and maximizing the emulator window
  • Improved screen scaling while preserving aspect ratio
  • Reworked pause handling across hotkeys, menus, dialogs, and monitor state
  • Improved monitor integration and pause/resume synchronization
  • Refined input and UI command routing
  • General internal cleanup and stability improvements

Fixes

  • Fixed Ctrl+Space pause toggle issues
  • Fixed Pause/Resume menu issues
  • Fixed monitor open/close pause-state problems
  • Fixed cases where the emulator could remain paused incorrectly
  • Fixed scaling and fit issues during resize/maximize
  • Fixed several regressions introduced by recent UI refactoring

Notes

  • This is still an alpha build, but it should feel much smoother and more consistent during normal use.

 

Vox populi

Ten artykuł nie byl jeszcze komentowany:(

Dodaj komentarz!!!!

Nick
Email
Www
Komentarz
 
wstecz06/06/2026 01:00
Inne treści związane z tematem
[c64] C64 Studio 8.4 7/06/2026 [c64] C64 Studio 8.4 7/06/2026
Oprócz CbmPrgStudio Commodore posiada jeszcze jedno fajne środowisko programistyczne - C64 Studio. W sumie oba narzędzie dają nam dostęp do podobnego zestawu ułatwień pozwalających na swobodne pisanie oprogramowania dla maszynek CBM. Od przybytku ponoć głowa nie boli;)
[c64] Emu64 5.2.0 04/06/2026 [c64] Emu64 5.2.0 04/06/2026
Pojawiła się nowa deweloperska wersja emulatora Commodore C64 tworzona przez Thorsten Kattanek. Zmiana strony projektu na GitHub (aż strach pomyśleć, co to będzie jak w końcu DDOS'y i inne hakierskie zakusy na ten serwis odniosą sukces i wszystkie dane gdzieś wyparują;))
[c264] Yape 1.3.0 21/05/2026 [c264] Yape 1.3.0 21/05/2026
Nowa wersja emulatora YAPE autorstwa Atilli Grósz, który pozwala odświeżyć tytuły z maszynek firmy Commodore C116, C+4, C16 - potocznie rodziny określanej skrótem C264.
[Multi] Denise 2.8 12/05/2026 [Multi] Denise 2.8 12/05/2026
Denise jest emulatorem "cycle exact" mikrokomputera Commodore C64, a od poprzedniej wersji również i Amigi:). Dokładne odwzorowanie pracy C64, przejrzysta konfiguracja powinna ucieszyć każdego, komu z nieznanych mi przyczyn nie odpowiada czy to Hox64, czy też WinVice. Czy dogoni WinUAE? Wątpie, przy zapale Toni Willena to prawie niemożliwe;).
[C64] CCS64 v4 04/05/2026 [C64] CCS64 v4 04/05/2026
Zaktualizowano jeden z najstarszych emulatorów komputera COMMODORE C64 - CCS64 (pierwsza wersja ukazała się w okolicy 1997 roku), z ciekawych funkcji emulator posiada możliwość gry poprzez sieć (kaillera), bardzo fajny moduł obsługi joystika, który podobnie jak nakładka dink'a na VICE pozwala na swobodne mappowanie emulowanej klawiatury C64, posiada możliwość rejestracji ...
Do ściągnięcia
W ramach wolnego czasu odtwarzam stare magazyny komputerowe i prowadzę serwis emulacyjny try2emu. Jeżeli uważasz, że moja publiczna działalność możesz postawić mi kawę, a kawę lubię;). Wspierając mnie, otrzymujesz w nagrodę dostęp do pełnych pdf'ów publikowanych magazynów - czyli dokładnie takich jakie spełniają zamierzenia tego projektu.
Postaw mi kawę na buycoffee.to
Dodatkowe informacje
Ostatnio dodane pliki

Retro T-shirt

Retro T-Shirt Sega Sonic 57,00zł - męski podkoszulek
Retro T-Shirt Robin of the wood II 76,85zł - męski podkoszulek
Newsy Linkownia Emulatory na PC Wideoteka Screenshoty Bajtek Reduks Ready.Run Kreator okładek na kasety Kreator kalendarzy Alpha

© Try2emu 1999 - 2026 | Krzysztof 'Faust' Karkosza Kontakt Polityka Prywatności OWU