summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2020-02-02 04:19:17 +1100
committer Vas Crabb <vas@vastheman.com>2020-02-02 04:19:17 +1100
commit753dd7944226dced299d0e6317ad7d3e38177d02 (patch)
tree6594d06d8e5f8b8ca06f1d0286deea0505fd25ce
parented4aa2ec9a658ff378daddb0c5ac08d86152af60 (diff)
parent4bf541695a96ad3a01e1327a3badaba5109f55d8 (diff)
Merge branch 'release0218' into mainline-master
-rw-r--r--src/devices/bus/isa/s3virge.cpp26
-rw-r--r--src/devices/bus/multibus/isbc202.cpp42
-rw-r--r--src/devices/bus/ti99/internal/992board.cpp4
-rw-r--r--src/devices/cpu/gigatron/gigatron.cpp305
-rw-r--r--src/devices/machine/s3c24xx.hxx71
-rw-r--r--src/emu/xtal.cpp2
-rw-r--r--src/lib/formats/img_dsk.cpp40
-rw-r--r--src/lib/formats/img_dsk.h12
-rw-r--r--src/mame/drivers/spg2xx.cpp1
-rw-r--r--src/mame/drivers/spg2xx_dreamlife.cpp2
-rw-r--r--src/mame/drivers/spg2xx_ican.cpp3
-rw-r--r--src/mame/drivers/spg2xx_jakks.cpp3
-rw-r--r--src/mame/drivers/spg2xx_lexibook.cpp2
-rw-r--r--src/mame/drivers/spg2xx_pdc.cpp2
-rw-r--r--src/mame/drivers/spg2xx_playvision.cpp2
-rw-r--r--src/mame/drivers/spg2xx_senario.cpp3
-rw-r--r--src/mame/drivers/spg2xx_senario_poker.cpp2
-rw-r--r--src/mame/drivers/spg2xx_shredmjr.cpp2
-rw-r--r--src/mame/drivers/spg2xx_telestory.cpp3
-rw-r--r--src/mame/drivers/spg2xx_tvgogo.cpp3
-rw-r--r--src/mame/drivers/spg2xx_vii.cpp3
-rw-r--r--src/mame/drivers/spg2xx_zone.cpp2
-rw-r--r--src/mame/drivers/spg2xx_zone_32bit.cpp2
-rw-r--r--src/mame/includes/spg2xx.h4
-rw-r--r--src/mame/mame.lst196
25 files changed, 387 insertions, 350 deletions
diff --git a/src/devices/bus/isa/s3virge.cpp b/src/devices/bus/isa/s3virge.cpp
index d24e0893fb0..111d87002e8 100644
--- a/src/devices/bus/isa/s3virge.cpp
+++ b/src/devices/bus/isa/s3virge.cpp
@@ -80,9 +80,9 @@ void s3virge_vga_device::device_start()
vga.memory.resize(vga.svga_intf.vram_size);
memset(&vga.memory[0], 0, vga.svga_intf.vram_size);
save_item(vga.memory,"Video RAM");
- save_pointer(vga.crtc.data,"CRTC Registers",0x100);
- save_pointer(vga.sequencer.data,"Sequencer Registers",0x100);
- save_pointer(vga.attribute.data,"Attribute Registers", 0x15);
+ save_item(vga.crtc.data,"CRTC Registers");
+ save_item(vga.sequencer.data,"Sequencer Registers");
+ save_item(vga.attribute.data,"Attribute Registers");
m_vblank_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(vga_device::vblank_timer_cb),this));
m_draw_timer = timer_alloc(TIMER_DRAW_STEP);
@@ -91,12 +91,12 @@ void s3virge_vga_device::device_start()
memset(&s3virge, 0, sizeof(s3virge));
s3virge.linear_address = 0x70000000;
s3virge.s3d.cmd_fifo_slots_free = 16;
- save_pointer(s3virge.s3d.pattern,"S3D Pattern Data", 0xc0);
- save_pointer(s3virge.s3d.reg[0],"S3D Registers: BitBLT",0x100);
- save_pointer(s3virge.s3d.reg[1],"S3D Registers: 2D Line",0x100);
- save_pointer(s3virge.s3d.reg[2],"S3D Registers: 2D Polygon",0x100);
- save_pointer(s3virge.s3d.reg[3],"S3D Registers: 3D Line",0x100);
- save_pointer(s3virge.s3d.reg[4],"S3D Registers: 3D Triangle",0x100);
+ save_item(s3virge.s3d.pattern,"S3D Pattern Data");
+ save_item(s3virge.s3d.reg[0],"S3D Registers: BitBLT");
+ save_item(s3virge.s3d.reg[1],"S3D Registers: 2D Line");
+ save_item(s3virge.s3d.reg[2],"S3D Registers: 2D Polygon");
+ save_item(s3virge.s3d.reg[3],"S3D Registers: 3D Line");
+ save_item(s3virge.s3d.reg[4],"S3D Registers: 3D Triangle");
// Initialise hardware graphics cursor colours, Windows 95 doesn't touch the registers for some reason
for(x=0;x<4;x++)
@@ -932,7 +932,7 @@ void s3virge_vga_device::command_start()
m_draw_timer->adjust(attotime::from_nsec(250),0,attotime::from_nsec(250));
s3virge.s3d.bitblt_step_count = 0;
s3virge.s3d.bitblt_mono_pattern =
- s3virge.s3d.cmd_fifo[s3virge.s3d.cmd_fifo_current_ptr].reg[S3D_REG_MONO_PAT_0] | (uint64_t)(s3virge.s3d.cmd_fifo[s3virge.s3d.cmd_fifo_current_ptr].reg[S3D_REG_MONO_PAT_1]) << 32;
+ s3virge.s3d.cmd_fifo[s3virge.s3d.cmd_fifo_current_ptr].reg[S3D_REG_MONO_PAT_0] | (uint64_t)(s3virge.s3d.cmd_fifo[s3virge.s3d.cmd_fifo_current_ptr].reg[S3D_REG_MONO_PAT_1]) << 32;
s3virge.s3d.bitblt_current_pixel = 0;
s3virge.s3d.bitblt_pixel_pos = 0;
s3virge.s3d.cmd_fifo[s3virge.s3d.cmd_fifo_current_ptr].reg[S3D_REG_PAT_BG_CLR] = 0xffffffff; // win31 never sets this?
@@ -1058,8 +1058,10 @@ bool s3virge_vga_device::advance_pixel()
s3virge.s3d.bitblt_pat_x = s3virge.s3d.bitblt_x_current % 8;
if(s3virge.s3d.bitblt_pat_y >= 8 || s3virge.s3d.bitblt_pat_y < 0)
s3virge.s3d.bitblt_pat_y = s3virge.s3d.bitblt_y_current % 8;
- logerror("SRC: %i,%i DST: %i,%i PAT: %i,%i Bounds: %i,%i,%i,%i\n",
- s3virge.s3d.bitblt_x_src_current,s3virge.s3d.bitblt_y_src_current,s3virge.s3d.bitblt_x_current,s3virge.s3d.bitblt_y_current,s3virge.s3d.bitblt_pat_x,s3virge.s3d.bitblt_pat_y,
+ logerror("SRC: %i,%i DST: %i,%i PAT: %i,%i Bounds: %i,%i,%i,%i\n",
+ s3virge.s3d.bitblt_x_src_current,s3virge.s3d.bitblt_y_src_current,
+ s3virge.s3d.bitblt_x_current,s3virge.s3d.bitblt_y_current,
+ s3virge.s3d.bitblt_pat_x,s3virge.s3d.bitblt_pat_y,
left,right,top,bottom);
if((s3virge.s3d.bitblt_y_current >= bottom) || (s3virge.s3d.bitblt_y_current <= top))
return true;
diff --git a/src/devices/bus/multibus/isbc202.cpp b/src/devices/bus/multibus/isbc202.cpp
index 864856eca8c..490ed125e97 100644
--- a/src/devices/bus/multibus/isbc202.cpp
+++ b/src/devices/bus/multibus/isbc202.cpp
@@ -135,11 +135,11 @@ offs_t isbc202_disassembler::disassemble(std::ostream &stream, offs_t pc, const
uint32_t microcode = opcodes.r32(pc);
// Decode address control instruction
- uint8_t ac = (uint8_t)(microcode >> 25);
+ uint8_t ac = uint8_t(microcode >> 25);
if ((ac & 0b1100000) == 0b0000000) {
// JCC
- util::stream_format(stream , "JCC $%03x" , (((uint16_t)ac & 0b11111) << 4) | (pc & 0xf));
+ util::stream_format(stream , "JCC $%03x" , ((uint16_t(ac) & 0b11111) << 4) | (pc & 0xf));
} else if ((ac & 0b1110000) == 0b0100000) {
// JZR
util::stream_format(stream , "JZR $00%x" , ac & 0b1111);
@@ -173,11 +173,11 @@ offs_t isbc202_disassembler::disassemble(std::ostream &stream, offs_t pc, const
}
// Decode input multiplexer
- uint8_t in = (uint8_t)((microcode >> 13) & 7);
+ uint8_t in = uint8_t((microcode >> 13) & 7);
util::stream_format(stream , " I=%u" , in);
// Decode function code
- uint8_t fc = (uint8_t)((microcode >> 18) & 0x7f);
+ uint8_t fc = uint8_t((microcode >> 18) & 0x7f);
uint8_t fg;
uint8_t rg;
unsigned reg;
@@ -189,8 +189,8 @@ offs_t isbc202_disassembler::disassemble(std::ostream &stream, offs_t pc, const
stream << (BIT(microcode , 16) ? " HCZ" : " SCZ");
// Decode K
- uint8_t slk = (uint8_t)((microcode >> 8) & 3);
- uint8_t mask = (uint8_t)microcode;
+ uint8_t slk = uint8_t((microcode >> 8) & 3);
+ uint8_t mask = uint8_t(microcode);
uint8_t kbus;
if (!BIT(slk , 0)) {
kbus = mask;
@@ -204,7 +204,7 @@ offs_t isbc202_disassembler::disassemble(std::ostream &stream, offs_t pc, const
// Decode OUT
util::stream_format(stream , " S=%u M=$%02x" , slk , mask);
if (BIT(slk , 0) && !BIT(mask , 7)) {
- uint8_t out = (uint8_t)((microcode >> 10) & 7);
+ uint8_t out = uint8_t((microcode >> 10) & 7);
util::stream_format(stream , " O=%u" , out);
}
@@ -481,11 +481,11 @@ void isbc202_device::device_timer(emu_timer &timer, device_timer_id id, int para
}
ROM_START(isbc202)
- ROM_REGION(0x800 , "microcode" , ROMREGION_32BIT | ROMREGION_BE)
- ROM_LOAD32_BYTE("sbc202-a10-0230.bin" , 0x000 , 0x200 , CRC(e8fa3893) SHA1(88fab74b0466e8aac36eee46cd7536ed1b32a2c9))
- ROM_LOAD32_BYTE("sbc202-a11-0261.bin" , 0x001 , 0x200 , CRC(3ad01769) SHA1(4c22b8fc3ea599dd49684ff4dcafc29ec3425c4c))
- ROM_LOAD32_BYTE("sbc202-a12-0233.bin" , 0x002 , 0x200 , CRC(61496232) SHA1(b0473217944b2f6e966d97e97cf5ad8d883a09e4))
- ROM_LOAD32_BYTE("sbc202-a13-0232.bin" , 0x003 , 0x200 , CRC(c369ab86) SHA1(fc3b7f9c3e71ea1442827c51247a9944c6d40b37))
+ ROM_REGION(0x800 , "microcode" , ROMREGION_32BIT | ROMREGION_BE)
+ ROM_LOAD32_BYTE("sbc202-a10-0230.bin" , 0x000 , 0x200 , CRC(e8fa3893) SHA1(88fab74b0466e8aac36eee46cd7536ed1b32a2c9))
+ ROM_LOAD32_BYTE("sbc202-a11-0261.bin" , 0x001 , 0x200 , CRC(3ad01769) SHA1(4c22b8fc3ea599dd49684ff4dcafc29ec3425c4c))
+ ROM_LOAD32_BYTE("sbc202-a12-0233.bin" , 0x002 , 0x200 , CRC(61496232) SHA1(b0473217944b2f6e966d97e97cf5ad8d883a09e4))
+ ROM_LOAD32_BYTE("sbc202-a13-0232.bin" , 0x003 , 0x200 , CRC(c369ab86) SHA1(fc3b7f9c3e71ea1442827c51247a9944c6d40b37))
ROM_END
const tiny_rom_entry *isbc202_device::device_rom_region() const
@@ -571,14 +571,14 @@ void isbc202_device::execute_run()
// 12..10 Output control
// 9..8 SLK field
// 7..0 Mask field
- m_ac = (uint8_t)(m_code_word >> 25);
- m_fc = (uint8_t)((m_code_word >> 18) & 0x7f);
+ m_ac = uint8_t(m_code_word >> 25);
+ m_fc = uint8_t((m_code_word >> 18) & 0x7f);
m_fc32 = BIT(m_code_word , 17);
m_fc10 = BIT(m_code_word , 16);
- m_in_sel = (uint8_t)((m_code_word >> 13) & 7);
- m_out_sel = (uint8_t)((m_code_word >> 10) & 7);
- m_slk = (uint8_t)((m_code_word >> 8) & 3);
- m_mask = (uint8_t)m_code_word;
+ m_in_sel = uint8_t((m_code_word >> 13) & 7);
+ m_out_sel = uint8_t((m_code_word >> 10) & 7);
+ m_slk = uint8_t((m_code_word >> 8) & 3);
+ m_mask = uint8_t(m_code_word);
m_mcu->fc_w((m_fc32 ? 0b1100 : 0b0000) | (m_fc10 ? 0b0011 : 0b0000));
@@ -852,7 +852,7 @@ void isbc202_device::set_output()
if (m_mem_wrt) {
if (!m_wrt_inh) {
// CPU memory write
- uint16_t addr = m_addr_low_out | ((uint16_t)abus_r() << 8);
+ uint16_t addr = m_addr_low_out | (uint16_t(abus_r()) << 8);
if (m_mem_space) {
LOG_BUS("MEM W %04x=%02x\n" , addr , m_data_low_out);
m_mem_space->write_byte(addr , m_data_low_out);
@@ -862,7 +862,7 @@ void isbc202_device::set_output()
}
} else {
// CPU memory read
- uint16_t addr = m_addr_low_out | ((uint16_t)abus_r() << 8);
+ uint16_t addr = m_addr_low_out | (uint16_t(abus_r()) << 8);
if (m_mem_space) {
m_data_low_in = m_mem_space->read_byte(addr);
LOG_BUS("MEM R %04x=%02x\n" , addr , m_data_low_in);
@@ -1130,7 +1130,7 @@ uint8_t isbc202_device::aligned_rd_data(uint16_t sr)
LOG_RD("Aligning by %u bits\n" , bits);
sr <<= bits;
}
- return (uint8_t)(sr >> 8);
+ return uint8_t(sr >> 8);
}
void isbc202_device::rd_bits(unsigned n)
diff --git a/src/devices/bus/ti99/internal/992board.cpp b/src/devices/bus/ti99/internal/992board.cpp
index fcb5d904a68..5bae14a0e9a 100644
--- a/src/devices/bus/ti99/internal/992board.cpp
+++ b/src/devices/bus/ti99/internal/992board.cpp
@@ -12,6 +12,7 @@
***************************************************************************/
#include "emu.h"
+#include "992board.h"
#define LOG_WARN (1U<<1) // Warnings
#define LOG_CRU (1U<<2) // CRU logging
@@ -20,10 +21,9 @@
#define LOG_BANK (1U<<5) // Change ROM banks
#define LOG_KEYBOARD (1U<<6) // Keyboard operation
-#define VERBOSE ( LOG_GENERAL | LOG_WARN )
+#define VERBOSE ( LOG_WARN )
#include "logmacro.h"
-#include "992board.h"
/*
Emulation of the CRT Gate Array of the TI-99/2
diff --git a/src/devices/cpu/gigatron/gigatron.cpp b/src/devices/cpu/gigatron/gigatron.cpp
index 3e687baa930..643e99dabe5 100644
--- a/src/devices/cpu/gigatron/gigatron.cpp
+++ b/src/devices/cpu/gigatron/gigatron.cpp
@@ -13,7 +13,7 @@
#include "gigatrondasm.h"
-DEFINE_DEVICE_TYPE(GTRON, gigatron_cpu_device, "gigatron_cpu", "Gigatron")
+DEFINE_DEVICE_TYPE(GTRON, gigatron_cpu_device, "gigatron_cpu", "Gigatron CPU")
/* FLAGS */
@@ -59,28 +59,28 @@ void gigatron_cpu_device::execute_run()
uint8_t bus = (opcode >> 8) & 0x0003;
uint8_t d = (opcode >> 0) & 0x00ff;
- switch( op)
+ switch (op)
{
- case 0:
- case 1:
- case 2:
- case 3:
- case 4:
- case 5:
- aluOp(op, mode, bus, d);
- break;
- case 6:
- storeOp(op, mode, bus, d);
- break;
- case 7:
- branchOp(op, mode, bus, d);
- break;
- default:
- gigatron_illegal();
- break;
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ aluOp(op, mode, bus, d);
+ break;
+ case 6:
+ storeOp(op, mode, bus, d);
+ break;
+ case 7:
+ branchOp(op, mode, bus, d);
+ break;
+ default:
+ gigatron_illegal();
+ break;
}
m_icount--;
- } while( m_icount > 0 );
+ } while (m_icount > 0);
}
@@ -127,35 +127,37 @@ void gigatron_cpu_device::branchOp(uint8_t op, uint8_t mode, uint8_t bus, uint8_
bool c = false;
uint8_t ac2 = m_ac ^ ZERO;
uint16_t base = m_pc & 0xff00;
- switch (mode) {
- case 0:
- c = true;
- base = m_y << 8;
- break;
- case 1:
- c = (ac2 > ZERO);
- break;
- case 2:
- c = (ac2 < ZERO);
- break;
- case 3:
- c = (ac2 != ZERO);
- break;
- case 4:
- c = (ac2 == ZERO);
- break;
- case 5:
- c = (ac2 >= ZERO);
- break;
- case 6:
- c = (ac2 <= ZERO);
- break;
- case 7:
- c = true;
- break;
+ switch (mode)
+ {
+ case 0:
+ c = true;
+ base = m_y << 8;
+ break;
+ case 1:
+ c = (ac2 > ZERO);
+ break;
+ case 2:
+ c = (ac2 < ZERO);
+ break;
+ case 3:
+ c = (ac2 != ZERO);
+ break;
+ case 4:
+ c = (ac2 == ZERO);
+ break;
+ case 5:
+ c = (ac2 >= ZERO);
+ break;
+ case 6:
+ c = (ac2 <= ZERO);
+ break;
+ case 7:
+ c = true;
+ break;
}
- if (c) {
+ if (c)
+ {
uint8_t b = offset(bus, d);
m_npc = base | b;
}
@@ -164,94 +166,97 @@ void gigatron_cpu_device::branchOp(uint8_t op, uint8_t mode, uint8_t bus, uint8_
void gigatron_cpu_device::aluOp(uint8_t op, uint8_t mode, uint8_t bus, uint8_t d)
{
uint8_t b = 0;
- switch(bus) {
- case 0:
- b = d;
- break;
- case 1:
- b = gigatron_readmem8((uint16_t)(addr(mode, d) & m_ramMask));
- break;
- case 2:
- b = m_ac;
- break;
- case 3:
- b = m_inReg;
- break;
+ switch (bus)
+ {
+ case 0:
+ b = d;
+ break;
+ case 1:
+ b = gigatron_readmem8((uint16_t)(addr(mode, d) & m_ramMask));
+ break;
+ case 2:
+ b = m_ac;
+ break;
+ case 3:
+ b = m_inReg;
+ break;
}
- switch(op) {
- case 1:
- b = (m_ac & b);
- break;
- case 2:
- b = (m_ac | b);
- break;
- case 3:
- b = (m_ac ^ b);
- break;
- case 4:
- b = (m_ac + b);
- break;
- case 5:
- b = (m_ac - b);
- break;
+ switch (op)
+ {
+ case 1:
+ b = (m_ac & b);
+ break;
+ case 2:
+ b = (m_ac | b);
+ break;
+ case 3:
+ b = (m_ac ^ b);
+ break;
+ case 4:
+ b = (m_ac + b);
+ break;
+ case 5:
+ b = (m_ac - b);
+ break;
}
- switch (mode) {
- case 0:
- case 1:
- case 2:
- case 3:
- m_ac = b;
- break;
- case 4:
- m_x = b;
- break;
- case 5:
- m_y = b;
- break;
- case 6:
- case 7:
- uint16_t rising = ~(m_out & b);
- if (rising & 0x40) {
- m_outx = m_ac;
- }
- break;
-
+ switch (mode)
+ {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ m_ac = b;
+ break;
+ case 4:
+ m_x = b;
+ break;
+ case 5:
+ m_y = b;
+ break;
+ case 6:
+ case 7:
+ uint16_t rising = ~(m_out & b);
+ if (rising & 0x40)
+ m_outx = m_ac;
+ break;
}
}
uint16_t gigatron_cpu_device::addr(uint8_t mode, uint8_t d)
{
- switch (mode) {
- case 0:
- case 4:
- case 5:
- case 6:
- return d;
- case 1:
- return m_x;
- case 2:
- return (m_y << 8) | d;
- case 3:
- return (m_y << 8) | m_x;
- case 7:
- uint16_t addr2 = (m_y << 8) | m_x;
- m_x = (m_x + 1) & 0xff;
- return addr2;
+ switch (mode)
+ {
+ case 0:
+ case 4:
+ case 5:
+ case 6:
+ return d;
+ case 1:
+ return m_x;
+ case 2:
+ return (m_y << 8) | d;
+ case 3:
+ return (m_y << 8) | m_x;
+ case 7:
+ uint16_t addr2 = (m_y << 8) | m_x;
+ m_x = (m_x + 1) & 0xff;
+ return addr2;
}
return 0;
}
uint8_t gigatron_cpu_device::offset(uint8_t bus, uint8_t d)
{
- switch (bus) {
- case 0:
- return d;
- case 1:
- return gigatron_readmem8(d);
- case 2:
- return m_ac;
- case 3:
- return m_inReg;
+ switch (bus)
+ {
+ case 0:
+ return d;
+ case 1:
+ return gigatron_readmem8(d);
+ case 2:
+ return m_ac;
+ case 3:
+ return m_inReg;
}
return 0;
}
@@ -259,16 +264,17 @@ uint8_t gigatron_cpu_device::offset(uint8_t bus, uint8_t d)
void gigatron_cpu_device::storeOp(uint8_t op, uint8_t mode, uint8_t bus, uint8_t d)
{
uint8_t b = 0;
- switch (bus) {
- case 0:
- b = d;
- break;
- case 2:
- b = m_ac;
- break;
- case 3:
- b = m_inReg;
- break;
+ switch (bus)
+ {
+ case 0:
+ b = d;
+ break;
+ case 2:
+ b = m_ac;
+ break;
+ case 3:
+ b = m_inReg;
+ break;
}
u16 address = addr(mode, d);
@@ -277,13 +283,14 @@ void gigatron_cpu_device::storeOp(uint8_t op, uint8_t mode, uint8_t bus, uint8_t
else
gigatron_writemem8(address & m_ramMask, b);
- switch (mode) {
- case 4:
- m_x = b;
- break;
- case 5:
- m_y = b;
- break;
+ switch (mode)
+ {
+ case 4:
+ m_x = b;
+ break;
+ case 5:
+ m_y = b;
+ break;
}
}
@@ -294,10 +301,10 @@ void gigatron_cpu_device::device_reset()
void gigatron_cpu_device::execute_set_input(int irqline, int state)
{
#if 0
- switch(irqline)
+ switch (irqline)
{
- default:
- break;
+ default:
+ break;
}
#endif
}
@@ -315,13 +322,13 @@ void gigatron_cpu_device::state_string_export(const device_state_entry &entry, s
{
switch (entry.index())
{
- case STATE_GENFLAGS:
- str = util::string_format("%c%c%c%c",
- m_flags & 0x80 ? 'S':'.',
- m_flags & 0x40 ? 'Z':'.',
- m_flags & 0x20 ? 'V':'.',
- m_flags & 0x10 ? 'C':'.');
- break;
+ case STATE_GENFLAGS:
+ str = util::string_format("%c%c%c%c",
+ m_flags & 0x80 ? 'S':'.',
+ m_flags & 0x40 ? 'Z':'.',
+ m_flags & 0x20 ? 'V':'.',
+ m_flags & 0x10 ? 'C':'.');
+ break;
}
}
diff --git a/src/devices/machine/s3c24xx.hxx b/src/devices/machine/s3c24xx.hxx
index 63e8dfbd2d7..603ee085b1b 100644
--- a/src/devices/machine/s3c24xx.hxx
+++ b/src/devices/machine/s3c24xx.hxx
@@ -77,45 +77,45 @@
#endif
-#define LOG_RESET (1 << 0)
-#define LOG_ADC (1 << 1)
-#define LOG_LCD_DMA (1 << 2)
-#define LOG_LCD_TIMER (1 << 3)
-#define LOG_LCD_REGS (1 << 4)
-#define LOG_SPI (1 << 5)
-#define LOG_LCD_CFG (1 << 6)
-#define LOG_LCD_TFT (1 << 7)
-#define LOG_LCD_STN (1 << 8)
-#define LOG_CLKPOW (1 << 9)
-#define LOG_MMC (1 << 10)
-#define LOG_IRQS (1 << 11)
-#define LOG_IRQ_REGS (1 << 12)
-#define LOG_FLASH (1 << 13)
-#define LOG_PWM (1 << 14)
-#define LOG_PWM_REGS (1 << 15)
-#define LOG_CAM (1 << 16)
-#define LOG_DMA (1 << 17)
-#define LOG_DMA_REQS (1 << 18)
-#define LOG_DMA_REGS (1 << 19)
-#define LOG_AC97 (1 << 20)
-#define LOG_DMA_TIMERS (1 << 21)
-#define LOG_GPIO (1 << 22)
-#define LOG_MEMCON (1 << 23)
-#define LOG_USBHOST (1 << 24)
-#define LOG_UART (1 << 25)
-#define LOG_USB (1 << 26)
-#define LOG_WDT (1 << 27)
-#define LOG_I2C (1 << 28)
-#define LOG_I2S (1 << 29)
-#define LOG_RTC (1 << 30)
-#define LOG_SDI (1 << 31)
+#define LOG_RESET (u64(1) << 1)
+#define LOG_ADC (u64(1) << 2)
+#define LOG_LCD_DMA (u64(1) << 3)
+#define LOG_LCD_TIMER (u64(1) << 4)
+#define LOG_LCD_REGS (u64(1) << 5)
+#define LOG_SPI (u64(1) << 6)
+#define LOG_LCD_CFG (u64(1) << 7)
+#define LOG_LCD_TFT (u64(1) << 8)
+#define LOG_LCD_STN (u64(1) << 9)
+#define LOG_CLKPOW (u64(1) << 10)
+#define LOG_MMC (u64(1) << 11)
+#define LOG_IRQS (u64(1) << 12)
+#define LOG_IRQ_REGS (u64(1) << 13)
+#define LOG_FLASH (u64(1) << 14)
+#define LOG_PWM (u64(1) << 15)
+#define LOG_PWM_REGS (u64(1) << 16)
+#define LOG_CAM (u64(1) << 17)
+#define LOG_DMA (u64(1) << 18)
+#define LOG_DMA_REQS (u64(1) << 19)
+#define LOG_DMA_REGS (u64(1) << 20)
+#define LOG_AC97 (u64(1) << 21)
+#define LOG_DMA_TIMERS (u64(1) << 22)
+#define LOG_GPIO (u64(1) << 23)
+#define LOG_MEMCON (u64(1) << 24)
+#define LOG_USBHOST (u64(1) << 25)
+#define LOG_UART (u64(1) << 26)
+#define LOG_USB (u64(1) << 27)
+#define LOG_WDT (u64(1) << 28)
+#define LOG_I2C (u64(1) << 29)
+#define LOG_I2S (u64(1) << 30)
+#define LOG_RTC (u64(1) << 31)
+#define LOG_SDI (u64(1) << 32)
#define LOG_ALL (LOG_RESET | LOG_ADC | LOG_LCD_DMA | LOG_LCD_TIMER | LOG_LCD_REGS | LOG_SPI | LOG_LCD_CFG | LOG_LCD_TFT | LOG_LCD_STN \
| LOG_CLKPOW | LOG_MMC | LOG_IRQS | LOG_IRQ_REGS | LOG_FLASH | LOG_PWM | LOG_PWM_REGS | LOG_CAM | LOG_DMA | LOG_DMA_REQS \
| LOG_DMA_REGS | LOG_AC97 | LOG_DMA_TIMERS | LOG_GPIO | LOG_MEMCON | LOG_USBHOST | LOG_UART | LOG_USB \
| LOG_WDT | LOG_I2C | LOG_I2S | LOG_RTC | LOG_SDI)
-#define VERBOSE (LOG_ALL & ~(LOG_FLASH | LOG_UART))
+//#define VERBOSE (LOG_ALL & ~(LOG_FLASH | LOG_UART))
#include "logmacro.h"
/***************************************************************************
@@ -272,11 +272,6 @@ void S3C24_CLASS_NAME::s3c24xx_lcd_dma_reload()
LOGMASKED(LOG_LCD_DMA, "LCD - vramaddr %08X %08X offsize %08X pagewidth %08X\n", m_lcd.vramaddr_cur, m_lcd.vramaddr_max, m_lcd.offsize, m_lcd.pagewidth_max);
m_lcd.dma_data = 0;
m_lcd.dma_bits = 0;
-
- if (machine().input().code_pressed_once(KEYCODE_K))
- {
- s3c24xx_uart_fifo_w(0, 0x55);
- }
}
void S3C24_CLASS_NAME::s3c24xx_lcd_dma_init()
diff --git a/src/emu/xtal.cpp b/src/emu/xtal.cpp
index 2e02b4ab0e0..156a452a1b8 100644
--- a/src/emu/xtal.cpp
+++ b/src/emu/xtal.cpp
@@ -89,7 +89,7 @@ const double XTAL::known_xtals[] = {
3'521'280, /* 3.52128_MHz_XTAL RCA COSMAC VIP */
3'570'000, /* 3.57_MHz_XTAL Telmac TMC-600 */
3'578'640, /* 3.57864_MHz_XTAL Atari Portfolio PCD3311T */
- 3'579'000, /* 3.579_MHz_XTAL BeebOPL */
+ 3'579'000, /* 3.579_MHz_XTAL BeebOPL */
3'579'545, /* 3.579545_MHz_XTAL NTSC color subcarrier, extremely common, used on 100's of PCBs (Keytronic custom part #48-300-010 is equivalent) */
3'686'400, /* 3.6864_MHz_XTAL Baud rate clock for MC68681 and similar UARTs */
3'840'000, /* 3.84_MHz_XTAL Fairlight CMI Alphanumeric Keyboard */
diff --git a/src/lib/formats/img_dsk.cpp b/src/lib/formats/img_dsk.cpp
index 0dfcc7a359f..40093bee4aa 100644
--- a/src/lib/formats/img_dsk.cpp
+++ b/src/lib/formats/img_dsk.cpp
@@ -19,7 +19,7 @@
// Debugging
#define VERBOSE 0
-#define LOG(...) do { if (VERBOSE) printf(__VA_ARGS__); } while (false)
+#define LOG(...) do { if (VERBOSE) osd_printf_info(__VA_ARGS__); } while (false)
constexpr unsigned CELL_SIZE = 1200; // Bit cell size (1 µs)
constexpr uint8_t INDEX_AM = 0x0c; // Index address mark
@@ -31,7 +31,7 @@ constexpr unsigned SYNC_00_LEN = 18; // 00's in sync (gaps 1, 2, 3)
constexpr unsigned SYNC_FF_LEN = 10; // FF's in sync (gaps 1, 2, 3)
constexpr int ID_DATA_OFFSET = 35 * 16; // Nominal distance (in cells) between ID & DATA AM
// Size of image file
-constexpr unsigned IMG_IMAGE_SIZE = IMG_TRACKS * IMG_HEADS * IMG_SECTORS * IMG_SECTOR_SIZE;
+constexpr unsigned IMG_IMAGE_SIZE = img_format::TRACKS * img_format::HEADS * img_format::SECTORS * img_format::SECTOR_SIZE;
constexpr uint16_t CRC_POLY = 0x1021; // CRC-CCITT
img_format::img_format()
@@ -62,7 +62,7 @@ bool img_format::load(io_generic *io, uint32_t form_factor, floppy_image *image)
std::vector<uint8_t> image_data(size);
io_generic_read(io, (void *)image_data.data(), 0, size);
- for (unsigned cyl = 0; cyl < IMG_TRACKS; cyl++) {
+ for (unsigned cyl = 0; cyl < TRACKS; cyl++) {
std::vector<uint32_t> track_data;
write_gap(track_data, 0 , PREIDX_GAP);
@@ -83,9 +83,9 @@ bool img_format::load(io_generic *io, uint32_t form_factor, floppy_image *image)
}
std::vector<uint8_t> sector_list = interleaved_sectors(il_factor);
- for (unsigned sector = 0; sector < IMG_SECTORS; sector++) {
- unsigned real_sector = sector_list[ (sector + skew) % IMG_SECTORS ];
- unsigned offset_in_image = (real_sector - 1 + cyl * IMG_SECTORS) * IMG_SECTOR_SIZE;
+ for (unsigned sector = 0; sector < SECTORS; sector++) {
+ unsigned real_sector = sector_list[ (sector + skew) % SECTORS ];
+ unsigned offset_in_image = (real_sector - 1 + cyl * SECTORS) * SECTOR_SIZE;
write_sector(track_data , cyl , real_sector , &image_data[ offset_in_image ]);
}
fill_with_gap4(track_data);
@@ -96,17 +96,17 @@ bool img_format::load(io_generic *io, uint32_t form_factor, floppy_image *image)
bool img_format::save(io_generic *io, floppy_image *image)
{
- for (int cyl = 0; cyl < IMG_TRACKS; cyl++) {
+ for (int cyl = 0; cyl < TRACKS; cyl++) {
uint8_t bitstream[ 21000 ];
int bitstream_size;
generate_bitstream_from_track(cyl , 0 , CELL_SIZE , bitstream , bitstream_size , image , 0);
int pos = 0;
unsigned track_no , sector_no;
- uint8_t sector_data[ IMG_SECTOR_SIZE ];
+ uint8_t sector_data[ SECTOR_SIZE ];
while (get_next_sector(bitstream , bitstream_size , pos , track_no , sector_no , sector_data)) {
- if (track_no == cyl && sector_no >= 1 && sector_no <= IMG_SECTORS) {
- unsigned offset_in_image = (cyl * IMG_SECTORS + sector_no - 1) * IMG_SECTOR_SIZE;
- io_generic_write(io, sector_data, offset_in_image, IMG_SECTOR_SIZE);
+ if (track_no == cyl && sector_no >= 1 && sector_no <= SECTORS) {
+ unsigned offset_in_image = (cyl * SECTORS + sector_no - 1) * SECTOR_SIZE;
+ io_generic_write(io, sector_data, offset_in_image, SECTOR_SIZE);
}
}
}
@@ -135,18 +135,18 @@ bool img_format::supports_save() const
std::vector<uint8_t> img_format::interleaved_sectors(unsigned il_factor)
{
- std::vector<uint8_t> out(IMG_SECTORS);
+ std::vector<uint8_t> out(SECTORS);
unsigned idx = 0;
- for (unsigned s = 0; s < IMG_SECTORS; s++) {
+ for (unsigned s = 0; s < SECTORS; s++) {
while (out[ idx ] != 0) {
- if (++idx >= IMG_SECTORS) {
+ if (++idx >= SECTORS) {
idx = 0;
}
}
out[ idx ] = s + 1;
idx += il_factor;
- if (idx >= IMG_SECTORS) {
- idx -= IMG_SECTORS;
+ if (idx >= SECTORS) {
+ idx -= SECTORS;
}
}
return out;
@@ -235,7 +235,7 @@ void img_format::write_sector(std::vector<uint32_t> &buffer , uint8_t track_no ,
// Data AM
m_crc = 0;
write_mmfm_byte(buffer , DATA_AM , AM_CLOCK);
- for (unsigned i = 0; i < IMG_SECTOR_SIZE; i++) {
+ for (unsigned i = 0; i < SECTOR_SIZE; i++) {
// Data
write_mmfm_byte(buffer , sect_data[ i ]);
}
@@ -317,7 +317,7 @@ std::vector<uint8_t> img_format::get_next_id_n_block(const uint8_t *bitstream ,
if (data_sr == ID_AM) {
to_dump = 4;
} else if (data_sr == DATA_AM) {
- to_dump = IMG_SECTOR_SIZE;
+ to_dump = SECTOR_SIZE;
} else {
to_dump = 0;
}
@@ -365,12 +365,12 @@ bool img_format::get_next_sector(const uint8_t *bitstream , int bitstream_size ,
if (block.size() == 0) {
return false;
}
- if (block[ 0 ] == DATA_AM && block.size() >= (IMG_SECTOR_SIZE + 1) && abs((data_pos - id_pos) - ID_DATA_OFFSET) <= 64) {
+ if (block[ 0 ] == DATA_AM && block.size() >= (SECTOR_SIZE + 1) && abs((data_pos - id_pos) - ID_DATA_OFFSET) <= 64) {
break;
}
}
- memcpy(sector_data , block.data() + 1 , IMG_SECTOR_SIZE);
+ memcpy(sector_data , block.data() + 1 , SECTOR_SIZE);
return true;
}
diff --git a/src/lib/formats/img_dsk.h b/src/lib/formats/img_dsk.h
index f1ac7aef3c0..ab2c5adc1c2 100644
--- a/src/lib/formats/img_dsk.h
+++ b/src/lib/formats/img_dsk.h
@@ -16,15 +16,15 @@
#include <vector>
-// Geometry constants
-constexpr unsigned IMG_TRACKS = 77;
-constexpr unsigned IMG_HEADS = 1;
-constexpr unsigned IMG_SECTORS = 52;
-constexpr unsigned IMG_SECTOR_SIZE = 128;
-
class img_format : public floppy_image_format_t
{
public:
+ // Geometry constants
+ static constexpr unsigned TRACKS = 77;
+ static constexpr unsigned HEADS = 1;
+ static constexpr unsigned SECTORS = 52;
+ static constexpr unsigned SECTOR_SIZE = 128;
+
img_format();
virtual int identify(io_generic *io, uint32_t form_factor) override;
diff --git a/src/mame/drivers/spg2xx.cpp b/src/mame/drivers/spg2xx.cpp
index e17b256d820..4091d27d68e 100644
--- a/src/mame/drivers/spg2xx.cpp
+++ b/src/mame/drivers/spg2xx.cpp
@@ -148,6 +148,7 @@
*******************************************************************************/
+#include "emu.h"
#include "includes/spg2xx.h"
/*************************
diff --git a/src/mame/drivers/spg2xx_dreamlife.cpp b/src/mame/drivers/spg2xx_dreamlife.cpp
index 53fb40bd29e..e580c308d49 100644
--- a/src/mame/drivers/spg2xx_dreamlife.cpp
+++ b/src/mame/drivers/spg2xx_dreamlife.cpp
@@ -1,7 +1,9 @@
// license:BSD-3-Clause
// copyright-holders:Ryan Holtz, David Haywood
+#include "emu.h"
#include "includes/spg2xx.h"
+
#include "machine/eepromser.h"
class dreamlif_state : public spg2xx_game_state
diff --git a/src/mame/drivers/spg2xx_ican.cpp b/src/mame/drivers/spg2xx_ican.cpp
index 01e2f570fa9..c0892d8feb2 100644
--- a/src/mame/drivers/spg2xx_ican.cpp
+++ b/src/mame/drivers/spg2xx_ican.cpp
@@ -3,10 +3,13 @@
/* Fisher Price / Mattel "I Can..." systems */
+#include "emu.h"
#include "includes/spg2xx.h"
+
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
+
class icanguit_state : public spg2xx_game_state
{
public:
diff --git a/src/mame/drivers/spg2xx_jakks.cpp b/src/mame/drivers/spg2xx_jakks.cpp
index 18590249053..46bbd408382 100644
--- a/src/mame/drivers/spg2xx_jakks.cpp
+++ b/src/mame/drivers/spg2xx_jakks.cpp
@@ -3,9 +3,12 @@
// Note: even after the GameKey port was physically removed and the PCBs redesigned, many of the test modes still show the value read from the port (and many games still show the Game Key Ready splash screen on startup)
+#include "emu.h"
#include "includes/spg2xx.h"
+
#include "bus/jakks_gamekey/slot.h"
+
class jakks_gkr_state : public spg2xx_game_state
{
public:
diff --git a/src/mame/drivers/spg2xx_lexibook.cpp b/src/mame/drivers/spg2xx_lexibook.cpp
index 4519dd4dde1..cf61f2c4aee 100644
--- a/src/mame/drivers/spg2xx_lexibook.cpp
+++ b/src/mame/drivers/spg2xx_lexibook.cpp
@@ -1,8 +1,10 @@
// license:BSD-3-Clause
// copyright-holders:Ryan Holtz, David Haywood
+#include "emu.h"
#include "includes/spg2xx.h"
+
class spg2xx_lexiseal_game_state : public spg2xx_game_state
{
public:
diff --git a/src/mame/drivers/spg2xx_pdc.cpp b/src/mame/drivers/spg2xx_pdc.cpp
index 37bd32d212d..a42d798c1ca 100644
--- a/src/mame/drivers/spg2xx_pdc.cpp
+++ b/src/mame/drivers/spg2xx_pdc.cpp
@@ -1,8 +1,10 @@
// license:BSD-3-Clause
// copyright-holders:Ryan Holtz, David Haywood
+#include "emu.h"
#include "includes/spg2xx.h"
+
class spg2xx_pdc100_game_state : public spg2xx_game_state
{
public:
diff --git a/src/mame/drivers/spg2xx_playvision.cpp b/src/mame/drivers/spg2xx_playvision.cpp
index 7d8650d345b..5fafc471b8f 100644
--- a/src/mame/drivers/spg2xx_playvision.cpp
+++ b/src/mame/drivers/spg2xx_playvision.cpp
@@ -1,7 +1,9 @@
// license:BSD-3-Clause
// copyright-holders:Ryan Holtz, David Haywood
+#include "emu.h"
#include "includes/spg2xx.h"
+
#include "pvmil.lh"
diff --git a/src/mame/drivers/spg2xx_senario.cpp b/src/mame/drivers/spg2xx_senario.cpp
index 4b217e1063a..dc8c945d87f 100644
--- a/src/mame/drivers/spg2xx_senario.cpp
+++ b/src/mame/drivers/spg2xx_senario.cpp
@@ -14,9 +14,12 @@
*/
+#include "emu.h"
#include "includes/spg2xx.h"
+
#include "machine/intelfsh.h"
+
class spg2xx_senario_state : public spg2xx_game_state
{
public:
diff --git a/src/mame/drivers/spg2xx_senario_poker.cpp b/src/mame/drivers/spg2xx_senario_poker.cpp
index 3a532ba3d30..6cbba4ada8b 100644
--- a/src/mame/drivers/spg2xx_senario_poker.cpp
+++ b/src/mame/drivers/spg2xx_senario_poker.cpp
@@ -8,7 +8,9 @@ improve controller hookup / simulation and remove PC-based hacks!
*/
+#include "emu.h"
#include "includes/spg2xx.h"
+
#include "sentx6p.lh"
diff --git a/src/mame/drivers/spg2xx_shredmjr.cpp b/src/mame/drivers/spg2xx_shredmjr.cpp
index bc6304e12ed..09cbdfbc101 100644
--- a/src/mame/drivers/spg2xx_shredmjr.cpp
+++ b/src/mame/drivers/spg2xx_shredmjr.cpp
@@ -1,8 +1,10 @@
// license:BSD-3-Clause
// copyright-holders:Ryan Holtz, David Haywood
+#include "emu.h"
#include "includes/spg2xx.h"
+
class shredmjr_game_state : public spg2xx_game_state
{
public:
diff --git a/src/mame/drivers/spg2xx_telestory.cpp b/src/mame/drivers/spg2xx_telestory.cpp
index bfc9537bd8e..97fde832e7e 100644
--- a/src/mame/drivers/spg2xx_telestory.cpp
+++ b/src/mame/drivers/spg2xx_telestory.cpp
@@ -1,10 +1,13 @@
// license:BSD-3-Clause
// copyright-holders:Ryan Holtz, David Haywood
+#include "emu.h"
#include "includes/spg2xx.h"
+
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
+
class telestory_state : public spg2xx_game_state
{
public:
diff --git a/src/mame/drivers/spg2xx_tvgogo.cpp b/src/mame/drivers/spg2xx_tvgogo.cpp
index 47208b85a09..8fe9e3948c2 100644
--- a/src/mame/drivers/spg2xx_tvgogo.cpp
+++ b/src/mame/drivers/spg2xx_tvgogo.cpp
@@ -1,10 +1,13 @@
// license:BSD-3-Clause
// copyright-holders:Ryan Holtz, David Haywood
+#include "emu.h"
#include "includes/spg2xx.h"
+
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
+
class tvgogo_state : public spg2xx_game_state
{
public:
diff --git a/src/mame/drivers/spg2xx_vii.cpp b/src/mame/drivers/spg2xx_vii.cpp
index 00f71242817..537d2cdd8c9 100644
--- a/src/mame/drivers/spg2xx_vii.cpp
+++ b/src/mame/drivers/spg2xx_vii.cpp
@@ -3,10 +3,13 @@
/* 'Zone' systems */
+#include "emu.h"
#include "includes/spg2xx.h"
+
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
+
class vii_state : public spg2xx_game_state
{
public:
diff --git a/src/mame/drivers/spg2xx_zone.cpp b/src/mame/drivers/spg2xx_zone.cpp
index e31a57533a4..0f74d332205 100644
--- a/src/mame/drivers/spg2xx_zone.cpp
+++ b/src/mame/drivers/spg2xx_zone.cpp
@@ -3,8 +3,10 @@
/* 'Zone' systems */
+#include "emu.h"
#include "includes/spg2xx.h"
+
class wireless60_state : public spg2xx_game_state
{
public:
diff --git a/src/mame/drivers/spg2xx_zone_32bit.cpp b/src/mame/drivers/spg2xx_zone_32bit.cpp
index 7a048a4b2e8..c056fc15f92 100644
--- a/src/mame/drivers/spg2xx_zone_32bit.cpp
+++ b/src/mame/drivers/spg2xx_zone_32bit.cpp
@@ -3,8 +3,10 @@
/* 'Zone' '32-bit' systems */
+#include "emu.h"
#include "includes/spg2xx.h"
+
class zon32bit_state : public spg2xx_game_state
{
public:
diff --git a/src/mame/includes/spg2xx.h b/src/mame/includes/spg2xx.h
index 8ec57d6fabb..d12bc476de1 100644
--- a/src/mame/includes/spg2xx.h
+++ b/src/mame/includes/spg2xx.h
@@ -1,11 +1,9 @@
// license:BSD-3-Clause
// copyright-holders:Ryan Holtz, David Haywood
-#pragma once
-
#ifndef MAME_INCLUDES_SPG2XX_H
#define MAME_INCLUDES_SPG2XX_H
-#include "emu.h"
+#pragma once
#include "cpu/unsp/unsp.h"
#include "machine/i2cmem.h"
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index 4f9e6b9ad3a..93eb25abb89 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -36927,6 +36927,104 @@ speedspn // (c) 1994
@source:speglsht.cpp
speglsht // (c) 1994 Seta
+@source:spg110.cpp
+jak_capb //
+jak_spdmo //
+conyteni //
+conyping //
+conyfght
+
+@source:spg2xx.cpp
+rad_skat //
+rad_skatp //
+rad_sktv //
+rad_crik //
+rad_fb2 //
+mattelcs //
+abltenni //
+tvsprt10 //
+wiwi18 //
+
+@source:spg2xx_dreamlife.cpp
+dreamlif //
+
+@source:spg2xx_ican.cpp
+icanguit //
+icanpian //
+
+@source:spg2xx_jakks.cpp
+jak_batm // The Batman, 2004
+jak_wall //
+jak_wwe //
+jak_fan4 //
+jak_just //
+jak_dora //
+jak_dorr //
+jak_disn //
+jak_disf //
+jak_dpr //
+jak_dprs //
+jak_sith //
+jak_sdoo //
+jak_dbz //
+jak_mpac //
+jak_capc //
+jak_wof //
+jak_spdm //
+jak_pooh //
+jak_care //
+jak_nick //
+jak_sbfc //
+
+@source:spg2xx_lexibook.cpp
+lexizeus // Lexibook
+lexiseal //
+
+@source:spg2xx_pdc.cpp
+pdc100
+tmntpdc
+
+@source:spg2xx_playvision.cpp
+pvmil //
+
+@source:spg2xx_senario.cpp
+senmil
+senbbs
+senapren
+senpmate
+sencosmo
+
+@source:spg2xx_senario_poker.cpp
+sentx6p //
+sentx6puk
+sentx6pd
+
+@source:spg2xx_shredmjr.cpp
+taikeegr //
+shredmjr //
+
+@source:spg2xx_telestory.cpp
+telestry //
+
+@source:spg2xx_tvgogo.cpp
+tvgogo //
+
+@source:spg2xx_vii.cpp
+vii // KenSingTon / Jungle Soft / Siatronics Vii
+
+@source:spg2xx_zone.cpp
+wirels60 // Wireless 60
+zone40 // Zone 40
+reactmd
+itvg49
+zone60 // Zone 60
+zone100 //
+lx_jg7415 //
+
+@source:spg2xx_zone_32bit.cpp
+mywicodx //
+zon32bit // Zone 32-bit
+
@source:spiders.cpp
spiders // (c) 1981 Sigma Ent. Inc.
spiders2 // (c) 1981 Sigma Ent. Inc.
@@ -39846,104 +39944,6 @@ vigilantd // (c) 1988 (Japan Rev D)
vigilantg // (c) 1988 (US Rev G)
vigilanto // (c) 1988 (US)
-@source:spg110.cpp
-jak_capb //
-jak_spdmo //
-conyteni //
-conyping //
-conyfght
-
-@source:spg2xx.cpp
-rad_skat //
-rad_skatp //
-rad_sktv //
-rad_crik //
-rad_fb2 //
-mattelcs //
-abltenni //
-tvsprt10 //
-wiwi18 //
-
-@source:spg2xx_jakks.cpp
-jak_batm // The Batman, 2004
-jak_wall //
-jak_wwe //
-jak_fan4 //
-jak_just //
-jak_dora //
-jak_dorr //
-jak_disn //
-jak_disf //
-jak_dpr //
-jak_dprs //
-jak_sith //
-jak_sdoo //
-jak_dbz //
-jak_mpac //
-jak_capc //
-jak_wof //
-jak_spdm //
-jak_pooh //
-jak_care //
-jak_nick //
-jak_sbfc //
-
-@source:spg2xx_zone.cpp
-wirels60 // Wireless 60
-zone40 // Zone 40
-reactmd
-itvg49
-zone60 // Zone 60
-zone100 //
-lx_jg7415 //
-
-@source:spg2xx_zone_32bit.cpp
-mywicodx //
-zon32bit // Zone 32-bit
-
-@source:spg2xx_senario.cpp
-senmil
-senbbs
-senapren
-senpmate
-sencosmo
-
-@source:spg2xx_senario_poker.cpp
-sentx6p //
-sentx6puk
-sentx6pd
-
-@source:spg2xx_vii.cpp
-vii // KenSingTon / Jungle Soft / Siatronics Vii
-
-@source:spg2xx_ican.cpp
-icanguit //
-icanpian //
-
-@source:spg2xx_playvision.cpp
-pvmil //
-
-@source:spg2xx_shredmjr.cpp
-taikeegr //
-shredmjr //
-
-@source:spg2xx_telestory.cpp
-telestry //
-
-@source:spg2xx_tvgogo.cpp
-tvgogo //
-
-@source:spg2xx_pdc.cpp
-pdc100
-tmntpdc
-
-@source:spg2xx_dreamlife.cpp
-dreamlif //
-
-@source:spg2xx_lexibook.cpp
-lexizeus // Lexibook
-lexiseal //
-
@source:vsmile.cpp
vsmile //
vsmilem //