==Latest==
* Fixed backspace in Apple-1
* Fixed pasting in Apple-1 (newlines are not correct)
* Separated AppleIIIVideo
* Implemented AppleIIIVideo font upload
* Refactorized AppleIIVideo inhibit control
* Implemented MM58167
* Added Tobias Eriksson cmake scripts
* Refactorized RS-232 interface
* Implemented MOS6551
* Redirected Apple III C02x to CFFF for slot C800 disabling
* Fixed Apple III writes to ROM go to RAM
* Fixed Ctrl+Alt+Backspace hard reset in Apple III
* Connected VBL, KBD interrupts and IRQ state to VIAs
* Implemented AppleIIIKeyboard Ctrl+Backspace for NMI, Ctrl+Alt+Backspace for RESET
* Split AppleIIKeyboard to AppleIIIKeyboard
* Fixed AdressDecoder memory mapping
* Fix Apple III initial register settings
* Added Videx Videoterm automatic/manual video output
* Impemented Titan III plus II
* Fixed AppleIIIDiskIO drive logic
* Added LCD Color Composite Monitor
* Implemented AppleIIIGamePort
* Fixed CPU speed with VBL 1/2 MHz switching
* Fixed AppleIIIKeyboard
* Fixed AppleIIIDiskIO
* Implemented AppleIIIBeeper
* Implemented MOS6551
* Fixed Apple III memory problems
* Implemented Apple III X-Byte addressing
* Fixed erase bug in invalidateTimers
* Added Apple Disk III
* Fixed crash when removing canvas
* Refactorized Disk II volume control
* Refactorized video interface (VRAM, AppleIIAddressDecoder, AppleIIVideo)
* Improved AppleIIKeyboard F12/CTRL+BACKSPACE behavior
* Changed Apple II plus drive 2 to Alps mechanism
* Added volume control to Disk II
* Fixed Disk II not updating last track when closing OE
* Fixed OEEmulation not being destroyed when closing OE
* Fixed crash when changing device and device was selected
* Remade ctrl+option screen in Helvetica
* Fixed Disk II sound problem when pausing/waking up
* Implemented Apple II cassette out option
* Implemented Apple II speaker tension/relaxation
* Restored support for Mac OS X 10.5 (Intel)
* Fixed crash when writing to a DSK file
* Added PH1 write inhibition in Disk II
* Modified mouse release message to "Press CTRL+OPTION to release mouse."
* Fixed crash when replacing monitors
* Implemented power/reset signals as global emulation properties
* Added F12 reset key for Apple II
* Added CFFA ROM 1.2 and ROM 1.0 firmware
* Fixed uppercase disk image extension detection in libdiskimage
* Implemented Apple III MOS6502
* Implemented Apple III keyboard
* Implemented Apple III framework

