Commit Graph

78446 Commits

Author SHA1 Message Date
Aaron Giles 8d047a8f0d Better handling of null/missing items. More consistent error handling. Reduced compression to default to speed up saves. Optimized simple binary saves as well. Device interfaces now have automatic containers. Fixed duplicate entry detection. Added logic to parse an item we're skipping. Added detection of missing/duplicate items from input JSON. Fixed timing for save/load. 2021-04-20 02:12:47 -07:00
Aaron Giles 7e33cb29e2 Update to new save interface to avoid collision 2021-04-20 02:09:51 -07:00
Aaron Giles b36672cff2 Don't forget to call parent device. 2021-04-20 02:09:29 -07:00
Aaron Giles 1ce5dd10d2 Fix voodoo and sharc saving to abide by new rules. 2021-04-19 17:05:15 -07:00
Aaron Giles 4b2560619a Keep link to parent item so that full names can be computed as needed. Remove name accumulation logic from save/load step, along with unnecessary parameters. 2021-04-19 16:49:31 -07:00
Aaron Giles 34b805da31 Differentiated raw arrays from vector arrays. Add warnings for raw arrays that are not in containers. 2021-04-19 14:11:39 -07:00
Aaron Giles 9394ff0593 Detect array members that can't be replicated and manually register each item instead. Remove old ALLOW_SAVE_TYPE now that enums are implicitly supported. Add stricter checking of endpoint offsets. Some other cleanups. 2021-04-19 10:57:25 -07:00
Aaron Giles eac508c0c5 Expose size of device class through the device type. This helps with error checking save state registrations to ensure they are within bounds. 2021-04-19 01:38:19 -07:00
Aaron Giles d296523527 More descriptive errors. Added compare mode and leveraged it to compare saved data against current state. 2021-04-18 01:05:58 -07:00
Aaron Giles f80df5e147 Moved CRC and size calculations into the streamers. Improved validation when parsing. 2021-04-18 00:04:22 -07:00
Aaron Giles 3b74c10a21 Checkpoint on JSON restore after successfully performing a JSON restore. Still needs cleanup. 2021-04-17 12:16:43 -07:00
Aaron Giles 13aee47f5f Implemented save_file. JSON and secondary files are now written to a ZIP-formatted file. 2021-04-16 02:38:34 -07:00
Aaron Giles 2024b61079 g update:
* Removed old saving mechanism entirely, including internal lists of
  items.
* Removed old logic saving to streams/buffers/files.
* Removed old state item iterator; a new mechanism will need to be
  created for this. Stubbed out debugger and LUA calls to it for now.
* Replaced the streams/buffers saves with the new binary save; these are
  presumed to be 100% internal, so there is no header checking or other
  associated logic.
* Stubbed in incomplete file handling for JSON-based saves; large arrays
  are identified and referenced as external, though ZIP writing has not
  been done yet.
