Commit Graph

450 Commits

Author SHA1 Message Date
Asnivor 403a1032d8 ZXHawk: 48k Interrupt, ULA tables and contention tweaked 2018-06-08 11:07:16 +01:00
Asnivor f33863126c ZXHawk: Fix rendertable generation offset. btime.tap test now passes 2018-06-08 09:36:32 +01:00
Asnivor f4c47dc80a ZXHawk: modified vblank interrupt start time (128k/+2a/+3) so contention period starts at the correct time 2018-06-07 18:27:44 +01:00
Asnivor 25fe4a7a87 ZXHawk: more prep for contended 128k/+2/+2a/+3 2018-06-07 18:00:08 +01:00
Asnivor 83bbb83c64 ZXHawk: Missed rendercycle call on 128k border OUT 2018-06-07 16:40:48 +01:00
Asnivor 843dc7a69a ZXHawk: Small performance increase (rendering cycle now happens only when it needs to) 2018-06-07 15:33:58 +01:00
Asnivor 535534a94a ZXHawk: start preparing 128k and +2a/+3 for updating timings 2018-06-06 15:56:27 +01:00
Asnivor c80f873adf ZXHawk: added CPUMonitor syncstate 2018-06-06 15:37:29 +01:00
Asnivor 7f8084d410 ZXHawk: IORQ check now happens pre T-Cycle 2018-06-06 14:39:41 +01:00
Asnivor f764c137ee ZXHawk: 48k timing work 2018-06-05 17:14:37 +01:00
alyosha-tas beae64d563 z80: use high byte BUSRQ vector since PCl = 0 so the look up fails (oops) 2018-06-04 14:27:57 -04:00
Asnivor 7dfd19de2b ZXHawk: Fix memory contention lookup overflow 2018-06-04 17:11:12 +01:00
Asnivor 7677b75de3 ZXHawk: Start building on new BUSRQ implementation 2018-06-04 10:35:12 +01:00
alyosha-tas 32ae549c70 z80: Add bus request timing array to work with zx spectrum
Also some clean up
2018-06-03 19:14:30 -04:00
Matt Burgess b9dd435455 ZXHawk: Started 128 and +2a/3 new ULA implementation 2018-06-01 17:38:42 +01:00
Matt Burgess 9a15cbf4d4 ZXHawk: new ULA implementation 2018-05-31 17:54:57 +01:00
Scepheo f3ea6fe025 Use generic interface type on MOS 6052X for talking to the emulator core (#1189)
* Use generic interface type on MOS 6052X for talking to the emulator core
* Change CpuLink constructors to not use expression-bodies, to get the AppVeyor build to pass.
* Add comment explaining why IMOS6502XLink exists.
2018-05-20 23:18:53 +03:00
nattthebear e8145af463 i hope this breaks something 2018-05-12 12:55:42 -04:00
Asnivor 0d4418a1cc ZXHawk: Disk Drive code tidy 2018-05-10 10:42:36 +01:00
Asnivor 66b7f37327 ZXHawk: +3 UPD WriteData command now partially implemented. Data is written to the disk object in memory (allowing castlevania SI to get ingame) but changes to the disk are not serialized in any savestates - #1158 2018-05-09 13:47:59 +01:00
Asnivor 2f513a3ed5 ZXHawk: Better SoundProviderMixer implementation 2018-05-09 11:33:39 +01:00
Asnivor a4942f0fb8 ZXHawk: block index is now set to 0 when switching tapes - #1158 2018-05-08 21:29:01 +01:00
Asnivor 45c37ddc47 ZXHawk: Removed IO port contention for now (this fixes the slow beeper music problem). Will re-implement properly later - #1158 2018-05-08 20:37:47 +01:00
Asnivor 9c800cf133 ZXHawk: Buzzer/Beeper implementation now use BlipBuffer - #1158 2018-05-08 20:23:02 +01:00
Asnivor f36e252d5e ZXHawk: fixed tap tape image parsing exceptions (operation wolf etc) - #1158 2018-05-03 23:19:24 +01:00
Asnivor 41f1058469 ZXHawk: fixed edge-case tzx tape image parsing exceptions (red heat, live and let die, etc.) - #1158 2018-05-03 23:10:06 +01:00
Asnivor 5df212817c ZXHawk: state should be populated in the disk AFTER the disk is loaded (maybe) 2018-05-03 19:53:42 +01:00
Asnivor 99b7adaf19 ZXHawk: Tape and Disk devices are now only re-initialized when a save state is loaded, NOT saved (TLDR: schoolboy error fixed) 2018-05-03 19:45:13 +01:00
Asnivor 20cdb02de8 ZXHawk: Started UPD write commands implementation 2018-05-03 19:45:13 +01:00
Asnivor a374f9f4b8 ZXHawk: Some UPD ReadID improvements 2018-05-03 15:33:30 +01:00
Asnivor 282c3533b4 ZXHawk: Multi-disks are now supported for +3 disk drive 2018-05-02 11:14:08 +01:00
Asnivor e977826c5e ZXHawk: Implemented CPU overrun detection within the FDC. This appears to have sorted more Alkatraz protected games AND N=6 (hexagon protection) sectors 2018-05-01 17:32:35 +01:00
Asnivor 462d66c549 ZXHawk: UPD ReadDiagnostic fix (more Alkatraz protected games now load) 2018-05-01 13:42:21 +01:00
Asnivor d891938d89 ZXHawk: fix speedlock +3 regression 2018-05-01 12:45:53 +01:00
Asnivor b5eef04b42 ZXHawk: FDC ReadDeletedData command now fixed. Alkatraz games and previously not loading Paul Owens protection (eg Red Heat) should now work 2018-05-01 09:41:07 +01:00
Asnivor 451d5654ce ZXHawk: modifications to UPD sense interrupt status instruction 2018-05-01 08:03:14 +01:00
Asnivor a7bf8e4ca3 ZXHawk: +3 Paul Owens Disk Protection games now loading 2018-04-30 17:36:16 +01:00
Asnivor bc023c11bd ZXHawk: Original CPC DSK format images now detected properly 2018-04-29 09:34:23 +01:00
Asnivor e642e0216c ZXHawk: improved detection of cpcemu dsk files 2018-04-28 17:07:59 +01:00
Asnivor 0c12707bb7 ZXHawk: some updates to speedlock disk detection 2018-04-28 17:06:46 +01:00
Asnivor 23a2550444 ZXHawk: disabled auto-tape detection routines when a disk is in the drive 2018-04-27 10:57:54 +01:00
Asnivor 85fb40ed02 ZXHawk: Implemented UPD765A ReadTrack command (platoon now loads) 2018-04-26 16:39:40 +01:00
Asnivor 7aaa5e8a52 ZXHawk: +3 disk ready for testing 2018-04-26 12:57:21 +01:00
alyosha-tas b2ed6eb737 Always initialize independent instances of IController in cores to NullController
- Fixes #1168
2018-03-31 11:23:55 -04:00
Asnivor 35c87c5aea ZXHawk: Fixed AY-3-8912 volume control (values under 50 were registering as maxvolume) - #1158 2018-03-27 16:38:08 +01:00
Asnivor f1fbd2b64e ZXHawk: AutoTapeLoad has been changed to a SyncSetting - #1158 2018-03-27 16:12:38 +01:00
Asnivor 8485a52662 ZXHawk: Finished separation of emulated TapeDevice - #1158 2018-03-27 16:12:38 +01:00
Asnivor 2cd641701e ZXHawk: Removed RomData object from SynState (this should always be deterministic anyway after a core reboot) 2018-03-27 16:12:38 +01:00
Asnivor 86dd0b4a06 ZXHawk: Started tapedevice independence implementation 2018-03-27 16:12:38 +01:00
Asnivor 2f35bec264 ZXHawk: removed maskable interrupt tape trap. Does not work as it should. 2018-03-26 17:29:31 +01:00
Asnivor e8cd3b259c ZXHawk: Small change to 128 paging 2018-03-26 16:47:49 +01:00
Asnivor 426c3ddaea ZXHawk: All TZX blocks now handled correctly (in many cases these are not serialized correctly, but lengths are correct so the entire tape image should be loaded without throwing an exception) - #1158 2018-03-26 09:07:36 +01:00
Asnivor b0ae89f924 ZXHawk: TZX block 0x19 - added correct length placeholder - #1158 2018-03-26 08:37:18 +01:00
Asnivor 5f71e2428c ZXHawk: fixed array out of bounds exception with certain tiny (3 byte) tzx turbo data blocks. Operations Wolf & Thunderbolt now load - #1158 2018-03-26 08:16:04 +01:00
Asnivor 7b711cb890 Better error handling when parsing TZX files - #1158 2018-03-26 07:42:55 +01:00
Asnivor da71addddd ZXHawk: Fixed TZX block ID 0x33 deserialization (was causing some games to not be parsed properly) 2018-03-22 17:06:52 +00:00
Asnivor bdbfc3fb4e ZXHawk: Finally (hopefully) resolved all tape trap issues 2018-03-22 08:58:31 +00:00
Asnivor 76904df015 ZXHawk: Better detect maskable interrupt used as a tape trap 2018-03-21 16:48:14 +00:00
Asnivor 0ae1910259 ZXHawk: Tweaked some of the AY-3-8912 volumes 2018-03-21 15:02:12 +00:00
Asnivor c2d3a42a69 ZXHawk: Fixed auto-tape traps (now working properly for all games tested so far) 2018-03-21 14:23:41 +00:00
Asnivor 752bd0e35b ZXHawk: Audio settings menu implimenting volume controls for AY, tape and buzzer 2018-03-21 12:47:10 +00:00
Asnivor 9a9b56c69b ZXHawk: Improvements to reset methods 2018-03-20 15:28:23 +00:00
Asnivor bd319056af Better volume levels for AY-3-8912 MONO panning configuration 2018-03-19 23:53:06 +00:00
Asnivor 683166da89 Readme update 2018-03-19 16:25:20 +00:00
Asnivor b939c47de6 Added reset methods 2018-03-19 16:21:15 +00:00
Asnivor e2eac983a1
Merge pull request #1149 from TASVideos/master
Bringing ZXSpectrum branch up to date with master
2018-03-19 15:52:55 +00:00
Asnivor 5ab7ecd4b0 A few more small changes 2018-03-19 15:34:25 +00:00
Asnivor 22656fd373 Some TapeDevice changes 2018-03-19 12:01:54 +00:00
alyosha-tas 81e80acf86 z80: make TotalExecutedCycles long and change related variables accordingly 2018-03-18 09:55:56 -04:00
Asnivor 0ac17f2d1e UI - added Core Emulation Settings menu 2018-03-16 14:33:18 +00:00
Asnivor 5bb1d1f327 Fixed +2a/+3 ROM paging bytes missing from SaveState serialization 2018-03-16 10:45:57 +00:00
Asnivor 4ecb247c17 Fixed AY-3-8912 overflow bug 2018-03-16 08:08:35 +00:00
Asnivor 760ae8edf0 Fixed 128k and +2 memory paging bug 2018-03-15 17:19:13 +00:00
Asnivor 7a36f913ec New AY-3-8912 implementation. Better sounding and more performant 2018-03-15 16:32:26 +00:00
Asnivor 8234b2acfa more typos. FML 2018-03-13 22:15:53 +00:00
Asnivor df5cf0d85f Type fix for sir feos 2018-03-13 22:13:26 +00:00
Asnivor 7739c0dee1 Handling loadstate issues for different machine configurations 2018-03-13 22:09:46 +00:00
Asnivor 6d66eee459 Disabled AY chip when memory paging is disabled (i.e. 48k mode) 2018-03-13 20:38:43 +00:00
Asnivor d23dc0a296 Finally fixed tape trap auto loading/stopping routines 2018-03-13 20:31:13 +00:00
Asnivor 6c01ba3c6a StereoSound core setting fixed (was not used after core initliazation 2018-03-13 19:01:13 +00:00
Asnivor 9778cc2644 Reduced the AY center channel volume for better balance 2018-03-13 18:52:00 +00:00
alyosha-tas d481624f9e C64: Fix mapper F 2018-03-13 14:03:18 -04:00
alyosha-tas c4497b7c76 C64: Fix 4 in 1 (pot's should return 0xFF instead of 0 when not connected.) 2018-03-13 13:00:56 -04:00
Asnivor f612ae043b Disabled tape trap auto-stop (this is more trouble than its worth - tzx formats should include 'stopthetape' blocks anyway, and tap files are generally junk and should be discouraged) 2018-03-13 14:08:53 +00:00
Asnivor a7ed14cfe1 new IPSG interface ahead of trying to A/B a version of the ColecoHawk AY-3-8910 2018-03-13 14:00:29 +00:00
Asnivor 4e088574cf more code tidy 2018-03-13 13:20:09 +00:00
Asnivor a55cf000e7 Some code tidy 2018-03-13 13:09:44 +00:00
Asnivor 97c453ae91 Fixed zx16 machine after memory changes 2018-03-13 12:48:08 +00:00
Asnivor 33aa77d8e3 Removed [CoreConstructor("ZXSpectrum")] identifier (as this was causing an exception when loading roms for other systems 2018-03-12 18:17:06 +00:00
Asnivor baa46f3c99 Detection method for 48k (or 128k in 48k mode) - needed for 'stop the tape 48k' tzx block command detection 2018-03-12 15:48:00 +00:00
Asnivor 213437362d Memory overhaul for a nice performance benefit 2018-03-12 15:22:06 +00:00
Asnivor deba6b18b8 Added 'Get Tape Status' keybinding - fires an OSD message with state info about the current tape 2018-03-12 14:37:45 +00:00
Asnivor ccb5947ade Finished port IO contention rewrites 2018-03-12 12:00:17 +00:00
Asnivor 0bd433210e Fixed tzx tape standard data block PauseAfter value. Now speedlock7 encoded games should work 2018-03-12 10:20:56 +00:00
Asnivor ae8b030e57 Started new port contention methods and increased the auto-tape monitor timeout (to eliminate false-positive stops) 2018-03-12 10:19:42 +00:00
alyosha-tas 3d0ff89474 C64: Fix leaderboard Golf, but Serial Port interrupts need to be done correctly. 2018-03-11 11:44:15 -04:00
alyosha-tas 8165fdaaeb C64: Partial Fixes for Leaderboard Golf and 4-in-1 2018-03-11 10:41:11 -04:00
Asnivor 8708e987f7 Improved tape auto-loading functions 2018-03-09 17:52:04 +00:00
Asnivor 31328dac2b Readme progress update! 2018-03-08 22:10:16 +00:00
Asnivor c7fe4c2887 Datacorder - implement basic manual tape block navigation (i.e. NextBlock, PrevBlock) 2018-03-08 21:25:19 +00:00