Aaron Culliney
9f1ef968ac
Improve display testing
...
- Also test graphics modes in COLOR_MODE_BW
- Changed TESTHIRES80_2 to merge the two portions of the HIRES80 picture data
- New TESTLORES_2 and TESTLORES80_2 that draws colors/patterns that better showcase continuous pixel data
2018-08-11 16:32:13 -07:00
Aaron Culliney
6ee8699079
Rename color_mode_t values for clarity
2018-08-11 15:54:00 -07:00
Aaron Culliney
b403ee7b6e
Fix LORES80 shifting algorithm
...
- Previous variant was not properly truncating bit 9
2018-08-05 17:18:48 -07:00
Aaron Culliney
0f38791940
Improve a flappy display test
2018-07-29 19:58:59 -07:00
Aaron Culliney
75edac3ace
First cut at implementing conformant video scanner
2018-07-29 18:33:17 -07:00
Aaron Culliney
14bb75a941
Misc testing tweaks
2018-07-29 16:42:33 -07:00
Aaron Culliney
51d2efba03
Streamline CPU tracing codepaths and remove some deadc0de
2018-03-31 12:48:14 -07:00
Aaron Culliney
e4e0c941d3
Refactor CPU assembly for simplicity and efficiency
...
- Variables needed in assembly now accessible in a struct pointer that avoids __PIC__ nastiness
- Reduces code size and execution time for CPU thread
2018-01-15 16:19:21 -08:00
Aaron Culliney
167263ab3a
Ensure starting with clean buffer ...
2018-01-15 10:17:02 -08:00
Aaron Culliney
a0c26386e8
malloc returns pointer ;)
2017-11-18 11:38:46 -08:00
Aaron Culliney
53459c9e78
Clean up a number of Xcode build warnings
2017-09-28 16:27:12 -07:00
Aaron Culliney
2d5c47d534
Autotools builds on Mac somewhat
2017-08-21 17:56:20 -10:00
Aaron Culliney
f8b4602fca
Beginning to refactor display and backend video
...
- Futher disentangle display, interface, and video backends
- Backend video owns the staging/intermediate framebuffer for now
- Add the beginnings of display update callbacks
2017-08-06 12:12:12 -10:00
Aaron Culliney
bcbf5ac234
Refactor LOG() facilities
...
- Enable logging to file(s)
- Enable log rotation
- Allow silencing console logging (e.g., to stderr)
2017-07-30 12:24:48 -07:00
Aaron Culliney
5102706441
Ensure that Apple2ix handles invalid gzipped files
2017-07-07 17:57:19 -10:00
Aaron Culliney
55cba116e4
Revert adding A2V3 format as it is unnecessary
...
- Re-gzipping ejected images is based solely on the file extension and not the actual file stream contents
- Read/write disk images with extension ".gz" are re-gzipped in-place upon ejection
- Read/write disk images without extension ".gz" are not changed upon ejection
- Read-only disk images maintain current behavior (no modifications performed at all)
2017-07-06 19:36:37 -10:00
Aaron Culliney
ccfaa0544a
Explicitly test A2V3 data
2017-07-04 08:01:02 -10:00
Aaron Culliney
c00a52cbc6
unbreak testui
2017-07-04 08:00:52 -10:00
Aaron Culliney
b9c4ec4cc3
HACK : bump the timeout to get test passing on slow devices
2017-07-04 08:00:36 -10:00
Aaron Culliney
d98c4afa84
Rename emulator.state to emulator.a2state and handle migration
2017-06-28 22:05:11 -07:00
Aaron Culliney
b300e60e2a
Persist disk image 'was_gzipped' state
...
- 'was_gzipped' state is persisted in .apple2.json preferences
- This removes all file-renaming codepaths at the cost of temporarily nonconformance to naming convesion (e.g., disk
images inserted read/write are still called 'foo.dsk.gz' although they are not compressed)
- Unclean shutdown of emulator leaves any disk images that were inserted read/write in their non-gzipped state
(regardless of file name extension) on disk until emulator restarted and disk images explictly ejected or clean
shudown. App removal after unclean shutdown will potentially leave mis-named disk images lingering.
- Emulator will handle edge cases of non-gzipped disk images with '.gz' extension and gzipped disk images without
'.gz' extension
2017-05-29 08:05:38 -10:00
Aaron Culliney
4c893cc197
Beginnings of trace testing on Droid
...
- Currently broken because !CONFORMANT_TRACKS
2017-05-28 08:48:24 -10:00
Aaron Culliney
e1f0557b87
Allow loading test images from /sdcard/apple2ix on Android
2017-05-28 08:48:21 -10:00
Aaron Culliney
9bd59661ed
Refactor disk image UI to use file descriptors and not paths
...
- Push path opening responsibility out of disk6 API in favor of using file descriptors
- Improves handling of readonly gzipped disk images (now data is read without gunzipping or mmap()ing the file)
- Currently represents an API-breaking change for macOS, iOS, GNU/Linux desktop ports (but should be easy to fix)
2017-05-28 08:48:11 -10:00
Aaron Culliney
3def67975c
Avoid testing certain fragile/non-portable disk state
2016-10-16 19:20:23 -07:00
Aaron Culliney
d2e61e5091
Ensure big-endian data in A2V2 save-file format
...
- Also sanity-check buffer read overflow during loading
2016-10-16 16:00:14 -07:00
Aaron Culliney
5ab68b5503
Fix a broken test on Android
2016-10-15 19:07:10 -07:00
Aaron Culliney
a417249691
Add more tests for save/restore feature
2016-10-15 13:36:03 -07:00
Aaron Culliney
bb93b5c243
Adjust CPU trace file format
...
- CPU_TRACING now records IRQ check timeout and total cycles
2016-10-09 12:23:48 -07:00
Aaron Culliney
0be555d7e9
Fix cycle counts in CPU tests after upheaval
2016-10-09 12:20:07 -07:00
Aaron Culliney
1294485a02
Beginnings of a pluggable peripheral card API and fix a CPU boot tracing divergence against AppleWin
...
- In particular, return floating_bus() for non-plugged in cards when accessing the $C100-$C700 range
2016-10-09 12:19:32 -07:00
Aaron Culliney
4bdabcaa9a
Optimize disk6 track switch read/write and improve tracing conformance with AppleWin
...
- No need to read/write if only changed to a "half track"
- Fixes one small glitch in boot disk tracing
2016-10-02 13:58:06 -07:00
Aaron Culliney
c4e3dccc38
Rename disk tracing API
2016-10-02 13:56:56 -07:00
Aaron Culliney
ba09a6aba9
Refactor Disk ][ API to improve tracing conformance with AppleWin
...
- Binary stability change/fix : an 0xEB -> 0xFF in the sync bytes of blank.nib.gz
2016-10-02 13:55:05 -07:00
Aaron Culliney
fe63695f81
Build and fix testui on Desktop Linux
2016-09-17 13:05:26 -07:00
Aaron Culliney
e479a861d7
First cut at testing save/restore of emulation state
2016-09-11 11:53:59 -07:00
Aaron Culliney
07e1c4ed83
Misc test suite improvements
2016-09-11 11:51:55 -07:00
Aaron Culliney
b37c94f404
Remove unused test files
2016-09-11 06:28:24 -07:00
Aaron Culliney
daddf5f287
Misc fixes for Mac testing
2016-09-10 16:57:52 -06:00
Aaron Culliney
bc8091cde3
Fix Linux Desktop builds
2016-09-10 16:19:49 -06:00
Aaron Culliney
721ea2c172
Also copy external-disks and use them if available
2016-09-02 12:39:09 -07:00
Aaron Culliney
8921f79a14
Beginnings of Mockingboard tracing for automated testing
2016-08-27 13:33:05 -07:00
Aaron Culliney
5883545390
Ensure CPU speeds in test prefs are correctly set
2016-08-27 12:10:36 -07:00
Aaron Culliney
d4581eb492
Enable testing of 3rd-party disk images
2016-08-27 09:17:23 -07:00
Aaron Culliney
7ad7b65d11
Add speaker tracing API and tests
2016-07-23 17:35:11 -07:00
Aaron Culliney
19178b751c
Unbreak tests on desktop Linux
2016-07-22 20:54:21 -07:00
Aaron Culliney
4457e9e722
Tests running and passing again on iOS devices
2016-07-22 20:43:47 -07:00
Aaron Culliney
59e6c4fabc
Fix HOMEDIR on mobile devices
2016-07-22 20:43:42 -07:00
Aaron Culliney
ed8942f82d
Fix testtrace by testing with more determinism ;)
2016-07-15 20:28:23 -07:00
Aaron Culliney
d7413dae01
Allow for more deterministic typing/stepping of CPU thread from debugger
2016-07-15 20:28:23 -07:00