* Redid JSON generation using an internal buffer and helpers for speed.
* Added sorting and pruning of save items after registration.
* Added detection of duplicate entries.
* Fixed display of long names in save window.
* Moved timers into their own container.
2021-04-15 09:25:42 -07:00
Aaron Giles 98e8ed3204 Remove final cases where people directly registered state data with the core manager. Fixed array stride calculations in registration. Removed old registration mechanism entirely. 2021-04-14 14:05:19 -07:00
Aaron Giles 90c5a29f41 Replace remaining STRUCT_MEMBER macros with proper structured saves. 2021-04-14 10:02:40 -07:00
Aaron Giles d27be276f3 Convert STRUCT_MEMBERs into proper struct saves for devices/sound/* 2021-04-14 02:17:35 -07:00
Aaron Giles 6bfb3d9976 Convert STRUCT_MEMBERs into proper struct saves for devices/machine/* 2021-04-14 00:53:58 -07:00
Aaron Giles 2843b37394 Replace STRUCT_MEMBER usage from cpu devices with structured saves. Allow unions to be saved in the same manner as structs. Fix pointer saves. 2021-04-13 22:42:30 -07:00
Aaron Giles 889693e57e Add support for std::array and for custom types that map to integers/FP values. Fix up ymfm-related saving. Modernize AY8910 saving. 2021-04-13 18:18:55 -07:00
Aaron Giles 8fb0991e03 Add bitmap support to registrar. 2021-04-12 02:11:48 -07:00
Aaron Giles f65453c232 Added save state window to debugger. Centralized unique/vector/pointer unwrapping. 2021-04-12 01:31:31 -07:00
Aaron Giles 902cce3910 Add explicit unique_ptr/vector containers. Fix registration checks. Added modern saving to namco and ymfm sound. 2021-04-09 21:16:37 -07:00
Aaron Giles b8c568b279 Created new hierarchical save_registrar, which supports self-describing structs and arrays. Converted several core files and structures over to using it. Currently just for testing. 2021-04-09 03:04:35 -07:00
Ivan Vangelista adf5af551b suprgolf.cpp: fixed GFX ROMs loading for albatross. Still needs correct controls to be considered playable 2021-04-08 19:39:09 +02:00
AJR 0b3f153f4d Allow breaking into main menu before the machine fully starts (i.e. just before the initial soft reset) by using the normal "Config Menu" UI input
Note that the minor code shuffling in machine.cpp is necessary to prevent emulation from getting confused if "Select New Game" happens to be selected.
2021-04-09 02:26:45 +10:00
ClawGrip d7fa230add
New working clones (#7940)
------------------
Heavyweight Champ (set 2) [Victor Fernandez (City Game)]
2021-04-09 01:49:39 +10:00
hap c5ab8aebad New working clones
------------------
Diablo 68000 (set 1) [Berger]
2021-04-08 15:53:45 +02:00
AJR 288945937e mn1880d.h: Fix comment 2021-04-08 08:50:11 -04:00
AJR e493e96800 unidasm: Add preliminary MN1860 disassembler (still missing a few opcodes due to lack of documentation) 2021-04-08 08:47:06 -04:00
hap 7b72b123c2 mephisto_milano: don't use mmboard device 2021-04-08 14:15:38 +02:00
Dirk Best 85b4bcd98c basf7100: Initial floppy hookup, tries booting now 2021-04-08 13:14:46 +02:00
Olivier Galibert b663c4bc50 cdu75s: start the driver 2021-04-08 09:15:25 +02:00
Robbbert 10e96f726c mt32: fixed rom size error from recent commit. 2021-04-08 14:36:35 +10:00
arbee eaa4ffcd7d mac128: fix regression from last commit, hbl timer must fire on all scanlines now. [R. Belmont] 2021-04-07 21:32:17 -04:00
arbee ecc33227e0 mac128: Corrected raster and sound/PWM fetch timings. [R. Belmont] 2021-04-07 21:26:57 -04:00
hap 0dca4d3106 mephisto_polgar.cpp: split driver into polgar, risc, milano 2021-04-07 23:11:20 +02:00
Olivier Galibert e0d69fad4c h8: Add the h8/3032 2021-04-07 14:29:28 +02:00
Robbbert bbe2ab5923 trs80: Added support for Level 1 CAS files. 2021-04-07 22:12:44 +10:00
Vas Crabb 3e28cafa55 bus/a2bus: Suppress side effects of Grappler C0nX reads for debugger. 2021-04-07 14:43:42 +10:00
arbee e42e059b23 Add bus/adb for real ADB device emulation [O. Galibert, R. Belmont] 2021-04-06 22:40:10 -04:00
James Wallace ec1cbee4c4 Games promoted to working
------------------------------
Kung Fu (Ace) (IMPACT) (set 1)

Clones promoted to working
----------------------------
Kung Fu (Ace) (IMPACT) (set 2)
Kung Fu (Ace) (IMPACT) (set 3)
Kung Fu (Ace) (IMPACT) (set 4)
Kung Fu (Ace) (IMPACT) (set 5, Whitbread)
2021-04-06 20:23:18 +01:00
ajrhacker ce780ff532
Merge pull request #7936 from mamedev/fm77_adds
New NOT_WORKING software list additions
2021-04-06 15:20:13 -04:00
angelosa 82171f0f54 New NOT_WORKING software list additions
---------------------------------------
fm77av.xml: FM-77AV/20EX Nyumon Disk, F-BASIC V3.3L30 [sampson]
2021-04-06 20:49:12 +02:00
Vas Crabb 958189731b bus/a2bus: Added Orange Micro Grappler printer interface card. 2021-04-07 04:33:43 +10:00
r09 42e49eaf1e
fmtowns_cd.xml: 14 new dumps, 16 replacements, 4 missing floppies added (#7927)
* Added the missing floppy images to Igo Doujou, Air Warrior V1.2L10 and Suikoden - Tenmei no Chikai [cyo.the.vile]
* Added the missing floppy image to Viper GTS [wiggy2k]
* Replaced the Alice no Yakata II, Europa Sensen and Hiouden II images with cleaner unmodified copies [wiggy2k]
* Removed outdated comments and changed some serials and disk labels to reflect their actual names
* Updated the missing list

New working software list additions
-----------------------------------
Dalk (alt floppy disk) [redump.org, wiggy2k]
Kazadama Vol. 2 - Masuo per Masuo - Ikeda Masuo Hanga-shuu [redump.org]
Kouryuuki [redump.org, wiggy2k]
Kusuriyubi no Kyoukasho [redump.org]
Psychic Detective Series Vol. 4 - Orgel (DCCS remake) [redump.org, cyo.the.vile]
Remember Beatles No. 2 - Michelle [redump.org]
Remember Beatles No. 4 - Let It Be [redump.org]
Remember Beatles No. 5 - The Long and Winding Road [redump.org]
Remember Beatles No. 6 - Imagine [redump.org]
Royal Blood [redump.org, cyo.the.vile]
Teitoku no Ketsudan [redump.org, cyo.the.vile]

New not working software list additions
---------------------------------------
Hyper Land [redump.org]
Hyper Note [redump.org]
Planet Harmony [redump.org]

Replaced software list items
----------------------------
Dalk [redump.org]
Europa Sensen [redump.org, wiggy2k]
Hyper Planet Shiki Vol. 2 [redump.org]
Igo Doujou - Honkakuha Yose Tsumego Shinan [redump.org, cyo.the.vile]
King's Bounty - Nusumareta Chitsujo [redump.org]
Morita Shougi II [redump.org]
Mr. Ed Bogas' Music Machine Lite [redump.org]
Nobunaga no Yabou - Bushou Fuuunroku [redump.org]
Nobunaga no Yabou - Tenshouki [redump.org]
Return to Zork [redump.org]
Tanjou - Debut [redump.org]
The Queen of Duellist (HME-166) [redump.org]
Wing Commander Armada [redump.org]

Software list items promoted to working
---------------------------------------
Air Warrior V1.2L10 [cyo.the.vile]
Suikoden - Tenmei no Chikai [cyo.the.vile]
2021-04-07 01:53:31 +10:00
Dirk Best ba29e1f553 New machines marked as NOT_WORKING
----------------------------------
BASF 7120 [rfka01, Dirk Best]
2021-04-06 17:49:05 +02:00
Brandon Munger a39ca5cf96
roland_mt32.cpp: Added mt32 version 2.0.4 ROM dumped from newer revision board with 128K x 8 ROM. (#7933) 2021-04-07 01:26:34 +10:00
MooglyGuy d919a1e095
machine/spg_renderer.cpp: Fixed incorrect handling of 2-bit blend level. (#7932) [Ryan Holtz, simer] 2021-04-07 01:24:21 +10:00
AJR d28b2031c4 Add %o format support to debugger printf command 2021-04-06 11:14:08 -04:00
Vas Crabb b38799131b bus/a2bus: More improvements for Orange Micro buffered Grappler+: [Vas Crabb, Golden Child]
* Fixed another bad bit in microcontroller ROM dump.
* Added rev A variant with 6 MHz microcontroller clock.
2021-04-06 22:04:40 +10:00