I thought 0x80 was a weird NOP imm, but it's BRA.
Implement 0xD2 - CMP (zpg)
Move all 65C02 instruction implementations together
Update disassembler for 0xD2 - CMP (zpg)
Change bare "5" to more descriptive "recording_frame_duration_hundredths".
Create APPLE2Einterface events that allow interface to limit main loop speed.
Implement rate limiting on start_record and release limiting on stop_record.
During recording, simulation will not run at clock rate.
Introduce GLEW for GL extension management
Fix warnings about "&" used in logical-AND with precedence likely not matching programmer's intent
Fix a GL shader type incompatibility uint vs int in lores shader
Add Makefile.linux
Move all libao operation into interface.cpp
This should have the result of removing all AV and GUI code from apple2e.cpp
OS code remaining in apple2e.cpp should basically be only file I/O, console I/O, and chrono.
Catch ALTCHAR but do nothing about it
Catch VID80 (80VID)
Add aux pages to interface.cpp
Plumb aux pages through apple2e.cpp display_write functions
Implement 80-column text shader using aux page
On cold-start, force Button0/OpenApple on for a short period
This is how cold-start (disk boot) is differentiated from plain RESET
Add padding widget that pads another widget on all sides
Add drag-and-drop functionality to widgets and manage through GLFW
Honor current time through all widget methods
Fix character encoding in text_widget (especially for ' ')
Add floppy_icon widget that manages drag-and-drop and drive motor (activity) light
Later move to vector graphic or bitmap
Add floppy eject and insert notification from APPLE2Einterface
Add activity notification through APPLE2Einterface
Optimize with -O2