==1.0.3 17/07/2012==
* Fixed OEDocument retain/release madness
* Fix OEEmulation update()
* Fixed ControlBus cycles problem when powering off/on (time was running backwards)
* Improved Disk II sounds
* Added libdiskimage disk image write support
* Added common utility library
* Improved libdiskimage NIB decoding support
* Added Disk II mechanical phase emulation
* Implemented Disk II disk writes
* Fixed Disk II read sequencer
* Implemented MC3470 spurious bit reads in Disk II Drive
* Fixed Disk II sometimes not booting
* Fixed Videoterm not showing video after installing, adding monitor and doing PR#3
* Fixed Videoterm last line
* Implemented ATA Device size limit for the CFFA card
* Fixed OE framework update problem
* Implemented libdiskimage VDI and VMDK support
* Implemented force write protected in ATADevice
* Fixed libdiskimage GCR53
* Renamed VideoRAM to VRAM
* Fixed CFFA ATA identify
* Fixed keyboard UNICODE + Apple II madness
* Removed BankSwitchedRAM, moved bank switching to AddressOffset
* Implemented ATADevice
* Refactorized RDCFFA+RDCFFA1 into ATAController and RDCFFA
* Fixed minor bug in component lifecycle
* Fixed Apple II mouse capture
* Simplified peripherals to self-map memory using AddressMapper
* Implemented sample-accurate AudioPlayer playback
* Implemented Apple Silentype printer
* Implemented Apple Silentype Interface Card
* Fixed Apple Graphics Tablet count bits 0-2
* Implemented Apple Graphics Tablet
* Improved Apple II slot $C800-$CFFF memory management
* Improved video inhibition so video is only rendered when displayed
* Fixed dragging a disk image to a canvas does not mount when canvas is not in focus
* Fixed Videx Videoterm video refresh
* Fixed Videx Videoterm so display is updated when monitor is plugged in
* Fixed problem in JoystickMapper when an input device was switched
* Fixed rainbow Apple II video test
* Implemented R&D CFFA EEPROM in $C800-$C81F
* Implemented backspace to eject a disk image
* Fixed AppleIIVideo color carrier
* Fixed R&D CFFA
* Fixed MC6845 special register value cases
* Implemented Videx Videoterm video
* Refactorized AppleIIVideo
* Fixed Apple language card
* Implemented Apple Silentype interface card
* Implemented Videx Videoterm card
* Implemented Apple Graphics Tablet interface card
* Implemented Apple Language Card
* Implemented AppleIISlotMemory
* Implemented R&D CFFA card
* Implemented low-level FDI format decoding
* Implemented FDI format Huffman compression
* Improved OE common function and type names
* Added applesoft-lite 0.4 to Briel Replica-1
* Added libdiskimage support to CFFA1
* Refactorized libdiskimage
* Implemented libdiskimage
* Fixed OEEmulation when removing the device
* Refactorized component lifecycle: update() is now only called on update, not on init
* Implemented audio player, added OESound
* Modified Device settings structure
* Implemented Apple Disk II
* Fixed add device to AddressDecoder after init
* Implemented select settings with values and labels
* Implemented Apple Disk II Interface Card
* Fixed auto-open canvas when adding a canvas device
* Refactorized AppleIIVideo memory retrieval
* Implemented AppleIIAddressDecoder
* Designed the Apple II memory and video interfaces
* Reimplemented AddressMux as AddressMapper
* Integrated MMU into AddressDecoder
* Added AudioInterface and MemoryInterface helper functions
* Refactorized Apple1ACI, AppleIIAudioIn, AppleIIAudioOut
* Implemented Apple-1 and Apple II volume controls
* Implemented auto-open canvas when adding a canvas device
* Fixed dragging of audio files to a canvas
* Implemented Apple II j-plus AN2 to video
* Fixed audio recorder lock
* Fixed Apple-1 strange noises when loading files
* Fixed video renderer and floating bus sync
* Improved component framework error messages
* Fixed video flicker when changing NTSC/PAL in mixed mode
* Implemented Apple II j-plus
* Implemented Apple II plus
* Refactorized and fixed ControlBus, scheduleTimer(), invalidateTimers(), setCPUClockMultiplier()
* Fixed AppleIIVideo screen blanking when power is turned off

==OpenEmulator 1.0.2 23/12/2011==
* Connected AppleIIVideoSync
* Implemented AppleIIVideo left border hires bit 7
* Fixed horizontal and vertical counts
* Fixed AppleIIVideo lastSegment bug
* Fixed ControlBus scheduler bug
* Optimized AppleIIVideo
* Fixed ControlBus, so overdone cycles are notified
* Fixed JoystickMapper transformations
* Implemented Apple II shift key mod
* Added keyboard modifiers to the canvas interface
* Implemented Apple II CTRL+BACKSPACE and CTRL+COMMAND+BACKSPACE
* Added update() call on addDocument/removeDevice
* Fixed Apple II NTSC/PAL switching
* Fixed mouse tracking in capture mode
* Implemented JoystickMapper buttons and relative axes
* Implemented JoystickMapper
* Refactorized joystick interface
* Implemented Apple Game Controllers
* Implemented Mac OS X joystick support
* Implemented AppleIIVideo PAL/NTSC
* Implemented Apple II copy
* Fixed color carrier per scanline
* Implemented Apple II hires mode
* Implemented Apple II revision 1+
* Optimized Apple1Terminal
* Implemented AppleIIFloatingBus
* Implemented Apple II lores mode
* Implemented Apple II text video mode
* Fixed printing in Mac OS X
* Fixed window resizing in Mac OS X
* Optimized MMU
* Added postNotification to OEComponent
* Implemented monitor White Only
* Implemented AppleIIKeyboard
* Added monitor safe area
* Fixed Monitor bezel on init
* Added OEComponent dispose() callback
* Fixed last frame error in audio player 
* Implemented AppleIIGamePort
* Updated Replica-1 ROM to KRUSADER 1.3
* Implemented generic MMU
* Refactorized OpenEmulator memory paradigm

