/ 03-10-2021






AppleWin (also known as Apple //e Emulator for Windows) is an open source 

software emulator for running Apple II programs in Microsoft Windows. 

It support most programs that could run either on the Apple II+ or the Apple IIe. 

For its other capabilities, please check this reference.


Most Recent Changes


  • [Change #972] Add SNES MAX card (in slots 3, 4 or 5) to support up to 2 SNES (or 12-button) controllers.

  • [Change #946] Add 4Play card (in slots 3, 4 or 5) to support up to 4 Atari controllers.

  • [Change #420] Uthernet card's state persisted to save-state.NB. it's best to get your DHCP server to assign a static IP for the card's MAC address.

  • Change: SAM card's state persisted to save-state.

  • [Bug #980] Fix 'Authentic Disk Speed' regression (at

  • [Bug #981] Fix command line -d2 (and -h2) which weren't reporting an error if image couldn't be opened.

  • [Bug #981] Support command line if there are multiple spaces between args.

  • [PR #983] Improve save-state card managementUse Registry "Configuration\Slot n' locations to save each card's type & config.
    eg. "Last Harddisk Image 1" has moved from "Preferences" to "Configuration\Slot 7".

  • AppleWin's Debugger help: document how to allow CTRL+SHIFT+0 to work (to set bookmark-0).


  • [Change #975] Extend Configuration's Disk GUI to support a Disk II controller in slot 5.

  • [Change #977] Add per-slot configuration to the Registry (and conf.ini).eg. "Last Disk Image 1" has moved from "Preferences" to "Configuration\Slot 6".

  • [Change #976] AppleWin's help now documents Control-PrintScreen to copy the debugger's disassembly window to the clipboard.

  • [Change #960] Floppy image names are now stored in Registry (or conf.ini) with their full path.NB. Hard disk images were already stored with full path.
    NB. save-states still only store the filename (and use "[HDV] Starting Directory" or prompt user to find the file).


  • [Change #962] Remove the HookFilter.dll, and statically link instead.this removes the runtime dependency on VCRUNTIME140.dll (ie. vc_redist.x86.exe).

  • [Bug #965] Fix display flicker on exit.


  • [Change #947] Uthernet: fix so that a h/w change doesn't require the app to be close & reopened. [audetto]

  • [Change #876] Command line: change -fs-height so only applied during full-screen (Windows mode unaffected).

  • [Bug #958] Debugger: Mockingboard speech interrupt not working in debugger 'gg' mode.

  • [Bug #952] Fix Mockingboard SC-01 speech for Ape Escape.

  • Fix Phasor regression (at as it does support reading AY-3-8913 registers in Mockingboard mode & Phasor native mode (just not Echo+ mode).

  • Debugger: when displaying 6522 registers, if T1 and/or T2 is active, then display in white.


  • Improve Mockingboard's 6522 support for cycle-accurate reading of IFR at Timer1/2 underflow.

  • Improve logging of Speaker code.


Note: This version only works under Windows XP and later.

  • [Change #693] AppleWin built with VS2019 using v141_xp platform toolset

  • [Change #939] Improved support for SSI263 speech chip.Fix for 'Classic Adventure' (#929) not detecting speech chip.
    Support the 2-bit Duration b7:6 of phoneme register for SSI263 (not SC01).
    Support 2nd SSI263 at $Cn20 connected to 6522-A (at $Cn00).
    SC01: only support it mapped to 6522 at $Cn00.

  • [Change #936] Swap Joystick Buttons not workingCommand line (-swap-buttons) or GUI "Swap 0/1" now swaps buttons 0/1 for all devices.

  • [Change #930] WOZ support: add some random jitter in the bit streamA better alternative fix for WOZ images: 'Wasteland' and 'Legacy of the Ancients'.
    Fix for WOZ images: 'Gruds in Space' (bug #921) and 'Buzzard Bait' (bug #930).

  • [Change #912] For 'Base 64A' add support for its F2 key via the Windows DEL key.

  • [Change #876] Starting up windowed mode & fullscreen modeNew command line switch -no-full-screen to start in windowed mode.
    Added command line switch -full-screen as an alias for -f.

  • [Change #864] Anti-M 1.8 doesn't workImproved Disk II card's data latch value when: (a) drive disconnected or (b) connected, but empty.
    New command line switches -d1-disconnected and -d2-disconnected to disconnect drives from slot-6 card.

  • [Bug #934] Characters doubled in BASIC.SYSTEM when using -speech switch.Trap calls to COUT1 and BASICOUT (instead of COUT).

  • [Bug #827] Fix bug where NSC is recognised on Apple II/II+ when slot-3 is empty.Support NSC on 6502-based Apple II's via F8-ROM for ProDOS 2.5 compatibility.

  • [Bug #770] Fix so that no AY changes get dropped.Support reading the AY-3-8913 registers (not Phasor though).

  • [Bug #652, #833] Fixes for Mockingboard's 6522 VIA.Cycle-accurate TIMER1/2 r/w for all addressing modes.
    Support TIMER1 latch in one-shot mode.
    Improve 6522 reset support - only ACR,IFR,IER affected.

  • [PR #891] Fix for "Unable to capture PrintScreen key" warning on startup.Adds a "Don't show this message again" checkbox to the message.

  • Debugger: add red 'IRQ' after the v/h-pos when IRQ is being asserted to the 6502.

  • Debugger: improve mini-memory views for 6522 & AY8913 chip registers.

  • Much refactoring to the code by Andrea Odetti / @audetto.


  • [Bug #851] RGB support: AppleColor card (-rgb-card-type apple) is now an alias for Video7's RGB-SL7 card (-rgb-card-type sl7).

  • [Bug #850] RGB support: removed the preconditions for AN3 setting the RGB video mode flags.IOUDIS soft-switch is for //c only, so removed support for //e.


  • [Change #764] Fully support the RGB cards, and introduce a new 'Color (RGB Card/Monitor)' dedicated video mode.[PR #837] Support for 'Le Chat Mauve' Eve and Féline RGB cards.
    [PR #826] Support for Video7's SL7 RGB card.
    New command line switch to select RGB card type: -rgb-card-type: apple (default), sl7, eve, feline
    New command line switches for SL7: -rgb-card-foreground & -rgb-card-background
    NB. The previous 'Color (RGB Monitor)' has now been renamed to 'Color (Composite Idealized)'.

  • [Change #817] Request for key-accelerators for UI operations.Ctrl+F3/F4 will show the Drive-1/Drive-2 pop-up menus. (Then use cursor up/down to pick a menu item.)

  • [Change #691] Improved determining path & filename when saving/loading a save-state.

  • [Bug #838] Improved support for accented ANSI chars in pathnames in save-states.

  • [Bug #612] Support IRQ cycle-accuracy in full-speed (unthrottled) mode.

  • [Bug #608] Fixed regression in Broadsides' Mockingboard detection (introduced at

  • Extended support for command line switches -d1,-d2,-s5d1,-s5d2,-h1,-h2 such that if the param is "", then it will eject/unplug the disk/harddisk.

  • Development PRs to improve code quality: #840, #842, #843, #847


  • [Change #822] Updated Uthernet card support to use Npcap for Win10.

  • [Change #806] Added support for 'Base 64A' - a Taiwanese Apple II clone.

  • [Change #763] Support for PAL(50Hz) killing color-burst during TEXT video mode.When 50Hz, then AppleWin's window title changes to "Color (PAL Monitor)" instead of "Color (NTSC Monitor)"

  • [Change #781] Loading a large save-state takes some time - added a busy indicator.

  • [Change #139] NIB disk image: added warning if any track's first D5-nibble triple isn't an address prologue.

  • [Bug #824] Fixed a regression in multi-zip support (introduced at

  • [Bug #820] Fixed a GDI Object leak (occurring when accessing the Disk II with AppleWin minimised).

  • [Bug #813] Mockingboard playback looping after entering debugger then configuration.

  • [Bug #809] Fixed a memory leak.

  • [Bug #801] Wrong timing with LSR abs,X / ROR abs,X / ROL abs,X for the 6502 CPU.

  • [Bug #796] Fix for 'IRQ occurring on last cycle of opcode' not always true.

  • [Bug #751] No-Slot Clock running and power-cycle can causes lock-up on power-cycle.NSC state persisted to save-state.
    added a new switch '-no-nsc' to configure Apple II without an NSC.

  • [Bug #663, #691] Fixes for image loading switches (-d1,-d2,-h1,-h2,-s5d1,-s5d2):support relative paths (#663).
    updated the current directory with the path for each loaded image (#663) & when saving state (#691).
    added a new switch '-current-dir <path>' to guarantee the current dir after using image loading switches.

  • [Bug #52] Fixed the 6502/65C02 false-read of 6522 issue for Willy Byte!

  • [PR #800] Improved debugger's rendering speed for PrintGlyph().


  • [Bug #790] Fixed regression for -d1,-d2 & -s7-empty-on-exit (introduced at

  • [Change #787] Debugger: Extended 'cycles part' command to do timings relative to a user-specified base.

  • [Change #783] Debugger: Extended 'tf' command to include cycle count.

  • [Change #720] Debugger: Added more symbols to APPLE2E.SYM.NB. LC ($C08n) symbols are now correct for the LC, so 'LDA $C08C,X' will disassemble as 'LDA LCRAMIN1_,X' instead of 'LDA DATASTROBE,X'. But now perhaps less helpful when stepping Disk II code.

  • [PR #785] Debugger: Improvements to Bookmarks.AppleWin.chm: Added debugger help about Bookmarks.


  • [PR #757] Allow use of an INI-file for configuration instead of the Registry (fixes #709).new command line switch: -conf <INI-file>

  • [Change #773] Added Apple II J-Plus support.

  • [Bug #778] Fixed for when Joystick(s) are disabled.

  • [Bug #777] Fixed Phasor speech (SSI263) to match Mockingboard (when in Mockingboard mode).fixes: #698 (Rescue Raiders), #753 (Bejeweled).
    also improvements to Phasor card's native Phasor mode.

  • [PR #775] Debugger: Fixed so that hitting "=" in the debugger sets PC to the current cursor address.


  • [Bug #771] Added new command line switch to load custom ROM: -rom .Supports 12KiB (at $D000) and 16KiB (at $C000) rom files.

  • [Bug #765] Lancaster (Total Replay) hangs when starting second game.

  • [Bug #734] DiskII controller card: support 13-sector firmware.The card auto-selects the firmware based on the .woz (v2 or higher) image properties.
    Only change the firmware at reset/reboot to avoid changing whilst running in $C6xx space!
    Fixes 'The Best of MUSE' & 'MicroChess 2.0' (#732)


  • [PR #756] Write support for WOZ1/WOZ2 images.Fixes titles that need write support (see: #686, #704, #705).
    Allow creation of a blank (WOZ2) image (see AppleWin.chm: 'Creating Disk Images').

    multi-file zip support extended to scan for the first valid image.useful for most woz-a-day multi-file zips which have at least 2 entries and previously needed unzipping.

  • NB. files in multi-file zips are still write-protected (same 


  • [Bug #750] Fixed double-clicking a registered file-type issue (regression introduced at

  • [Bug #752] Fixed Ctrl+Alt+Break wasn't emulating CTRL+OA+RESET (regression introduced at


  • [Bug #749] Hotkeys to change emulation speed using Ctrl+n: now ignored if ALT is pressed.

  • [Bug #748] DiskII: data latch returns a rand() value when no disk is in drive.

  • [Bug #746] Debugger: correctly repaint Apple II screen when showing it from debugger.

  • [Bug #745] WOZ: Support for large tracks.

  • [Bug #743] Added new command line switches:-left-alt-control-buttons : left-ctrl=button0, left-alt=button1
    -right-alt-control-buttons : right-alt=button0, right-ctrl=button1
    -swap-buttons : for swapping buttons 0 & 1

  • [Bug #733] Alternate fix for WOZ 'Wasteland'.

  • [PR #723] Fixed way to clear a std::string.

  • Configuration->Input: Added 'Swap 0/1' toggle for swapping buttons 0 & 1.

  • WOZ support: Removed version check on INFO section.

  • Display MessageBox with all unsupported commands that were passed in (can choose to continue or exit).

  • Debugger: Added new 'cycles <abs|rel>' command to show cycles as absolute or relative.


  • [Change #726] Disk II card: supported in slot 5 via '-s5 diskii' command line.use in conjunction with -s5d1 <pathname>.
    NB. No support via Configuration GUI for insert/ejecting images.

  • [Change #737] Debugger: Changed 'cycles' to show the cycle delta since the step/breakpoint etc.NB. Since this has been the absolute cumulative cycle count.

  • [Bug #740] Debugger: gr/hgr/dgr/dhgr commands will honour the state of the MIXED mode.

  • [Bug #733] Fixed WOZ 'Wasteland' and also NIB 'Wasteland'.

  • [Bug #451] Debugger: fix for BPM[R|W] triggering on control-flow instructions' target address.

  • [Bug #355] For first-time installs of AppleWin, soundtype now defaults to WAVE (was NONE).

  • [PR #730] Speed-up for 'Color (RGB Monitor)' video mode.


  • [Bug #724] Fixed so that 6502 interrupt is delayed by 1 opcode when interrupt occurs on last cycle of opcode.fixes French Touch's "Mad Effect" & "Mad Effect #2" demos.

  • [Bug #711] Fixed Mockingboard initial "stretched" music playback (regression introduced at

  • [Bug #707] Fixed ADTPro (running under AppleWin) not working with real COM ports.

  • [Bug #701] Fixed 6522's TIMER being out-of-sync with 6502.

  • [Bug #699] Fixed French Touch's "Mad Effect". See #656, #701, #724.

  • [Bug #680] Fixed video tearing (eg. for FT's "Scroll Scroll Scroll" & "Mad Effect #2").

  • [Bug #659] Fix for Applied Engineering's Phasor song player (noisy playback) (regression introduced at

  • [Bug #656] Changed so only TEXT ($C050/1) and MIXED ($C052/3) have a 1 cycle delay (extension to French Touch's "Mad Effect" demo.
    fixes Deater's "Cycle-count Megademo" (vertical GR grey line shouldn't be visible between GR & HGR video).

  • [Bug #652] Fixed 6522's TIMER to underflow at 0x0000 -> 0xFFFFand T1C=0x0000 now correctly underflows on next cycle.

  • [Bug #435] COM ports above COM9 weren't available from the UI.

  • [Change #716] Help's troubleshooting section: added an item for no Apple II speaker sound.

  • [PR #715] Memory fix for struct ImageInfo.

  • [PR #694] Debugger: Symbol loading: Fix random crash upon start up.

  • Fixed crash with debug command line switches: -m and -no-mb.


  • [Change #702] Debugger: In soft-switch display (row-80), show a red 'x' when AltZP (and AltLC) is enabled.

  • [Change #666] Debugger: When video-scanner position is off-screen then show v,h as yellow (was red).

  • [PR #710] Debugger: Added BPMR and BPMW to break on a read or write (respectively) to a memory address or range.


  • [Change #692] Added command line switch to unplug HDD controller card on exit:-s7-empty-on-exit

  • [Change #689] Added command line switches to set CPU speed and machine type:-clock-multiplier , where value is a [0.5-3.9] base-clock multiplier (ie. same as the Config UI's slider)
    -model <apple2|apple2p|apple2e|apple2ee>

  • [Change #666] Debugger: support showing video v,h and cycle count.added debugger command: videoinfo <dec|hex|apple|real> to configure display.
    added auto-run of DebuggerAutoRun.txt on AppleWin initial start-up.

  • [Bug #700] Fixed ProDOS8 2.5.0 alpha6:support INC $C08B (and similar) to set LC to write mode - 65C02 only.
    support INC $C08B,X (X=0) to set LC to write mode - 6502/65C02/816. (Fixes #404)

  • [Bug #695] Fixed WOZ 'Taipan' not booting.fixed reading write protect on a write access & support Sequencer Function.

  • [Bug #668] Fixed WOZ 'Seafox' not booting.set machine = Unenhanced Apple //e or lower & need slot2 empty.
    disable SSC in slot-2 using: '-s2 empty' command line switch.
    added '-s1 empty', '-s3 empty' and '-s6 empty' too.

  • [Bug #404] a2audit.dsk 1.06 now working. (See #700)

  • [Bug #319] SmartPort return address was wrong when crossing page (fix to slot-7 HDD's firmware).NB. Old save-states where the 6502's PC is in the old firmware now can't be loaded. (AppleWin will show an error)

  • [PR #687] Replace char * with std::string.


  • [Change #678] Hotkeys to change emulation speed:Ctrl-0 Toggles between custom speed and Full-Speed
    Ctrl-1 Sets 1 MHz
    Ctrl-3 Sets Full-Speed

  • [Change #671] Register .woz extension with AppleWin. Updated AppleWin.chm & DELREG.INF.

  • [Bug #685] Fixed support for French Touch's "CHIP" demo (Mockingboard / multi-TIMER interrupt support).

  • [Bug #677] Loading a save-state wasn't restoring the pending IRQ.

  • [Bug #672] For WOZ images: all even disk I/O read accesses will now read the data latch.

  • [Bug #650] NTSC TV (Color and B&W): image was half an Apple II scanline vertically shifted down.

  • [PR #674] Prevent uninitialized value bugs and improve string safety.


  • [Bug #662] Fixed WOZ 'Wizardry III' not booting.

  • [Bug #669] Fixed WOZ 'Space Quest I' not booting reliably.

  • [Bug #670] Fixed PAGE2 not displaying correctly when in full-speed mode.


  • [Change #544] Support for .woz disk images.WOZ1 and WOZ2 formats supported.

  • read-only: images forced to write-protected (so 'Stickybear Town Builder' doesn't work).
    only 5.25" (not 3.5").

  • known issues: 'Wizardry III' not booting.


  • [Change #648] Support 50Hz(PAL) video refresh rate and implicitly PAL 1.016MHz.NB. TV video modes still use NTSC rendering.

  • [Bug #656] Fix for PAGE1/2 ($C054/55) not having a 1 cycle delay.


  • [Bug #654] Fix for Sather's "Little Text Window" not rendering correctly.

  • [Bug #652] Fix for 6522 TIMER1's period to be N+2 cycles.