diff options
Diffstat (limited to 'src/devices')
| -rw-r--r-- | src/devices/bus/gba/rom.cpp | 89 | ||||
| -rw-r--r-- | src/devices/bus/gba/rom.h | 29 | ||||
| -rw-r--r-- | src/devices/bus/megadrive/stm95.cpp | 7 | ||||
| -rw-r--r-- | src/devices/bus/megadrive/stm95.h | 12 | ||||
| -rw-r--r-- | src/devices/bus/snes/bsx.cpp | 44 | ||||
| -rw-r--r-- | src/devices/bus/snes/bsx.h | 10 | ||||
| -rw-r--r-- | src/devices/bus/snes/spc7110.cpp | 152 | ||||
| -rw-r--r-- | src/devices/bus/snes/spc7110.h | 47 |
8 files changed, 242 insertions, 148 deletions
diff --git a/src/devices/bus/gba/rom.cpp b/src/devices/bus/gba/rom.cpp index 643432b8433..fa6162a5a06 100644 --- a/src/devices/bus/gba/rom.cpp +++ b/src/devices/bus/gba/rom.cpp @@ -149,9 +149,13 @@ gba_rom_3dmatrix_device::gba_rom_3dmatrix_device(const machine_config &mconfig, void gba_rom_device::device_start() { - save_item(NAME(m_gpio_regs)); - save_item(NAME(m_gpio_write_only)); - save_item(NAME(m_gpio_dirs)); +} + +void gba_rom_device::device_register_save(save_registrar &save) +{ + save.reg(NAME(m_gpio_regs)) + .reg(NAME(m_gpio_write_only)) + .reg(NAME(m_gpio_dirs)); } void gba_rom_device::device_reset() @@ -174,8 +178,13 @@ void gba_rom_wariotws_device::device_start() { gba_rom_device::device_start(); m_rumble.resolve(); - save_item(NAME(m_last_val)); - save_item(NAME(m_counter)); +} + +void gba_rom_wariotws_device::device_register_save(save_registrar &save) +{ + gba_rom_sram_device::device_register_save(save); + save.reg(NAME(m_last_val)) + .reg(NAME(m_counter)); } void gba_rom_wariotws_device::device_reset() @@ -204,12 +213,23 @@ void gba_rom_eeprom_device::device_start() m_eeprom = std::make_unique<gba_eeprom_device>(machine(), (uint8_t*)get_nvram_base(), get_nvram_size(), 6); } +void gba_rom_eeprom_device::device_register_save(save_registrar &save) +{ + gba_rom_device::device_register_save(save); + save.reg(NAME(m_eeprom)); +} + void gba_rom_yoshiug_device::device_start() { gba_rom_eeprom_device::device_start(); - save_item(NAME(m_tilt_ready)); - save_item(NAME(m_xpos)); - save_item(NAME(m_ypos)); +} + +void gba_rom_yoshiug_device::device_register_save(save_registrar &save) +{ + gba_rom_eeprom_device::device_register_save(save); + save.reg(NAME(m_tilt_ready)) + .reg(NAME(m_xpos)) + .reg(NAME(m_ypos)); } void gba_rom_yoshiug_device::device_reset() @@ -227,13 +247,24 @@ void gba_rom_eeprom64_device::device_start() m_eeprom = std::make_unique<gba_eeprom_device>(machine(), (uint8_t*)get_nvram_base(), get_nvram_size(), 14); } +void gba_rom_eeprom64_device::device_register_save(save_registrar &save) +{ + gba_rom_device::device_register_save(save); + save.reg(NAME(m_eeprom)); +} + void gba_rom_boktai_device::device_start() { gba_rom_eeprom64_device::device_start(); m_rtc = std::make_unique<gba_s3511_device>(machine()); +} - save_item(NAME(m_last_val)); - save_item(NAME(m_counter)); +void gba_rom_boktai_device::device_register_save(save_registrar &save) +{ + gba_rom_eeprom64_device::device_register_save(save); + save.reg(NAME(m_rtc)) + .reg(NAME(m_last_val)) + .reg(NAME(m_counter)); } void gba_rom_boktai_device::device_reset() @@ -248,18 +279,36 @@ void gba_rom_flash_rtc_device::device_start() m_rtc = std::make_unique<gba_s3511_device>(machine()); } +void gba_rom_flash_rtc_device::device_register_save(save_registrar &save) +{ + gba_rom_flash_device::device_register_save(save); + save.reg(NAME(m_rtc)); +} + + void gba_rom_flash1m_rtc_device::device_start() { gba_rom_device::device_start(); m_rtc = std::make_unique<gba_s3511_device>(machine()); } +void gba_rom_flash1m_rtc_device::device_register_save(save_registrar &save) +{ + gba_rom_flash1m_device::device_register_save(save); + save.reg(NAME(m_rtc)); +} + void gba_rom_3dmatrix_device::device_start() { gba_rom_device::device_start(); - save_item(NAME(m_src)); - save_item(NAME(m_dst)); - save_item(NAME(m_nblock)); +} + +void gba_rom_3dmatrix_device::device_register_save(save_registrar &save) +{ + gba_rom_device::device_register_save(save); + save.reg(NAME(m_src)) + .reg(NAME(m_dst)) + .reg(NAME(m_nblock)); } void gba_rom_3dmatrix_device::device_reset() @@ -797,13 +846,6 @@ gba_s3511_device::gba_s3511_device(running_machine &machine) : m_command = 0; m_data_len = 1; m_data[0] = 0; - - m_machine.save().save_item(m_phase, "GBA_RTC/m_phase"); - m_machine.save().save_item(m_data, "GBA_RTC/m_data"); - m_machine.save().save_item(m_last_val, "GBA_RTC/m_last_val"); - m_machine.save().save_item(m_bits, "GBA_RTC/m_bits"); - m_machine.save().save_item(m_command, "GBA_RTC/m_command"); - m_machine.save().save_item(m_data_len, "GBA_RTC/m_data_len"); } @@ -962,13 +1004,6 @@ gba_eeprom_device::gba_eeprom_device(running_machine &machine, uint8_t *eeprom, m_data = eeprom; m_data_size = size; m_addr_bits = addr_bits; - - m_machine.save().save_item(m_state, "GBA_EEPROM/m_state"); - m_machine.save().save_item(m_command, "GBA_EEPROM/m_command"); - m_machine.save().save_item(m_count, "GBA_EEPROM/m_count"); - m_machine.save().save_item(m_addr, "GBA_EEPROM/m_addr"); - m_machine.save().save_item(m_bits, "GBA_EEPROM/m_bits"); - m_machine.save().save_item(m_eep_data, "GBA_EEPROM/m_eep_data"); } uint32_t gba_eeprom_device::read() diff --git a/src/devices/bus/gba/rom.h b/src/devices/bus/gba/rom.h index 3a1ac4005a1..d817087e0a7 100644 --- a/src/devices/bus/gba/rom.h +++ b/src/devices/bus/gba/rom.h @@ -22,6 +22,16 @@ public: int read_line(); void write(uint16_t data, int gpio_dirs); + void register_save(save_registrar &save) + { + save.reg(NAME(m_phase)) + .reg(NAME(m_data)) + .reg(NAME(m_last_val)) + .reg(NAME(m_bits)) + .reg(NAME(m_command)) + .reg(NAME(m_data_len)); + } + protected: enum { @@ -53,6 +63,16 @@ public: uint32_t read(); void write(uint32_t data); + void register_save(save_registrar &save) + { + save.reg(NAME(m_state)) + .reg(NAME(m_command)) + .reg(NAME(m_count)) + .reg(NAME(m_addr)) + .reg(NAME(m_bits)) + .reg(NAME(m_eep_data)); + } + protected: enum { @@ -104,6 +124,7 @@ protected: // device-level overrides virtual void device_start() override; + virtual void device_register_save(save_registrar &save) override; virtual void device_reset() override; private: @@ -163,6 +184,7 @@ public: protected: // device-level overrides virtual void device_start() override; + virtual void device_register_save(save_registrar &save) override; virtual void device_reset() override; private: @@ -214,6 +236,7 @@ public: protected: virtual void device_start() override; + virtual void device_register_save(save_registrar &save) override; private: std::unique_ptr<gba_s3511_device> m_rtc; @@ -260,6 +283,7 @@ public: protected: virtual void device_start() override; + virtual void device_register_save(save_registrar &save) override; private: std::unique_ptr<gba_s3511_device> m_rtc; @@ -283,6 +307,7 @@ protected: // device-level overrides virtual void device_start() override; + virtual void device_register_save(save_registrar &save) override; private: std::unique_ptr<gba_eeprom_device> m_eeprom; @@ -306,6 +331,7 @@ public: protected: virtual void device_start() override; + virtual void device_register_save(save_registrar &save) override; virtual void device_reset() override; private: @@ -333,6 +359,7 @@ protected: // device-level overrides virtual void device_start() override; + virtual void device_register_save(save_registrar &save) override; std::unique_ptr<gba_eeprom_device> m_eeprom; }; @@ -354,6 +381,7 @@ public: private: virtual void device_start() override; + virtual void device_register_save(save_registrar &save) override; virtual void device_reset() override; std::unique_ptr<gba_s3511_device> m_rtc; @@ -377,6 +405,7 @@ public: protected: // device-level overrides virtual void device_start() override; + virtual void device_register_save(save_registrar &save) override; virtual void device_reset() override; private: diff --git a/src/devices/bus/megadrive/stm95.cpp b/src/devices/bus/megadrive/stm95.cpp index e3fca0bbffe..21b729991a6 100644 --- a/src/devices/bus/megadrive/stm95.cpp +++ b/src/devices/bus/megadrive/stm95.cpp @@ -21,13 +21,6 @@ stm95_eeprom_device::stm95_eeprom_device(running_machine &machine, uint8_t *eepr m_machine(machine) { eeprom_data = eeprom; - m_machine.save().save_item(latch, "STM95/latch"); - m_machine.save().save_item(reset_line, "STM95/reset_line"); - m_machine.save().save_item(sck_line, "STM95/sck_line"); - m_machine.save().save_item(WEL, "STM95/WEL"); - m_machine.save().save_item(stream_pos, "STM95/stream_pos"); - m_machine.save().save_item(stream_data, "STM95/stream_data"); - m_machine.save().save_item(eeprom_addr, "STM95/eeprom_addr"); } void stm95_eeprom_device::set_cs_line(int state) diff --git a/src/devices/bus/megadrive/stm95.h b/src/devices/bus/megadrive/stm95.h index c04651d742c..efb9e467492 100644 --- a/src/devices/bus/megadrive/stm95.h +++ b/src/devices/bus/megadrive/stm95.h @@ -29,6 +29,17 @@ public: void set_sck_line(int state); int get_so_line(void); + void register_save(save_registrar &save) + { + save.reg(NAME(latch)) + .reg(NAME(reset_line)) + .reg(NAME(sck_line)) + .reg(NAME(WEL)) + .reg(NAME(stream_pos)) + .reg(NAME(stream_data)) + .reg(NAME(eeprom_addr)); + } + protected: enum STMSTATE { @@ -73,6 +84,7 @@ protected: // device-level overrides virtual void device_start() override; + virtual void device_register_save(save_registrar &save) override { save.reg(NAME(m_stm95)); } virtual void device_reset() override; private: diff --git a/src/devices/bus/snes/bsx.cpp b/src/devices/bus/snes/bsx.cpp index 6aacaa3ed2c..b61ff480a32 100644 --- a/src/devices/bus/snes/bsx.cpp +++ b/src/devices/bus/snes/bsx.cpp @@ -70,15 +70,21 @@ void sns_rom_bsx_device::device_start() m_cart_regs[7] = 0x80; m_cart_regs[8] = 0x80; access_update(); +} + +void sns_rom_bsx_device::device_register_save(save_registrar &save) +{ + sns_rom_device::device_register_save(save); - save_item(NAME(m_cart_regs)); - save_item(NAME(access_00_1f)); - save_item(NAME(access_80_9f)); - save_item(NAME(access_40_4f)); - save_item(NAME(access_50_5f)); - save_item(NAME(access_60_6f)); - save_item(NAME(rom_access)); - save_item(NAME(m_pram)); + save.reg(NAME(m_base_unit)) + .reg(NAME(m_cart_regs)) + .reg(NAME(access_00_1f)) + .reg(NAME(access_80_9f)) + .reg(NAME(access_40_4f)) + .reg(NAME(access_50_5f)) + .reg(NAME(access_60_6f)) + .reg(NAME(rom_access)) + .reg(NAME(m_pram)); } void sns_rom_bsx_device::device_reset() @@ -96,12 +102,18 @@ void sns_rom_bsxhi_device::device_start() void sns_rom_bsmempak_device::device_start() { - save_item(NAME(m_command)); - save_item(NAME(m_write_old)); - save_item(NAME(m_write_new)); - save_item(NAME(m_flash_enable)); - save_item(NAME(m_read_enable)); - save_item(NAME(m_write_enable)); +} + +void sns_rom_bsmempak_device::device_register_save(save_registrar &save) +{ + sns_rom_device::device_register_save(save); + + save.reg(NAME(m_command)) + .reg(NAME(m_write_old)) + .reg(NAME(m_write_new)) + .reg(NAME(m_flash_enable)) + .reg(NAME(m_read_enable)) + .reg(NAME(m_write_enable)); } void sns_rom_bsmempak_device::device_reset() @@ -122,10 +134,6 @@ void sns_rom_bsmempak_device::device_reset() sns_rom_bsx_device::bsx_base::bsx_base(running_machine &machine) : r2192_minute(0), m_machine(machine) { - m_machine.save().save_item(regs, "SNES_BSX/regs"); - m_machine.save().save_item(r2192_counter, "SNES_BSX/r2192_counter"); - m_machine.save().save_item(r2192_hour, "SNES_BSX/r2192_hour"); - m_machine.save().save_item(r2192_second, "SNES_BSX/r2192_second"); } void sns_rom_bsx_device::bsx_base::init() diff --git a/src/devices/bus/snes/bsx.h b/src/devices/bus/snes/bsx.h index e144ff118ff..881cd1e1a64 100644 --- a/src/devices/bus/snes/bsx.h +++ b/src/devices/bus/snes/bsx.h @@ -36,6 +36,14 @@ protected: uint8_t read(uint32_t offset); void write(uint32_t offset, uint8_t data); + void register_save(save_registrar &save) + { + save.reg(NAME(regs)) + .reg(NAME(r2192_counter)) + .reg(NAME(r2192_hour)) + .reg(NAME(r2192_second)); + } + private: // regs uint8_t regs[0x18]; // 0x2188-0x219f @@ -51,6 +59,7 @@ protected: // device-level overrides virtual void device_start() override; + virtual void device_register_save(save_registrar &save) override; virtual void device_reset() override; virtual void device_add_mconfig(machine_config &config) override; @@ -139,6 +148,7 @@ public: protected: // device-level overrides virtual void device_start() override; + virtual void device_register_save(save_registrar &save) override; virtual void device_reset() override; // flash regs diff --git a/src/devices/bus/snes/spc7110.cpp b/src/devices/bus/snes/spc7110.cpp index 20d59dc681a..8ac928788d5 100644 --- a/src/devices/bus/snes/spc7110.cpp +++ b/src/devices/bus/snes/spc7110.cpp @@ -127,57 +127,63 @@ void sns_rom_spc7110_device::spc7110_start() m_r4840 = 0x00; m_r4841 = 0x00; m_r4842 = 0x00; +} - save_item(NAME(m_r4801)); - save_item(NAME(m_r4802)); - save_item(NAME(m_r4803)); - save_item(NAME(m_r4804)); - save_item(NAME(m_r4805)); - save_item(NAME(m_r4806)); - save_item(NAME(m_r4807)); - save_item(NAME(m_r4808)); - save_item(NAME(m_r4809)); - save_item(NAME(m_r480a)); - save_item(NAME(m_r480b)); - save_item(NAME(m_r480c)); - save_item(NAME(m_r4811)); - save_item(NAME(m_r4812)); - save_item(NAME(m_r4813)); - save_item(NAME(m_r4814)); - save_item(NAME(m_r4815)); - save_item(NAME(m_r4816)); - save_item(NAME(m_r4817)); - save_item(NAME(m_r4818)); - save_item(NAME(m_r481x)); - save_item(NAME(m_r4814_latch)); - save_item(NAME(m_r4815_latch)); - save_item(NAME(m_r4820)); - save_item(NAME(m_r4821)); - save_item(NAME(m_r4822)); - save_item(NAME(m_r4823)); - save_item(NAME(m_r4824)); - save_item(NAME(m_r4825)); - save_item(NAME(m_r4826)); - save_item(NAME(m_r4827)); - save_item(NAME(m_r4828)); - save_item(NAME(m_r4829)); - save_item(NAME(m_r482a)); - save_item(NAME(m_r482b)); - save_item(NAME(m_r482c)); - save_item(NAME(m_r482d)); - save_item(NAME(m_r482e)); - save_item(NAME(m_r482f)); - save_item(NAME(m_r4830)); - save_item(NAME(m_r4831)); - save_item(NAME(m_r4832)); - save_item(NAME(m_r4833)); - save_item(NAME(m_r4834)); - save_item(NAME(m_r4840)); - save_item(NAME(m_r4841)); - save_item(NAME(m_r4842)); - save_item(NAME(m_dx_offset)); - save_item(NAME(m_ex_offset)); - save_item(NAME(m_fx_offset)); +void sns_rom_spc7110_device::device_register_save(save_registrar &save) +{ + sns_rom21_device::device_register_save(save); + + save.reg(NAME(m_r4801)) + .reg(NAME(m_r4802)) + .reg(NAME(m_r4803)) + .reg(NAME(m_r4804)) + .reg(NAME(m_r4805)) + .reg(NAME(m_r4806)) + .reg(NAME(m_r4807)) + .reg(NAME(m_r4808)) + .reg(NAME(m_r4809)) + .reg(NAME(m_r480a)) + .reg(NAME(m_r480b)) + .reg(NAME(m_r480c)) + .reg(NAME(m_decomp)) + .reg(NAME(m_r4811)) + .reg(NAME(m_r4812)) + .reg(NAME(m_r4813)) + .reg(NAME(m_r4814)) + .reg(NAME(m_r4815)) + .reg(NAME(m_r4816)) + .reg(NAME(m_r4817)) + .reg(NAME(m_r4818)) + .reg(NAME(m_r481x)) + .reg(NAME(m_r4814_latch)) + .reg(NAME(m_r4815_latch)) + .reg(NAME(m_r4820)) + .reg(NAME(m_r4821)) + .reg(NAME(m_r4822)) + .reg(NAME(m_r4823)) + .reg(NAME(m_r4824)) + .reg(NAME(m_r4825)) + .reg(NAME(m_r4826)) + .reg(NAME(m_r4827)) + .reg(NAME(m_r4828)) + .reg(NAME(m_r4829)) + .reg(NAME(m_r482a)) + .reg(NAME(m_r482b)) + .reg(NAME(m_r482c)) + .reg(NAME(m_r482d)) + .reg(NAME(m_r482e)) + .reg(NAME(m_r482f)) + .reg(NAME(m_r4830)) + .reg(NAME(m_r4831)) + .reg(NAME(m_r4832)) + .reg(NAME(m_r4833)) + .reg(NAME(m_r4834)) + .reg(NAME(m_r4840)) + .reg(NAME(m_r4841)) + .reg(NAME(m_r4842)) + .reg(NAME(m_dx_offset)) + .reg(NAME(m_ex_offset)) + .reg(NAME(m_fx_offset)); } void sns_rom_spc7110_device::device_start() @@ -212,8 +218,6 @@ void sns_rom_spc7110rtc_device::device_start() mapper specific handlers -------------------------------------------------*/ -#define SPC7110_DECOMP_BUFFER_SIZE 64 - static const uint8_t spc7110_evolution_table[53][4] = { { 0x5a, 1, 1, 1 }, @@ -331,50 +335,6 @@ sns_rom_spc7110_device::SPC7110_Decomp::SPC7110_Decomp(running_machine &machine) m_morton32[2][i] = m_morton32[0][i] << 4; m_morton32[3][i] = m_morton32[0][i] << 6; } - - m_machine.save().save_item(m_decomp_mode, "SNES_SPC7110/m_decomp_mode"); - m_machine.save().save_item(m_decomp_offset, "SNES_SPC7110/m_decomp_offset"); - m_machine.save().save_pointer(m_decomp_buffer.get(), "SNES_SPC7110/m_decomp_buffer", SPC7110_DECOMP_BUFFER_SIZE); - m_machine.save().save_item(m_decomp_buffer_rdoffset, "SNES_SPC7110/m_decomp_buffer_rdoffset"); - m_machine.save().save_item(m_decomp_buffer_wroffset, "SNES_SPC7110/m_decomp_buffer_wroffset"); - m_machine.save().save_item(m_decomp_buffer_length, "SNES_SPC7110/m_decomp_buffer_length"); - - for (int i = 0; i < 32; i++) - { - m_machine.save().save_item(m_context[i].index, "SNES_SPC7110/m_context[i].index", i); - m_machine.save().save_item(m_context[i].invert, "SNES_SPC7110/m_context[i].invert", i); - } - - m_machine.save().save_item(m_m0_val, "SNES_SPC7110/m_m0_val"); - m_machine.save().save_item(m_m0_in, "SNES_SPC7110/m_m0_in"); - m_machine.save().save_item(m_m0_span, "SNES_SPC7110/m_m0_span"); - m_machine.save().save_item(m_m0_out, "SNES_SPC7110/m_m0_out"); - m_machine.save().save_item(m_m0_inverts, "SNES_SPC7110/m_m0_inverts"); - m_machine.save().save_item(m_m0_lps, "SNES_SPC7110/m_m0_lps"); - m_machine.save().save_item(m_m0_in_count, "SNES_SPC7110/m_m0_in_count"); - - m_machine.save().save_item(m_m1_pixelorder, "SNES_SPC7110/m_m1_pixelorder"); - m_machine.save().save_item(m_m1_realorder, "SNES_SPC7110/m_m1_realorder"); - m_machine.save().save_item(m_m1_val, "SNES_SPC7110/m_m1_val"); - m_machine.save().save_item(m_m1_in, "SNES_SPC7110/m_m1_in"); - m_machine.save().save_item(m_m1_span, "SNES_SPC7110/m_m1_span"); - m_machine.save().save_item(m_m1_out, "SNES_SPC7110/m_m1_out"); - m_machine.save().save_item(m_m1_inverts, "SNES_SPC7110/m_m1_inverts"); - m_machine.save().save_item(m_m1_lps, "SNES_SPC7110/m_m1_lps"); - m_machine.save().save_item(m_m1_in_count, "SNES_SPC7110/m_m1_in_count"); - - m_machine.save().save_item(m_m2_pixelorder, "SNES_SPC7110/m_m2_pixelorder"); - m_machine.save().save_item(m_m2_realorder, "SNES_SPC7110/m_m2_realorder"); - m_machine.save().save_item(m_m2_bitplanebuffer, "SNES_SPC7110/m_m2_bitplanebuffer"); - m_machine.save().save_item(m_m2_buffer_index, "SNES_SPC7110/m_m2_buffer_index"); - m_machine.save().save_item(m_m2_val, "SNES_SPC7110/m_m2_val"); - m_machine.save().save_item(m_m2_in, "SNES_SPC7110/m_m2_in"); - m_machine.save().save_item(m_m2_span, "SNES_SPC7110/m_m2_span"); - m_machine.save().save_item(m_m2_out0, "SNES_SPC7110/m_m2_out0"); - m_machine.save().save_item(m_m2_out1, "SNES_SPC7110/m_m2_out1"); - m_machine.save().save_item(m_m2_inverts, "SNES_SPC7110/m_m2_inverts"); - m_machine.save().save_item(m_m2_lps, "SNES_SPC7110/m_m2_lps"); - m_machine.save().save_item(m_m2_in_count, "SNES_SPC7110/m_m2_in_count"); } void sns_rom_spc7110_device::SPC7110_Decomp::reset() diff --git a/src/devices/bus/snes/spc7110.h b/src/devices/bus/snes/spc7110.h index a7c798244c1..57104749bc2 100644 --- a/src/devices/bus/snes/spc7110.h +++ b/src/devices/bus/snes/spc7110.h @@ -31,6 +31,7 @@ protected: // device-level overrides virtual void device_start() override; + virtual void device_register_save(save_registrar &save) override; class SPC7110_Decomp { @@ -48,6 +49,50 @@ protected: void mode1(uint8_t init, uint8_t *ROM, uint32_t len); void mode2(uint8_t init, uint8_t *ROM, uint32_t len); + static constexpr int SPC7110_DECOMP_BUFFER_SIZE = 64; + + void register_save(save_registrar &save) + { + save.reg(NAME(m_decomp_mode)) + .reg(NAME(m_decomp_offset)) + .reg(NAME(m_decomp_buffer), SPC7110_DECOMP_BUFFER_SIZE) + .reg(NAME(m_decomp_buffer_rdoffset)) + .reg(NAME(m_decomp_buffer_wroffset)) + .reg(NAME(m_decomp_buffer_length)) + .reg(NAME(m_context)) + + .reg(NAME(m_m0_val)) + .reg(NAME(m_m0_in)) + .reg(NAME(m_m0_span)) + .reg(NAME(m_m0_out)) + .reg(NAME(m_m0_inverts)) + .reg(NAME(m_m0_lps)) + .reg(NAME(m_m0_in_count)) + + .reg(NAME(m_m1_pixelorder)) + .reg(NAME(m_m1_realorder)) + .reg(NAME(m_m1_val)) + .reg(NAME(m_m1_in)) + .reg(NAME(m_m1_span)) + .reg(NAME(m_m1_out)) + .reg(NAME(m_m1_inverts)) + .reg(NAME(m_m1_lps)) + .reg(NAME(m_m1_in_count)) + + .reg(NAME(m_m2_pixelorder)) + .reg(NAME(m_m2_realorder)) + .reg(NAME(m_m2_bitplanebuffer)) + .reg(NAME(m_m2_buffer_index)) + .reg(NAME(m_m2_val)) + .reg(NAME(m_m2_in)) + .reg(NAME(m_m2_span)) + .reg(NAME(m_m2_out0)) + .reg(NAME(m_m2_out1)) + .reg(NAME(m_m2_inverts)) + .reg(NAME(m_m2_lps)) + .reg(NAME(m_m2_in_count)); + } + private: uint8_t dataread(uint8_t *ROM, uint32_t len); @@ -70,6 +115,8 @@ protected: { uint8_t index; uint8_t invert; + + void register_save(save_registrar &save) { save.reg(NAME(index)).reg(NAME(invert)); } } m_context[32]; uint32_t m_morton16[2][256]; |