==OpenEmulator 1.0.1 26/10/2011==
* Fixed audio recorder
* Fixed audio file dragging to canvases
* Added Apple-1 cassette interface noise rejection parameter
* Fixed timing problem
* Added Apple-1 underscore on backspace parameter
* Refactorized the ControlBus scheduler. Niceeee!

==OpenEmulator 1.0 19/10/2011==
* Added luminance gain
* Fixed removing a window when in fullscreen mode
* Fixed persistence when changing window size
* Fixed ControlBus cycle count
* Fixed brightness/contrast in OpenGLCanvas
* Refactorized shaders
* Implemented display persistence
* Fixed problem when resizing and no video is generated
* Implemented OpenGLCanvas interlace
* Implemented OpenGLCanvas color bursts
* Improved OEImage interface

==2011-09==
* Fixed video not disabled when powered off (CTRL+CMD+BACKSPACE)
* Refactored OEImage and Canvas, so composite video properties are moved to OEImage
* Implemented AudioCodec
* Implemented string manipulation helper functions for AddressDecoder
* Fixed Apple1IO so no characters are lost when toggling terminal speed
* Optimized Apple1Terminal
* Implemented Apple1Terminal splash screen
* Implemented clear screen on CTRL+L in Apple1Terminal
* Fixed Monitor bezel handling and canvas cleaning on power off
* Implemented automatic software update
* Optimized MOS6502 and W65C02S special condition handling
* Fixed ControlBus timing
* Improved PAAudio so AudioBuffers can be accessed beyond the current frame
* Prepared Briel Replica-1 and Achatz A-ONE images
* Added Achatz ROM/RAM mux
* Implemented mux component
* Implemented Apple-1 Apple Cassette Interface
* Implemented W65C02
* Added A-ONE font
* Implemented R&D CFFA1
* Fixed EmulationWindowController Document when ordered out
* Fixed Apple1IO terminalChar persistance
* Fixed "Revert to Saved"
* Implemented GPU check for setting shaders when starting the first time
* Fixed error handling when emulation did not init and some canvas was created
* Implemented Apple-1 enhanced terminal speed
* Fixed Signetics 2513 bit order
* Fixed reset problem, improved keyboard buffering
* Added several Apple-1 features: keyboard buffering, pasting
* Implemented Apple-1 I/O
* Fixed generic components bugs
* Implemented MOS 6502
* Implemented ControlBus::setCPUClockMultiplier
* Fixed control bus

==2011-08==
* Implemented control bus clock functions (phew!)
* Fixed several smaller issues within ControlBus, Devices and Apple1Terminal
* Implemented ControlBus device activity update
* Improved timing framework
* Implement ControlBus scheduler
* Fixed display link problem when replacing/deleting a fullscreen canvas in Mac OS X 10.7
* Implemented Apple-1 power state bezels

==2011-07==
* Improved device events
* Almost finished ControlBus
* Improved canvas window delegate
* Fixed toolbar menu title "Show/Hide Toolbar"
* Added compatibility with Mac OS X 10.7
* Fixed GLSL error in glUniformMatrix3fv
* Added UTF-8 copy/paste support with wstring
* Implemented powerstate in monitors
* Fixed problem when removing a monitor in full screen
* Fixed canvas vertical and horizontal video center/size
* Fixed canvas interface and OpenGLHAL contrast/brightness
* Configured monitor according to color carrier (and changes luma bandwidth accordingly)
* Implemented Apple-1 terminal copy line trimming
* Added Apple-1 terminal copy/paste support
* Implemented Apple-1 terminal
* Implemented daisy chain device removal
* Fixed hardware library detail view filtering
* Improved portaudio latency
* Fixed brigthness in monochrome
* Implemented device replacement by dragging
* Merged available ports with other groups

==2011-06==
* Fixed canvas hiding when adding devices
* Implemented OEEmulation removeDevice
* Implemented delete device through Edit>Delete, or CMD+BACKSPACE
* Fixed recursive lock problem when adding a canvas
* Implemented connection of main inlets
* Fixed connection order
* Implemented OEEmulation addDocument
* Skipped rev. 666
* Implemented library window filtering
* Implemented library window
* Implemented drop of library items
* Updated connector images

