Commit Graph

83 Commits

Author SHA1 Message Date
Aaron Culliney
3120b75e00 Enforce module ctor priorities 2016-02-22 22:41:37 -08:00
Aaron Culliney
00a5f6e102 Fix "re-insert" disk edge case 2016-02-17 22:32:01 -08:00
Aaron Culliney
afeaba8b2a Lock access to zlib functions and unlinking image files to prevent data loss 2016-02-17 21:31:43 -08:00
Aaron Culliney
a2b7603e53 Only reset disk stepper_phases during VM initialization and allow for save/restoring it 2016-02-17 21:10:09 -08:00
Aaron Culliney
261ae2efae Refactor to not use video_backend in so many places 2016-02-07 14:42:32 -08:00
Aaron Culliney
8626215205 Silence a number of spurious compiler warnings
- Existing warnings are now a good proxy for areas of code smell ;-)
2016-01-10 12:09:04 -08:00
Aaron Culliney
f7cb3da434 Mark certain core emulation modules as problematic on iOS/Mac, and something we should fix 2016-01-05 00:11:58 -08:00
jvernet
4d89d173f4 Here we are: now everything work for iPad. 2016-01-04 21:25:27 -08:00
Aaron Culliney
abae59767c Enable simple heap memory fencing/scribbling in debug builds 2015-12-31 22:50:43 -08:00
Aaron Culliney
edf42b81f9 Improve disk quick save/restore
- Flush disk I/O on save
    - Ignore ephemeral track_valid/track_dirty bits
    - Insure disks are ejected if there was a problem loading state
2015-12-12 00:21:27 -08:00
Aaron Culliney
0aed046b5e Simplify modulo offset calculations in trackimage 2015-12-12 00:17:58 -08:00
Aaron Culliney
ef1963a175 Avoid potential read off end of trackimage 2015-12-12 00:16:14 -08:00
Aaron Culliney
943b8842f7 Show disk track sector change animations 2015-12-07 23:03:44 -08:00
Aaron Culliney
ff204a4300 Slight refactor to move common ".gz" extension handling code to interface module 2015-11-29 13:23:13 -08:00
Aaron Culliney
b9d6d38b17 First cut at save/restore emulator state feature
- This adds to overall UX ... (you can finally finish some very difficult arcade games by strategically leveraging
      this feature)
    - Currently enabled for Android, but not Android-specific
2015-11-22 18:22:01 -10:00
Aaron Culliney
0aacdfa9e5 Various fixes from Apple Clang static analyzer 2015-11-14 08:03:44 -08:00
Aaron Culliney
a61fd339a6 Various fixes to get Mac build compiling 2015-11-14 08:01:20 -08:00
Aaron Culliney
e5f08849ae revert back to sync byte and state reason 2015-10-25 13:51:54 -07:00
Aaron Culliney
2cc23cf35d Upgrade to GPLv3 "or later" and update copyrights 2015-10-22 21:09:13 -07:00
Aaron Culliney
4ae7e3e735 Silence potentially abusive logging in disk VM callbacks 2015-10-20 20:57:52 -07:00
Aaron Culliney
d23a435b56 Use mmap for disk I/O 2015-10-18 16:27:07 -07:00
Aaron Culliney
d46a62a4dd Refactor to load whole disk image into memory 2015-10-18 15:24:34 -07:00
Aaron Culliney
b496d771f6 Moar data for disk write tracing 2015-10-18 12:44:24 -07:00
Aaron Culliney
41ae0266e2 Bugfix : flush disk buffer data on initialize
- Fixes disk image corruption issue that was manifesting in testing
    - Out-of-space test(s) now results in a disk image with a correct length byte of 0x20 for the final "JUNK7" file in
      the disk image's VTOC
2015-10-18 12:11:09 -07:00
Aaron Culliney
7a2f919175 Refactor load/save track data API 2015-10-17 14:28:08 -07:00
Aaron Culliney
39c09a042f Do not return sync bytes if no image inserted
- This really should be backed by more testing or research =P
2015-10-17 13:23:49 -07:00
Aaron Culliney
053a4c8c93 Safety : flush/close file before calling zlib_deflate on it 2015-10-17 12:02:21 -07:00
Aaron Culliney
1d5c20cc5f Remove deadc0de 2015-10-17 11:40:56 -07:00
Aaron Culliney
c6244f696f tweak temp error handling 2015-10-17 10:58:51 -07:00
Aaron Culliney
3ab75c6214 Refactor : improved error handling of track write 2015-10-17 10:58:29 -07:00
Aaron Culliney
989a5ce7c1 Refactor : improved error handling of track read 2015-10-17 10:51:37 -07:00
Aaron Culliney
8261590899 Refactor : improved error handling in disk6_insert 2015-10-16 22:49:59 -07:00
Aaron Culliney
984e15dc04 Get rid of sector deadc0de
- unnecessary with the skew_table
2015-10-16 22:15:58 -07:00
Aaron Culliney
0f9cd3a265 Refactor disk file_name to a char* 2015-10-16 21:47:56 -07:00
Aaron Culliney
10bb19ecc5 Minor refactor internal API 2015-10-16 20:34:15 -07:00
Aaron Culliney
4e478d369c Refactor disk interface API function names 2015-10-15 22:51:44 -07:00
Aaron Culliney
52d74aa43c Improved disk prefix utility functions 2015-10-15 21:02:52 -07:00
Aaron Culliney
57b7d930d6 User lower-level I/O with temp failure retries 2015-10-15 20:59:31 -07:00
Aaron Culliney
9eee9293bc Some defensive coding and moar flushing 2015-10-15 20:44:40 -07:00
Aaron Culliney
ce7596754b Refactor various codepaths for clarity #3 2015-10-13 20:52:10 -07:00
Aaron Culliney
a5854a20f6 Refactor various codepaths for clarity #2 2015-10-12 23:11:23 -07:00
Aaron Culliney
7a0255ff8b Refactor various codepaths for clarity 2015-10-12 22:30:21 -07:00
Aaron Culliney
6d60116c92 BUGFIX : nasty classic assign versus equality check
- I blame myself, but WTF did I not previously see a warning from GCC or Clang with -Wall ?!
    - Hooray for pedantic testing!
2015-10-12 21:29:54 -07:00
Aaron Culliney
b8a3521ee5 Calculate disk reverse translate table once at CTOR time 2015-10-11 13:21:45 -07:00
Aaron Culliney
ddd479f271 BUGFIX : don't read past the track buffer
- Causes a disk image stability test to go green =)
2015-10-11 12:19:36 -07:00
Aaron Culliney
7c7a96af71 Refactor : rename to track_width for clarity 2015-10-10 22:38:57 -07:00
Aaron Culliney
f4fa5670b4 Add function-call time tracing for Linux/Android 2015-10-04 14:22:26 -07:00
Aaron Culliney
236b8e358a INITHELLO with -UCONFORMANT_TRACKS now passes 2015-10-04 12:35:38 -07:00
Aaron Culliney
064070be7c Kill a magic number and ensure file_name is nul-terminated 2015-06-01 22:08:58 -07:00
Aaron Culliney
966ba0a2d8 No disk in drive (or invalid track) should return 0xFF
- Bug introduced in e01e437
    - Bugfix allows U5 Journey Onward to work =P
2015-05-25 13:36:17 -07:00