==2011-05==
* Removed AVAILABLE PORTS disclosure triangle and port names with port types
* Improved printing, display canvases are now displays centered and single-page always
* Fixed printing
* Fixed getImage, the front buffer is now used
* Fixed canvas display link trouble, canvases are no longer sleeping when they shouldn't
* Fixed errors around glCopyTexSubImage2D
* Fixed resize flickering (THIS ONE WAS HARD), CGL doesn't like multithreading+backbuffer rendering
* Fixed canvas copy
* Added support for detecting default shaderEnable value
* Fixed template chooser scroll problem
* Added preservation of emulation window available ports expansion state
* Enabled disclosure triangle for AVAILABLE PORTS (hidden by default)
* Implemented available port label and location
* Added support for canvas delete commands
* Modified State: to Format: and Type: label for emulation item disk images and ports
* Added emulation window available port group
* Added emulation window available port status message
* Verified and checked dragging for all cases
* Improved ROM so it is saved if the ROM resides in the emulation
* Added donation window
* Implemented canvas copy with glReadPixels
* Implemented canvas printing
* Disabled printing for emulation window
* Improved CanvasView so it updates the canvas on initialization
* Improved device mount logic: all storages are first tried for available, if none is available, the first is selected for remounting
* Implemented multi-storage devices
* Improved overlay
* Improved OpenGLCanvas configuration logic
* Implemented paper canvas postImage
* Implemented OEImage overlay and clipping
* Implemented paper canvas update when paper size changes
* Fixed paper canvas size getting stuck
* Implemented CanvasView paper scrolling
* Defined paper vertical clip region
* Added OpenGL paper canvas page separator
* Updated device count in emulation window
* Fixed PAAudio when playing a sound twice
* Fixed OpenGL paper canvas borders
* Implemented OpenGL paper canvas pixel density
* Finished OpenGL paper canvas
* Fixed video update when shaders are off
* Fixed resize flickering when using didVSync for drawing
* Fixed bezel drawing
* Fixed window resizing methods
* Fixed display canvas updates, so persistency is correctly updated after a new frame
* Implemented OpenGL paper canvas
* Added paper canvas to CanvasWindowController and CanvasWindow
* Refactored canvas API

==2011-04==
* Fixed bezel 180 degree rotation
* Fixed persistance
* Fixed OpenGLCanvas update parameters and canvas API
* Fixed OpenGL context loss when closing a canvas
* Fixed GUI-Emulation-Canvas thread synchronization
* Improved the default emulation fallback, the template chooser is now displayed
* Fixed audio playback play position
* Fixed canvas window orderOut
* Fixed frame size initialization
* Fixed OpenGL thread sync
* Fixed system events in canvas and emulation windows
* Fixed canvas API, so one can now post frames from the update callback
* Added support for storing default emulation window size
* Implemented persistance with render buffers
* Fixed problem when rendering on large screens
* Implemented power/pause/capture bezel
* Implemented Enable OpenGL shader preferences setting
* Implemented a warning message when replacing a disk image in a locked storage device
* Finished storage refactoring
* Added device component
* Refactored storage framework
* Removed OEComponent delegate infrastructure
* Added OEComponent update() call after re-configuration
* Removed OEComponent observer helpers

==2011-03==
* Stabilized video API
* Fixed variable names
* Fixed OpenGL thread nastiness
* Tested persistence with OpenGL accumulation buffer. No way.
* Improved shadow mask

==2011-02==
* Implemented shader shadow mask/aperture grille
* Implemented render to texture by parts
* Separated shader programs into: RGB, NTSC, PAL and screen programs
* Implemented Y'IQ decoding with I 1.3 MHz bandwidth and Q 0.6 MHz bandwidth
* Implemented composite phase per scan-line for NTSC/PAL
* Implemented removable device property
* Implemented system events. Each devices registers itself. An emulation gets these events and delegates them.
* Implemented shader center lighting 
* Fixed Document initialization problem
* Implemented monochrome shader decoder
* Implemented RGB decoder
* Improved canvas configuration
* Optimized shader

==2011-01==
* Fixed shader white IRE level
* Added shader scanlines
* Fixed vertical and horizontal centers
* Moved barrel center from content center to canvas center
* Implemented shader brightness clear color
* Implemented OpenGL 2.0 shader
* Fixed OpenGL context problem when closing an emulation.
* Implemented frame communication to the canvas
* Improved emulation window sizing
* Fixed race condition with display link and closing documents
* Implemented windowForSheet in Document
* Implemented [Document updateChangeCount]
* Implemented interface to signal an active emulation
* Implemented OEImage for easily reading PNG files
* Fixed display link/emulation/UI thread synchronization
* Implemented character palette
* Implemented disabling Mac OS X global keys. When installing or running, this should be executed:
sudo touch /private/var/db/.AccessibilityAPIEnabled
* Implemented keyboard fix for mapping the HELP key as the INSERT key.
* Implemented keyboard capture in CanvasView. The emulation syncs to the CAPS LOCK state of the host. This is done by sending fake CAPS LOCK messages. NUM LOCK and SCROLL LOCK are not addressed in the Cocoa port.
* Implemented UI pointer proximity, mouseEntered, mouseExited
* Fixed mouse capture so it is correctly handled when mouse capture mode is changed
* Implemented mouse and keyboard capture
* Fixed document window controller problem
* Implemented canvas drag and drop
* Implemented show device action in emulation menu
* Implemented canvas keyboard entry/mouse events
* Implemented copy/paste
* Implemented addCanvas and removeCanvas
* Fixed full-screen problem when pressing CMD-W
* Improved document logic with mount, unmount, canMount, isImageSupported
* Implemented emulation did update selection
* Implemented mount lock support
* Implemented emulation drag and drop
* Implemented emulationDidUpdate
* Implemented context menu options
* Implemented device disk mounting
* Implemented emulation disk mounting
* Fixed Show/Hide menu options
* Devised hardware library ground ideas
* Added format and capacity properties for storage components
* Improved EmulationItem
* Implemented lazy initialization of TemplateChooserItem
* Implemented storage reveal in finder action
* Implemented storage unmount action
* Implemented storage open action
* Implemented storage open button
* Implemented storage scheme
* Implemented change of settings

==2010-12==
* Connected emulation view settings and contents
* Added mounted disk images as nodes in the outline view
* Implemented emulation view show and unmount roll-over button
* Implemented the action menu button
* Implemented the emulation view
* Solved the problem of attempting to add/remove devices that are not hot-pluggable and have power applied. Added a new power state for each device, that is notified through emulation. Added "hotpluggable" options for ports, as well as a "static" option for devices.
* Found a solution to the storage API problem. Mount state is indicated by a new mount state.
* Improved several issues with the ChooserViewController
* Added descriptions in ChooserViewController
* Implemented main emulation window context menu
* Implemented OEEmulation getDevicesInfo
* Improved chooser view (template chooser) with lazy initialization
* Implemented OEEDL free ports and connector infos
* Found a way to integrate OEEmulation device info results with the EDL
* Implemented window autosave of emulation view

==2010-11==
* Improved Audio Controls, uses log volume from 0 to -100 dB
* Fixed Audio Controls. When pausing and moving position, the last buffer was played
* Implemented visible persistency in Audio Controls and Inspector windows
* Renamed DeviceChooser to HardwareChooser
* Fixed AudioControls when position is at the end
* Added AudioControls position control
* Audio Controls volume is now playback volume, not global output volume
* Fixed ${id} when saving emulation data

==2010-10==
* Implemented playback recording UI
* Implemented UI timer and update playback, recording and disk images
* Implemented UI timer and update playback, recording and disk images
* Implemented inspector audio playback/recording (libsndfile for wav file access, secret rabbit code for samplerate conversion)
* When no devices are available for adding, show an alert telling so
* Divided device chooser into expansions, storage and peripherals
* Moved settings to device
* Implemented removeDevices. Iterate through inlets. If inlet used, recurse. Disconnect outlets and Remove all components of device
* Implemented isDeviceTerminal. Iterate through inlets. If inlet used, return false
* Implemented addDevices. Iterate through inlets. If inlet found, recurse. If not found, recurse on last used inlet. If no inlet is used, return itself. Protect against circularity
* Implement device chooser connections
* Implemented device chooser available device list
* Implemented template chooser update of user templates
* Center template chooser window when reopening. horiz: 1x 1x, vert: 1x 2x
* Fixed problem: use default template is selected, CMD-N opens the template browser. Auto-visibility was enabled
* Improved inspector

==2010-08==
* Implemented KIM-1 foundations
* Updated framework

==2010-07==
* Updated HID
* Updated OpenGL
* Fixed Mac key codes

==2010-06==
* Added copy/paste infrastructure
* Fixed inspector
* Improved menu
* Updated framework

==2010-05==
* Renamed libntsc to libcomposite
* Implemented HostVideo
* Updated OEPA

==2010-04==
* Updated libntsc
* Updated OEPA

==2010-03==
* Implemented more components
* Implemented libntsc

==2010-02== 
* Implemented PIA components
* Tested GLUT user interface
* Updated framework

==2010-01==
* Updated framework

==2009-11==
* Implemented device chooser
* Updated inspector

==2009-10==
* Improved template chooser
* Implemented default template chooser
* Implemented template chooser
* Implemented inspector settings
* Implemented inspector

==2009-09==
* Implemented OEInfo
* Connected dml to properties
* Connected emulation lists to the inspector
* Connected emulation lists to the hardware selector
* Connected emulation lists to the template selector
* Implemented emulation and device reader in libemulator
* Implemented centered text cells in inspector
* Implemented dialog for adding expansions, disk drives or ports
* Improved fullscreen
* Implemented power off/pause bezels
* Implemented mount/unmount disk images in inspector
* Implemented inspector lists
* Implemented video presets in inspector
* Connected the inspector to document properties
* Implemented document changed

==2009-07==
* Implemented user space scale independence
* Implemented template chooser
* Implemented auto-choose when no template is selected
* Implemented preferences

==2009-06==
* Implemented OpenGL
* Implemented portaudio
* Implemented full-screen (with new window views)

==2009-01==
* Renamed AppleIIGo to OpenEmulator
* Redesigned the AppleIIGo framework with components

==2008-09 AppleIIGo==
* Implemented IIc plus MIG emulation (ROMBANK2 @ $CC00-CFFF)
* Fixed 3.5" disk Image Icon (the notch goes on the left)
* Implemented IIc plus Disk 3.5" SEL line
* Fixed 3.5" disk number of bits of each track
* Implemented Apple II memory expansion

==2008-08 AppleIIGo==
* Implemented Apple 3.5 Disk Drive
* Implemented IWM
* Rewrote disk drive classes
* Implemented Apple 3.5 Floppy Disk Drive Interface Card
* Added CTRL-SPACE pause toggle
* Implemented SmartPort interface
* Improved FloppyDiskImage class data handling
* Implemented NIB disk image reader
* Improved NIB reader, scanning for sync bytes and skipping bytes without bit 7 set
* Fixed IIe 80STORE MMU switch
* Implemented V2D disk image reader
* Implemented GCR62 disk image writer
* Implemented GCR53 disk image writer
* Implemented support for the Apple II Memory Expansion Card
* Added little endian and big endian integer conversion macros
* Implemented Motherboard disk handler: manages disk controllers, assigns mount indices based on driveType indices
* Improved disk image classes, added track/head support
* Implemented GCR53 interleaving
* Calibrated GCR62 and GCR53 sync gaps
* Implemented FDI disk image reader
* Implemented FDI format autosave when a disk image can't be written in original format. Adds " (Autosaved).fdi" suffix
* Implemented FDI disk image writer
* Implemented GCR62Disk35 disk image reader
* Add disk drive head stepper motor inertial simulation (for Locksmith quarter tracks 0.25 and 0.75)
* Redesigned disk image icons

==2008-07 AppleIIGo==
* Fixed Apple IIe internal ROM switch
* Fixed shadow switched (PAGE2 and 80STORE)
* Fixed LORES80 aux colors
* Implemented 7M LORES mode (LORES on, DHIRES on, 80COL off)
* Implemented 7HIRES mode (HIRES on, DHIRES on, 80COL off)
* Implemented TimingGenerator with 14 MHz clock and 65th long cycle
* Fixed VideoRenderer. It missed a scanline update
* Implemented correct NTSC frame rate: 59.922744
* Implemented PAL crystal @ 14.25045 MHz
* Implemented Speaker class with Blargg's band-limited square-wave synthesis
* Implemented keyboard paste
* Implemented video copy
* Expanded Device base class, added onReconnected, onMemoryRequested, onMemoryAllocated, onResetAsserted, onResetCleared call-backs
* Motherboard is now initialized with a profile path and a resources path
* Added Resources loader class
* Added code for doing hot CPU swaps
* Fixed IIe SLOT3INT switch
* Fixed IIc internal slot mapping. 32kB IIc work now
* Fixed IIc GLU IOUEN and DHIRES switches. Passes IIc selftest
* Implemented abstract DiskController class
* Implemented abstract RamWorks class, RamWorksBasic and RamWorksIII devices
* Implemented many slot devices
* Implemented Saturn RAM Board device
* Implemented Disk II Interface Card
* Implemented Videoterm An0 display control
* Implemented Videoterm shadow memory
* Added RESET handler to interrupt pasting
* Improved List and KeyList class, implemented devices and disk controllers as lists
* Implemented FloppyDiskImage class, providing basic 5.25" & 3.5" I/O, and selector for mount class
* Fixed issue when paste buffer char has bit 8 set
* Implemented highly accurate Disk II Interface Card emulation
* Fixed mouse movement after mouse capture
* Implemented GCR62 reader
* Implemented GCR53 reader
* Implemented F7 shortcut to NMI

==2008-05 AppleIIGo==
* Added pause function
* Implemented video mode updates within scanlines
* Implemented DHires monochrome mode
* Implemented temporary CPU slowdown for speaker and paddles
* Implemented character set loader, support for Apple II Rev. 7, II j-plus and IIe character sets, with default and user character sets
* Fixed CPU signaling
* Implemented VideoRenderer class
* Implemented BitRenderer
* Improved ROM error message
* Implemented hires left margin delayed line on Apple II and II plus
* Implemented 7hires mode (no-delay) when hires on, dhires on, 80col off
* Implemented Apple II lores
* Implemented intra-scanline display mode switches
* Fixed isVideoModifiedMap for left margin hires delayed bits
* Fixed keyboard reset/restart when the key was being repeated
* Implemented support for Apple II j-plus
* Implemented language lard and internal language card

==2008-04 AppleIIGo==
* Disabled DHIRES on the original IIe
* Implemented SDL mouse capture
* Improved SDL keyboard and mouse event handling
* Implemented IIc 80/40 switch with F4 key
* Implemented SDL audio volume and mute
* Implemented CPU pause
* Moved key modifier events to keyboard class
* Moved mouse events to mouse class

==2008-04 AppleIIGo==
* Moved microprocessor timing to VideoController class
* Removed SpeedController
* Added timing synchronization to hardware, scanline by scanline
* Fixed clock overflow from one scanline to next scanline
* Moved getClock from SpeedController to getClockIndex in VideoController, it is now acceleration independent
* Implemented 65C02 WAIT and STOP modes
* Added CTRL-ALT-META-BACKSPACE shortcut for shutdown

==2008-04 AppleIIGo==
* Renamed Video class to VideoController, Monitor to VideoRenderer, Slot to SlotDevice, AuxSlot to AuxSlotDevice
* Added Device class which handles connections, reset, persistency and audio
* Designed VideoRenderer interface
* Added Speed class
* Designed SpeedController interface
* Disabled AN3 graphics mode selection in non-enhanced IIe
* Implemented SDL fullscreen update

==2008-03 AppleIIGo==
* Implemented video class that controls video timing, interrupts, blanking, registers and video scanner
* Implemented floating bus
* Improved interrupt handling with an Interrupt class
* Added updateIsScanlineModified() call to mark modified scanlines
* Implemented scanline rendering loop in Video class
* Implemented shadow memory isScanlineModified mapping
* Added device class for persistency, sounddevice class for sound related operations
* Fixed RTC, Mouse and ADB interfaces
* Implemented Shift key mapping to PB2
* Implemented SDLIO class with separate render thread
* Implemented motherboard and peripheral audio callbacks, featuring a separate input and output buffer
* Implemented paddle buttons as counters, so multiple devices can push them
* Emulated Option key with left Alt, Command key with left and right Meta and right Alt

==2008-02 AppleIIGo==
* Improved paddles' screen area
* Fixed ALT key paddle button mapping
* Fixed key repeat
* Fixed isAnyKeyDown
* Added types.h and bitMacros.h
* Completely rewrote the architecture
* Implemented Memory class that allocates and initializes RAM, and allocates and loads ROM
* Added Keyboard UNICODE mapping to international Apple II character set
* Added uppercase-only for Apple II and II+
* Disabled shadowing when there is no auxiliary memory
* Added Speaker and DOC classes
* Implemented Motherboard class. Acts as a concentrator that connects devices on connect()
* Implemented default configuration for various Apple II computers
* Fixed SDL fullscreen mode
* Fixed and tested RamWorks
* Implemented isAnyKeyDown
* Implemented accurate Disk II blank simulation: random distribution is now 95% 0s, 5% 1s
* Improved Disk II emulation when motor is off, and when first accessing the controller
* Fixed Disk II sporadic bits. Maniac Mansion, Ultima V work now
* Implemented accurate II+, IIe, IIc memory initialization

==2008-01 AppleIIGo==
* Optimized audio computations
* Added charset loader function
* Emulated Open and Closed Apple keys with ALT
* Added floating bus read/write support
* Rewrote memory management
* Added support for memory expansion slot cards (Saturn 128k)
* Implemented accurate RamWorks basic and RamWorks III emulation
* Implemented Saturn 128k emulation

==2007-12 AppleIIGo==
* Rewrote the Disk II logic state sequencer
* Added emulation of Disk II spontaneous 1 bits after long runs of 0 bits
* Implemented DSK disk image reader
* Implemented DII format disk image reader and writer
* Added audio downsampling filter and analog sound amplifier emulation
* Added support for variable track size
* Added donation button
* Fixed missing Localizable.strings
* Fixed driveIndex bug in Mac OS X Controller.m
* Fixed IIe self test
* Improved Disk II infrastructure
* Implemented .dsk to nibble converter
* Fixed keyboard key loss, increased refresh to 50 frames per second
* Implemented new CPU infrastructure
* Implemented new Disk II infrastructure
* Enabled $C800-$CFFF zone, enabled access to $CFFF
* Solved PR#3 problem. It was a missing break in a switch
* Fixed cursors and backspace
* Solved Applesoft problem: PRINT 1 was not printing 1... ROR was wrong
* Solved zero flag problem in PLP: DOS was not accepting commands
* Fixed overflow bit in 6502 ADC, SBC. An error happened when doing PRINT -1 in INTEGER
* Fixed BCD in 6502 ADC, SBC. It works like a real 65C02 now
* Assignment A=8 was doing nothing or giving SYNTAX ERROR. It was a keyboard error (ASCII 0)...
* Solved problem when more than two disks are mounted
* Added video with new NTSC technique
* Hires bit 7 now works like in a real Apple II (it replaces the previous bit)
* Added bit overflow from last row when enabling hires bit 7 in first row
* Accelerated NTSC video+YIQ converter with 7*3 tap filter
* Improved reset. It now interrupts pasting
* Improved language card logic
* Fixed paste... realloc() in two threads was not a good idea
* Added VBL blanking simulation
* Improved ROM loader
* Optimized NTSC FIR filter with AND's instead of MUL's
* Added clock and floating bus to peripherals
* Added a physical to logical track structure to DiskIILoader, so the loader defines what data a physical track maps to
* Added accurate Disk II stepper motor simulation
* Added accurate Disk II sequencer simulation
* Fixed pixel 280 in non-DHIRES modes
* Fixed DOS 3.2 speed problem. Disk II drive motion check was being given a constant 0
* Fixed bug in SDL_EnableUNICODE that made keys beep
* Updated SDL. Arrows work now in Mac OS X
* Added command line disk option
* Added audio callback() to peripherals
* Fixed Leopard+SDL black rectangle problem. Probably because SDL_QUIT was not being called
* Implemented paddles with the mouse and joystick
* Added error message when a disk is replaced
* Added mountDisk error report, working now from the command line as well (with onMountError)
* Added Copy/Paste
* Implemented start/stop speaking
* Fixed "Go to ROM folder". It doesn't work in Debug for some reason
* Implemented Menues
* Implemented opening disks from the dock
* Added Mac OS X Leopard icons
* Enabled services menu
* Enabled recents menu. Luckily this was easy
* Fixed memory loss sheet problem
* Implemented panels as sheets
* Fixed problems with sheets and dialogs
* Fixed localization
