mirror of
https://github.com/holub/mame
synced 2025-04-16 21:44:32 +03:00
srcclean (nw)
This commit is contained in:
parent
c5345b9ea8
commit
8dad4881f6
11556
hash/dc.xml
Executable file → Normal file
11556
hash/dc.xml
Executable file → Normal file
File diff suppressed because it is too large
Load Diff
@ -695,10 +695,10 @@ Zurukamashi Ver 2.0 Nikkonren Kikaku
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!--
|
||||
<!--
|
||||
The program disk backup option (needed in order to actually be able to save the game) seems to require a destination disk with 78 writable tracks,
|
||||
instead of the usual 77. Creating an empty MFI image and using it as the target works, and the saves persist between MAME sessions.
|
||||
|
||||
|
||||
The game is playable, but some locations (e.g. the caves after the starting area) should probably have a smaller visible area.
|
||||
Something wrong with the layer drawing code, perhaps?
|
||||
-->
|
||||
|
@ -3492,7 +3492,7 @@ a certain item) -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="strtbatl" cloneof="jangpun2">
|
||||
<description>Street Battle (US, SMS Mode, prototype)</description>
|
||||
<year>1993</year>
|
||||
|
@ -7,81 +7,81 @@ NOTE: This list is here only to document available dumps and it's not hoocked up
|
||||
|
||||
<softwarelist name="hyperscan" description="HyperScan CD-ROMs">
|
||||
|
||||
<software name="ben101">
|
||||
<description>Ben 10 (USE1)</description>
|
||||
<year>2006</year>
|
||||
<publisher>Mattel</publisher>
|
||||
<part interface="cdrom" name="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="ben101" sha1="b9ca64097a69d40c10f4b6412396ec06fcf8179b" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
<software name="ben101">
|
||||
<description>Ben 10 (USE1)</description>
|
||||
<year>2006</year>
|
||||
<publisher>Mattel</publisher>
|
||||
<part interface="cdrom" name="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="ben101" sha1="b9ca64097a69d40c10f4b6412396ec06fcf8179b" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="ben102">
|
||||
<description>Ben 10 (USE2)</description>
|
||||
<year>2006</year>
|
||||
<publisher>Mattel</publisher>
|
||||
<part interface="cdrom" name="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="ben102" sha1="fa34cf65d91251cead457acbb1aa0cb51a26daff" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="iwluse1">
|
||||
<description>IWL - Interstellar Wrestling League (USE1)</description>
|
||||
<year>2006</year>
|
||||
<publisher>Mattel</publisher>
|
||||
<part interface="cdrom" name="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="iwluse1" sha1="ed2751a003d2b1f05153ede4557d6179b20c9444" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="iwluse2">
|
||||
<description>IWL - Interstellar Wrestling League (USE2)</description>
|
||||
<year>2006</year>
|
||||
<publisher>Mattel</publisher>
|
||||
<part interface="cdrom" name="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="iwluse2" sha1="eb61153a60c2df4f08496b072e0ef5df6b181aa6" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="marvelh">
|
||||
<description>Marvel Heroes (USE2)</description>
|
||||
<year>2006</year>
|
||||
<publisher>Mattel</publisher>
|
||||
<part interface="cdrom" name="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="marvelh" sha1="df8094339255ca9c2e44004177fb8cc3737beb2e" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="spidrman">
|
||||
<description>Spider-Man (USE1)</description>
|
||||
<year>2006</year>
|
||||
<publisher>Mattel</publisher>
|
||||
<part interface="cdrom" name="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="spidrman" sha1="41e9419601963883eb12e723e9f7184e983d09af" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="xmen">
|
||||
<description>X-Men (USE)</description>
|
||||
<year>2006</year>
|
||||
<publisher>Mattel</publisher>
|
||||
<part interface="cdrom" name="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="xmen" sha1="d2316c228c42474b429b8b8078f517022c850188" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="ben102">
|
||||
<description>Ben 10 (USE2)</description>
|
||||
<year>2006</year>
|
||||
<publisher>Mattel</publisher>
|
||||
<part interface="cdrom" name="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="ben102" sha1="fa34cf65d91251cead457acbb1aa0cb51a26daff" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="iwluse1">
|
||||
<description>IWL - Interstellar Wrestling League (USE1)</description>
|
||||
<year>2006</year>
|
||||
<publisher>Mattel</publisher>
|
||||
<part interface="cdrom" name="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="iwluse1" sha1="ed2751a003d2b1f05153ede4557d6179b20c9444" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="iwluse2">
|
||||
<description>IWL - Interstellar Wrestling League (USE2)</description>
|
||||
<year>2006</year>
|
||||
<publisher>Mattel</publisher>
|
||||
<part interface="cdrom" name="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="iwluse2" sha1="eb61153a60c2df4f08496b072e0ef5df6b181aa6" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="marvelh">
|
||||
<description>Marvel Heroes (USE2)</description>
|
||||
<year>2006</year>
|
||||
<publisher>Mattel</publisher>
|
||||
<part interface="cdrom" name="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="marvelh" sha1="df8094339255ca9c2e44004177fb8cc3737beb2e" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="spidrman">
|
||||
<description>Spider-Man (USE1)</description>
|
||||
<year>2006</year>
|
||||
<publisher>Mattel</publisher>
|
||||
<part interface="cdrom" name="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="spidrman" sha1="41e9419601963883eb12e723e9f7184e983d09af" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="xmen">
|
||||
<description>X-Men (USE)</description>
|
||||
<year>2006</year>
|
||||
<publisher>Mattel</publisher>
|
||||
<part interface="cdrom" name="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="xmen" sha1="d2316c228c42474b429b8b8078f517022c850188" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
</softwarelist>
|
||||
|
@ -573,7 +573,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="up" supported="no">
|
||||
<description>Up (US)</description>
|
||||
<year>2009</year>
|
||||
@ -584,7 +584,7 @@
|
||||
<rom name="500-13563-A - Up (US).bin" size="8388608" crc="1e2a5031" sha1="ab74239918208cc7dfa7377549086b59e6c40818" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
</software>
|
||||
|
||||
<software name="scooby" supported="no">
|
||||
<description>Scooby Doo! (US)</description>
|
||||
@ -596,7 +596,7 @@
|
||||
<rom name="500-14005-A - Scooby Doo! (US).bin" size="8388608" crc="4cd2c497" sha1="9f06cb4aba2399464a799910be9df1d5678bb23a" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
</software>
|
||||
|
||||
<software name="cars2" supported="no">
|
||||
<description>Cars 2 (US)</description>
|
||||
@ -608,7 +608,7 @@
|
||||
<rom name="500-14320-A - Cars 2 (US).bin" size="8388608" crc="29af42ba" sha1="01263c4b6b178599eca818a514f9a668bdf9081d" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
</software>
|
||||
|
||||
<software name="lernleap" supported="no">
|
||||
<description>Learning with Leap (US)</description>
|
||||
@ -620,7 +620,7 @@
|
||||
<rom name="500-10093 - Learning with Leap (US).bin" size="8388608" crc="2c1fcf40" sha1="ee9dbfa8aabda493cc2a34dc82b253122fa96c91" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
</software>
|
||||
|
||||
<software name="kinderga" supported="no">
|
||||
<description>Kindergarten (US)</description>
|
||||
@ -633,7 +633,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="tfcall" supported="no">
|
||||
<description>Thomas and Friends - Calling all Engines! (US)</description>
|
||||
<year>2005</year>
|
||||
@ -656,7 +656,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="numraid" supported="no">
|
||||
<description>Number Raiders (US)</description>
|
||||
<year>2005</year>
|
||||
@ -667,8 +667,8 @@
|
||||
<rom name="500-11993-A - Number Raiders (US).bin" size="4194304" crc="0f6d55cf" sha1="f30e7d55c5222e85aca08819ff613343b91138a4" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
</software>
|
||||
|
||||
<software name="scoobsnk" supported="no">
|
||||
<description>Scooby Doo! - Spooky Snacks! (US)</description>
|
||||
<year>2005</year>
|
||||
@ -680,7 +680,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="anigeni" supported="no">
|
||||
<description>Animal Genius (US)</description>
|
||||
<year>2005</year>
|
||||
@ -692,7 +692,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="letrpilr" supported="no">
|
||||
<description>Letterpillar (US)</description>
|
||||
<year>2005</year>
|
||||
@ -704,7 +704,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="createcr" supported="no">
|
||||
<description>Creature Create (US)</description>
|
||||
<year>2006</year>
|
||||
@ -739,12 +739,12 @@
|
||||
<rom name="500-13445-A - Ratatouille (US).bin" size="8388608" crc="d0c4de47" sha1="372c61285eee5c8ce2670d12bedb09150fdaaa45" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
</software>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- L-MAX carts -->
|
||||
|
||||
|
||||
<software name="numbrun">
|
||||
<description>Numbers on the Run - Counting on Zero (USA, L-MAX)</description>
|
||||
<year>2005?</year>
|
||||
|
@ -2770,7 +2770,7 @@ A135 : 森林歷險記 / Sēnlín lìxiǎn jì -> Pitfall II (same as R-049 by A
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="zaxxon">
|
||||
<description>Zaxxon (Jpn)</description>
|
||||
<year>1985</year>
|
||||
|
@ -6,7 +6,7 @@ local extlibs = {
|
||||
-- 3rdparty system 3rdparty
|
||||
-- lib name: lib name, include dir
|
||||
--
|
||||
asio = { "asio", "3rdparty/asio/include" },
|
||||
asio = { "asio", "3rdparty/asio/include" },
|
||||
expat = { "expat", "3rdparty/expat/lib" },
|
||||
zlib = { "z", "3rdparty/zlib" },
|
||||
jpeg = { "jpeg", "3rdparty/libjpeg" },
|
||||
|
@ -1418,7 +1418,7 @@ if (CPUS["M6502"]~=null or _OPTIONS["with-tools"]) then
|
||||
table.insert(disasm_custombuildtask, { MAME_DIR .. "src/devices/cpu/m6502/om740.lst" , GEN_DIR .. "emu/cpu/m6502/m740d.hxx", { MAME_DIR .. "src/devices/cpu/m6502/m6502make.py", MAME_DIR .. "src/devices/cpu/m6502/dm740.lst" }, {"@echo Generating m740 disassembler source file...", PYTHON .. " $(1) d m740 $(<) $(2) $(@)" }})
|
||||
table.insert(disasm_custombuildtask, { MAME_DIR .. "src/devices/cpu/m6502/dr65c02.lst", GEN_DIR .. "emu/cpu/m6502/r65c02d.hxx", { MAME_DIR .. "src/devices/cpu/m6502/m6502make.py", }, {"@echo Generating r65c02 disassembler source file...", PYTHON .. " $(1) d r65c02 - $(<) $(@)" }})
|
||||
table.insert(disasm_custombuildtask, { MAME_DIR .. "src/devices/cpu/m6502/oxavix.lst", GEN_DIR .. "emu/cpu/m6502/xavixd.hxx", { MAME_DIR .. "src/devices/cpu/m6502/m6502make.py", MAME_DIR .. "src/devices/cpu/m6502/dxavix.lst" }, {"@echo Generating xavix disassembler source file...", PYTHON .. " $(1) d xavix $(<) $(2) $(@)" }})
|
||||
|
||||
|
||||
table.insert(disasm_dependency, { MAME_DIR .. "src/devices/cpu/m6502/deco16d.cpp", GEN_DIR .. "emu/cpu/m6502/deco16d.hxx" })
|
||||
table.insert(disasm_dependency, { MAME_DIR .. "src/devices/cpu/m6502/m4510d.cpp", GEN_DIR .. "emu/cpu/m6502/m4510d.hxx" })
|
||||
table.insert(disasm_dependency, { MAME_DIR .. "src/devices/cpu/m6502/m6502d.cpp", GEN_DIR .. "emu/cpu/m6502/m6502d.hxx" })
|
||||
|
@ -161,12 +161,12 @@ void a2bus_agat7_ports_device::write_c0nx(uint8_t offset, uint8_t data)
|
||||
}
|
||||
|
||||
/*
|
||||
* 0 ODD
|
||||
* 1 EVEN
|
||||
* 4 INIT
|
||||
* 5 STROBE
|
||||
* 6 /INIT
|
||||
* 7 /STROBE
|
||||
* 0 ODD
|
||||
* 1 EVEN
|
||||
* 4 INIT
|
||||
* 5 STROBE
|
||||
* 6 /INIT
|
||||
* 7 /STROBE
|
||||
*/
|
||||
WRITE8_MEMBER(a2bus_agat7_ports_device::write_portb)
|
||||
{
|
||||
@ -175,13 +175,13 @@ WRITE8_MEMBER(a2bus_agat7_ports_device::write_portb)
|
||||
}
|
||||
|
||||
/*
|
||||
* 1 dip CNTRLESC (0: CPA-80, FX-85, Gemini. 1: D100)
|
||||
* 2 dip ALF0
|
||||
* 3 dip A/BR (0: level, BUSY/READY. 1: edge, ACK)
|
||||
* 4 dip INVD (1: data are sent inverted)
|
||||
* 5 dip ALF1 (00: KOI-8, 01: GOST, 10: CPA-80, 11: FX-85)
|
||||
* 6 dip ABRLEV (0: BUSY, /ACK. 1: READY, ACK)
|
||||
* 7 ready signal from device
|
||||
* 1 dip CNTRLESC (0: CPA-80, FX-85, Gemini. 1: D100)
|
||||
* 2 dip ALF0
|
||||
* 3 dip A/BR (0: level, BUSY/READY. 1: edge, ACK)
|
||||
* 4 dip INVD (1: data are sent inverted)
|
||||
* 5 dip ALF1 (00: KOI-8, 01: GOST, 10: CPA-80, 11: FX-85)
|
||||
* 6 dip ABRLEV (0: BUSY, /ACK. 1: READY, ACK)
|
||||
* 7 ready signal from device
|
||||
*/
|
||||
READ8_MEMBER(a2bus_agat7_ports_device::read_portc)
|
||||
{
|
||||
|
@ -4,12 +4,12 @@
|
||||
ABC CAD Mouse/Hi-res video card
|
||||
|
||||
The ABC CAD was an innovative electronics CAD accessory invented by
|
||||
Marek Gorczyca, Betronex Elektronik AB 1983 to overcome the limitations
|
||||
Marek Gorczyca, Betronex Elektronik AB 1983 to overcome the limitations
|
||||
in the ABC80 microcomputer graphics which was very popular in Sweden at the time.
|
||||
|
||||
The mouse feature is in the form of a small box with a handle sticking out at the front.
|
||||
The handle can be manipulated in one direction by turning it around its internal pivot
|
||||
point left and right. The other dimension in handled by pulling and pushing the handle.
|
||||
The mouse feature is in the form of a small box with a handle sticking out at the front.
|
||||
The handle can be manipulated in one direction by turning it around its internal pivot
|
||||
point left and right. The other dimension in handled by pulling and pushing the handle.
|
||||
One button is available on the top of the handle.
|
||||
|
||||
The mouse is connected via the ABC bus, but also passes through the
|
||||
|
@ -24,7 +24,7 @@ public:
|
||||
|
||||
protected:
|
||||
void abc_cadmouse_mem(address_map &map);
|
||||
void abc_cadmouse_io(address_map &map);
|
||||
void abc_cadmouse_io(address_map &map);
|
||||
|
||||
// device-level overrides
|
||||
virtual void device_start() override;
|
||||
|
@ -291,4 +291,4 @@ SLOT_INTERFACE_START(electron_cart)
|
||||
SLOT_INTERFACE_INTERNAL("sndexp3", ELECTRON_SNDEXP3)
|
||||
SLOT_INTERFACE_INTERNAL("sp64", ELECTRON_SP64)
|
||||
SLOT_INTERFACE_INTERNAL("stlefs", ELECTRON_STLEFS)
|
||||
SLOT_INTERFACE_END
|
||||
SLOT_INTERFACE_END
|
||||
|
@ -54,7 +54,7 @@ protected:
|
||||
virtual DECLARE_WRITE16_MEMBER(write_xst);
|
||||
virtual DECLARE_WRITE16_MEMBER(write_pmc);
|
||||
virtual DECLARE_WRITE16_MEMBER(write_al);
|
||||
|
||||
|
||||
private:
|
||||
required_device<device_t> m_svp;
|
||||
required_ioport m_test_ipt;
|
||||
|
@ -616,14 +616,14 @@ void i960_cpu_device::execute_burst_stall_op(uint32_t opcode)
|
||||
int i;
|
||||
// in case opcode uses an operand call effective address function to fix IP register
|
||||
(void)get_ea(opcode);
|
||||
|
||||
|
||||
// check if our data is ready
|
||||
for(i=m_stall_state.index ; i<m_stall_state.size ;i++)
|
||||
{
|
||||
// count down 1 icount for every read
|
||||
m_icount--;
|
||||
m_r[m_stall_state.t2+i] = i960_read_dword_unaligned(m_stall_state.t1);
|
||||
|
||||
|
||||
// if the host returned stall just save the index and try again on a later moment
|
||||
if(m_stalled == true)
|
||||
{
|
||||
@ -631,7 +631,7 @@ void i960_cpu_device::execute_burst_stall_op(uint32_t opcode)
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// clear stall burst mode
|
||||
m_stall_state.burst_mode = false;
|
||||
// now that we are done we might as well check if there's a pending irq too
|
||||
@ -642,7 +642,7 @@ void i960_cpu_device::execute_op(uint32_t opcode)
|
||||
{
|
||||
uint32_t t1, t2;
|
||||
double t1f, t2f;
|
||||
|
||||
|
||||
switch(opcode >> 24) {
|
||||
case 0x08: // b
|
||||
m_icount--;
|
||||
@ -2074,7 +2074,7 @@ void i960_cpu_device::execute_run()
|
||||
// delay checking irqs if we are in burst stall mode
|
||||
if(m_stall_state.burst_mode == false)
|
||||
check_irqs();
|
||||
|
||||
|
||||
while(m_icount > 0) {
|
||||
m_PIP = m_IP;
|
||||
debugger_instruction_hook(this, m_IP);
|
||||
@ -2190,7 +2190,7 @@ void i960_cpu_device::device_start()
|
||||
save_item(NAME(m_stall_state.t2));
|
||||
save_item(NAME(m_stall_state.burst_mode));
|
||||
|
||||
|
||||
|
||||
state_add( I960_SAT, "sat", m_SAT).formatstr("%08X");
|
||||
state_add( I960_PRCB, "prcb", m_PRCB).formatstr("%08X");
|
||||
state_add( I960_PC, "pc", m_PC).formatstr("%08X");
|
||||
|
@ -73,12 +73,12 @@ public:
|
||||
// on the real hardware (e.g. Model 2's interrupt control registers)
|
||||
void i960_noburst() { m_bursting = 0; }
|
||||
|
||||
void i960_stall()
|
||||
{
|
||||
void i960_stall()
|
||||
{
|
||||
m_stalled = true;
|
||||
m_IP = m_PIP;
|
||||
}
|
||||
|
||||
|
||||
protected:
|
||||
enum { I960_RCACHE_SIZE = 4 };
|
||||
|
||||
|
@ -102,4 +102,4 @@ rti_xav_imp
|
||||
inc_SP();
|
||||
TMP2 = read(SP);
|
||||
m_farbank = TMP2;
|
||||
prefetch();
|
||||
prefetch();
|
||||
|
@ -5,7 +5,7 @@
|
||||
xavix.c
|
||||
|
||||
6502 with custom opcodes
|
||||
integrated gfx / sound / coprocessor?
|
||||
integrated gfx / sound / coprocessor?
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
|
@ -139,9 +139,9 @@
|
||||
1000 1xxx xxxx xxxx . xxxx xxx0 0000 0000 . 1001 00cc cccv vvvv . 101f 0100 wwww wwww [ecu] jsr cc, #xwv/31u << 1
|
||||
1000 1xxx xxxx xxxx . xxxx xxx0 0000 0000 . 1001 00cc cccv vvvv . 101f 1010 wwww wwww [ecu] jmp cc, #xwv/31u << 1, nop
|
||||
1000 1xxx xxxx xxxx . xxxx xxx0 0000 0000 . 1001 00cc cccv vvvv . 101f 1100 wwww wwww [ecu] jsr cc, #xwv/31u << 1, nop
|
||||
1000 1xxx xxxx xxxx . xxxx xxxx xxx0 0qmm . 1001 01oo ooov vvvv . 101f 111p pppw wwww [mem] st_s #xwv/32u, 20000000 + qpom/12u << 2
|
||||
1000 1xxx xxxx xxxx . xxxx xxxx xxx0 1qmm . 1001 01oo ooov vvvv . 101f 111p pppw wwww [mem] st_s #xwv/32u, 20100000 + qpom/12u << 2
|
||||
1000 1xxx xxxx xxxx . xxxx xxxx xxx1 0qmm . 1001 01oo ooov vvvv . 101f 111p pppw wwww [mem] st_s #xwv/32u, 20500000 + qpom/12u << 2
|
||||
1000 1xxx xxxx xxxx . xxxx xxxx xxx0 0qmm . 1001 01oo ooov vvvv . 101f 111p pppw wwww [mem] st_s #xwv/32u, 20000000 + qpom/12u << 2
|
||||
1000 1xxx xxxx xxxx . xxxx xxxx xxx0 1qmm . 1001 01oo ooov vvvv . 101f 111p pppw wwww [mem] st_s #xwv/32u, 20100000 + qpom/12u << 2
|
||||
1000 1xxx xxxx xxxx . xxxx xxxx xxx1 0qmm . 1001 01oo ooov vvvv . 101f 111p pppw wwww [mem] st_s #xwv/32u, 20500000 + qpom/12u << 2
|
||||
1000 1xxx xxxx xxxx . xxxx xxxx xxxx xxxx . 1001 10ww wwwm mmmm . 101f 0000 001n nnnn [alu] add #xw/32s, rm, rn
|
||||
1000 1xxx xxxx xxxx . xxxx xxxx xxxx xxxx . 1001 10ww wwwm mmmm . 101f 0001 001n nnnn [alu] add #xw/32s, rm, rn
|
||||
1000 1xxx xxxx xxxx . xxxx xxxx xxxx xxxx . 1001 10mm mmmw wwww . 101f 0001 100n nnnn [alu] add rm, #xw/32s, rn
|
||||
@ -444,7 +444,7 @@ const nuon_disassembler::reginfo nuon_disassembler::reginfos[] = {
|
||||
{ 0x20501320, "vldzeros" },
|
||||
{ 0x20501330, "vlddebug1" },
|
||||
{ 0x20501340, "vlddebug3" },
|
||||
{ 0x20501340, "vlddebug3" },
|
||||
{ 0x20501340, "vlddebug3" },
|
||||
};
|
||||
|
||||
u32 nuon_disassembler::opcode_alignment() const
|
||||
@ -668,7 +668,7 @@ std::string nuon_disassembler::parse_packet(const data_buffer &opcodes, offs_t &
|
||||
if(m(opc1, 0x7fe4, 0x7804)) return dec(opc1, util::string_format("modulo %s", rx(b(opc1, 3, 2, 0))));
|
||||
if(m(opc1, 0x7ffc, 0x7904)) return dec(opc1);
|
||||
if(m(opc1, 0x7fe4, 0x7a04)) return dec(opc1, util::string_format("range %s", rx(b(opc1, 3, 2, 0))));
|
||||
|
||||
|
||||
return util::string_format("?%04x", opc1);
|
||||
}
|
||||
|
||||
@ -678,7 +678,7 @@ std::string nuon_disassembler::parse_packet(const data_buffer &opcodes, offs_t &
|
||||
cont = m(opc1, 0x0100, 0x0000);
|
||||
if(m(opc1, 0xfeff, 0x8000)) return util::string_format("nop");
|
||||
if(m(opc1, 0xfeff, 0x8200)) return util::string_format("breakpoint");
|
||||
|
||||
|
||||
return util::string_format("?%04x", opc1);
|
||||
}
|
||||
|
||||
@ -989,7 +989,7 @@ std::string nuon_disassembler::parse_packet(const data_buffer &opcodes, offs_t &
|
||||
b(opc3, 0, 5, 0), b(opc4, 0, 5, 0));
|
||||
if(m(opc3, 0xfc00, 0x9800) && m(opc4, 0xefe0, 0xa180))
|
||||
return util::string_format("sub r%d, #%s, r%d",
|
||||
b(opc3, 5, 5, 0),
|
||||
b(opc3, 5, 5, 0),
|
||||
s2x(b(opc1, 0, 11, 21) | b(opc2, 0, 16, 5) | b(opc3, 0, 5, 0), 32),
|
||||
b(opc4, 0, 5, 0));
|
||||
if(m(opc3, 0xfc00, 0x9800) && m(opc4, 0xefff, 0xa280))
|
||||
|
@ -259,10 +259,10 @@ READ32_MEMBER( adsp21062_device::iop_r)
|
||||
{
|
||||
return m_core->dma_status;
|
||||
}
|
||||
default:
|
||||
default:
|
||||
if(!machine().side_effects_disabled())
|
||||
fatalerror("sharc_iop_r: Unimplemented IOP reg %02X at %08X\n", offset, m_core->pc);
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
@ -116,7 +116,7 @@ void k051649_device::device_clock_changed()
|
||||
uint32_t old_rate = m_rate;
|
||||
m_rate = clock()/16;
|
||||
m_mclock = clock();
|
||||
|
||||
|
||||
if (old_rate < m_rate)
|
||||
{
|
||||
m_mixer_buffer.resize(2 * m_rate, 0);
|
||||
|
@ -6,10 +6,10 @@
|
||||
|
||||
OKI MSM9810 ADPCM(2) sound chip.
|
||||
|
||||
TODO:
|
||||
Serial input/output are not verified
|
||||
8-bit Non-linear PCM Algorithm aren't implemented
|
||||
DADR Command is correct?
|
||||
TODO:
|
||||
Serial input/output are not verified
|
||||
8-bit Non-linear PCM Algorithm aren't implemented
|
||||
DADR Command is correct?
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
@ -116,7 +116,7 @@ void okim9810_device::device_start()
|
||||
save_item(NAME(m_global_volume));
|
||||
save_item(NAME(m_filter_type));
|
||||
save_item(NAME(m_output_level));
|
||||
|
||||
|
||||
save_item(NAME(m_dadr));
|
||||
save_item(NAME(m_dadr_start_offset));
|
||||
save_item(NAME(m_dadr_end_offset));
|
||||
@ -459,7 +459,7 @@ WRITE8_MEMBER( okim9810_device::write )
|
||||
void okim9810_device::write_tmp_register(uint8_t data)
|
||||
{
|
||||
m_TMP_register = data;
|
||||
|
||||
|
||||
if (m_dadr < 7)
|
||||
{
|
||||
switch (m_dadr)
|
||||
|
@ -156,7 +156,7 @@ protected:
|
||||
uint8_t m_global_volume; // volume index set with the OPT command
|
||||
uint8_t m_filter_type; // interpolation filter type set with the OPT command
|
||||
uint8_t m_output_level; // flag stating if a voltage follower is connected
|
||||
|
||||
|
||||
int m_dadr;
|
||||
offs_t m_dadr_start_offset;
|
||||
offs_t m_dadr_end_offset;
|
||||
|
@ -516,7 +516,7 @@ void ymf271_device::update_pcm(int slotnum, int32_t *mixp, int length)
|
||||
if (ch1_vol > 65536) ch1_vol = 65536;
|
||||
if (ch2_vol > 65536) ch2_vol = 65536;
|
||||
if (ch3_vol > 65536) ch3_vol = 65536;
|
||||
|
||||
|
||||
*mixp++ += (sample * ch0_vol) >> 16;
|
||||
*mixp++ += (sample * ch1_vol) >> 16;
|
||||
*mixp++ += (sample * ch2_vol) >> 16;
|
||||
@ -1746,7 +1746,7 @@ void ymf271_device::device_start()
|
||||
m_master_clock = clock();
|
||||
init_tables();
|
||||
init_state();
|
||||
|
||||
|
||||
m_mix_buffer.resize(m_master_clock/(384/4));
|
||||
m_stream = machine().sound().stream_alloc(*this, 0, 4, m_master_clock/384);
|
||||
}
|
||||
|
@ -45,7 +45,7 @@ void ppu_vt03_device::set_new_pen(int i)
|
||||
if((i < 0x20) && ((i & 0x3) == 0)) {
|
||||
m_palette->set_pen_color(i & 0x7f, rgb_t(0, 0, 0));
|
||||
} else {
|
||||
if(m_pal_mode == PAL_MODE_NEW_RGB) {
|
||||
if(m_pal_mode == PAL_MODE_NEW_RGB) {
|
||||
uint16_t rgbval = (m_newpal[i&0x7f] & 0xff) | ((m_newpal[(i&0x7f)+0x80] & 0xff)<<8);
|
||||
uint8_t blue = (rgbval & 0x001f) << 3;
|
||||
uint8_t green = (rgbval & 0x3e0) >> 2;
|
||||
@ -91,7 +91,7 @@ void ppu_vt03_device::set_new_pen(int i)
|
||||
if (nPhase == 0) Y += fChroma; // Phase 0 is the upper bound of the waveform
|
||||
if (nPhase ==13) Y -= fChroma; // Phase 13 is the lower bound of the waveform
|
||||
if (nPhase >=14) Y = 0.0; // Phases 14 and 15 always black
|
||||
|
||||
|
||||
float V = sin(fPhase) *C *1.05; // 1.05 needed to get closer to EmuVT palette's color levels in phases 1-12
|
||||
float U = cos(fPhase) *C *1.05;
|
||||
float R = Y + 1.1400*V + 0.0000*U;
|
||||
@ -106,11 +106,11 @@ void ppu_vt03_device::set_new_pen(int i)
|
||||
int RV = R *255.0;
|
||||
int GV = G *255.0;
|
||||
int BV = B *255.0;
|
||||
|
||||
|
||||
m_palette->set_pen_color(i & 0x7f, rgb_t(RV, GV ,BV));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -186,7 +186,7 @@ void ppu_vt03_device::device_reset()
|
||||
set_201x_reg(i, 0x00);
|
||||
|
||||
init_palette(*m_palette, 0);
|
||||
|
||||
|
||||
m_read_bg4_bg3 = 0;
|
||||
m_va34 = 0;
|
||||
}
|
||||
@ -234,7 +234,7 @@ void ppu_vt03_device::make_sprite_pixel_data(uint8_t &pixel_data, int flipx)
|
||||
pixel_data |= (((m_extplanebuf[0] & 1) << 5) | ((m_extplanebuf[1] & 1) << 6));
|
||||
m_extplanebuf[0] = m_extplanebuf[0] >> 1;
|
||||
m_extplanebuf[1] = m_extplanebuf[1] >> 1;
|
||||
|
||||
|
||||
if(is16pix) {
|
||||
uint8_t pix0 = pixel_data & 0x03;
|
||||
uint8_t pix1 = (pixel_data >> 5) & 0x03;
|
||||
|
@ -92,9 +92,9 @@ private:
|
||||
palette_device *m_palette;
|
||||
|
||||
uint8_t m_201x_regs[0x20];
|
||||
|
||||
|
||||
uint8_t m_2012_2017_descramble[0x6];
|
||||
|
||||
|
||||
vtxx_pal_mode m_pal_mode = PAL_MODE_VT0x;
|
||||
|
||||
void set_2010_reg(uint8_t data);
|
||||
|
@ -447,7 +447,7 @@ void devcb_read_base::validity_check(validity_checker &valid) const
|
||||
case CALLBACK_INPUTLINE:
|
||||
case CALLBACK_ASSERTLINE:
|
||||
case CALLBACK_CLEARLINE:
|
||||
case CALLBACK_HOLDLINE:
|
||||
case CALLBACK_HOLDLINE:
|
||||
throw emu_fatalerror("Device read callbacks can't be connected to input lines\n");
|
||||
break;
|
||||
}
|
||||
|
@ -188,7 +188,7 @@ namespace plib {
|
||||
for (; p < e; p++)
|
||||
if (*p != 0)
|
||||
return true;
|
||||
|
||||
|
||||
return false;
|
||||
#else
|
||||
return m_func != nullptr;
|
||||
|
@ -99,10 +99,10 @@ public:
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(acommand_scanline);
|
||||
|
||||
|
||||
void acommand(machine_config &config);
|
||||
void acommand(machine_config &config);
|
||||
void acommand_map(address_map &map);
|
||||
protected:
|
||||
// virtual void video_start() override;
|
||||
// virtual void video_start() override;
|
||||
|
||||
private:
|
||||
required_shared_ptr<uint16_t> m_spriteram;
|
||||
|
@ -58,9 +58,9 @@
|
||||
P30 and P40
|
||||
===========
|
||||
Those were P3 and P4's with an additional 8088 card, a 128K RAM card (some with an extra 32K graphics extension) to support MS-DOS.
|
||||
|
||||
|
||||
comments, testing, modification: rfka01, helwie44
|
||||
|
||||
|
||||
comments, testing, modification: rfka01, helwie44
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
@ -498,7 +498,7 @@ PORT_START("COL.10")
|
||||
PORT_BIT(0x0080, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("ß ?") PORT_CODE(KEYCODE_MINUS) PORT_CHAR(0x00df) PORT_CHAR('?') // ß and ?
|
||||
|
||||
PORT_START("COL.11")
|
||||
PORT_BIT(0x0001, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("TAB") PORT_CODE(KEYCODE_TAB) PORT_CHAR('\t') // TAB key
|
||||
PORT_BIT(0x0001, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("TAB") PORT_CODE(KEYCODE_TAB) PORT_CHAR('\t') // TAB key
|
||||
PORT_BIT(0x0002, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("ENTER") PORT_CODE(KEYCODE_ENTER) PORT_CHAR(13)
|
||||
PORT_BIT(0x0004, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("1 Pad") PORT_CODE(KEYCODE_1_PAD) PORT_CHAR(UCHAR_MAMEKEY(1_PAD))
|
||||
PORT_BIT(0x0008, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("+ Pad") PORT_CODE(KEYCODE_PLUS_PAD) PORT_CHAR(UCHAR_MAMEKEY(PLUS_PAD))
|
||||
@ -672,7 +672,7 @@ PORT_START("COL.10")
|
||||
PORT_BIT(0x0080, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("ß ?") PORT_CODE(KEYCODE_MINUS) PORT_CHAR(0x00df) PORT_CHAR('?') // ß and ?
|
||||
|
||||
PORT_START("COL.11")
|
||||
PORT_BIT(0x0001, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("TAB") PORT_CODE(KEYCODE_TAB) PORT_CHAR('\t') // TAB key
|
||||
PORT_BIT(0x0001, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("TAB") PORT_CODE(KEYCODE_TAB) PORT_CHAR('\t') // TAB key
|
||||
PORT_BIT(0x0002, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("ENTER") PORT_CODE(KEYCODE_ENTER) PORT_CHAR(13)
|
||||
PORT_BIT(0x0004, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("1 Pad") PORT_CODE(KEYCODE_1_PAD) PORT_CHAR(UCHAR_MAMEKEY(1_PAD))
|
||||
PORT_BIT(0x0008, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("+ Pad") PORT_CODE(KEYCODE_PLUS_PAD) PORT_CHAR(UCHAR_MAMEKEY(PLUS_PAD))
|
||||
|
@ -1394,9 +1394,9 @@ ROM_END
|
||||
|
||||
// Nokia Data WS286
|
||||
//ROM_START(nws286 ) // Computer is grey with Nokia logo.
|
||||
// ROM_REGION(0x20000,"bios", 0)
|
||||
// ROM_LOAD16_BYTE( "RYS_103_1002_R8A_3C00_IC-POS_71.BIN", 0x18000, 0x4000, NO_DUMP)
|
||||
// ROM_LOAD16_BYTE( "RYS_103_1003_R8A_8600_IC-POS_69.BIN", 0x18001, 0x4000, NO_DUMP)
|
||||
// ROM_REGION(0x20000,"bios", 0)
|
||||
// ROM_LOAD16_BYTE( "RYS_103_1002_R8A_3C00_IC-POS_71.BIN", 0x18000, 0x4000, NO_DUMP)
|
||||
// ROM_LOAD16_BYTE( "RYS_103_1003_R8A_8600_IC-POS_69.BIN", 0x18001, 0x4000, NO_DUMP)
|
||||
//ROM_END
|
||||
|
||||
/***************************************************************************
|
||||
|
@ -867,7 +867,7 @@ MACHINE_CONFIG_END
|
||||
-------------------------------------------------*/
|
||||
|
||||
//static MACHINE_CONFIG_START( prophet2 )
|
||||
// atom(config);
|
||||
// atom(config);
|
||||
// /* basic machine hardware */
|
||||
// MCFG_CPU_MODIFY(SY6502_TAG)
|
||||
// MCFG_CPU_PROGRAM_MAP(prophet_mem)
|
||||
@ -891,7 +891,7 @@ MACHINE_CONFIG_END
|
||||
-------------------------------------------------*/
|
||||
|
||||
//static MACHINE_CONFIG_START( prophet3 )
|
||||
// atom(config);
|
||||
// atom(config);
|
||||
// /* basic machine hardware */
|
||||
// MCFG_CPU_MODIFY(SY6502_TAG)
|
||||
// MCFG_CPU_PROGRAM_MAP(prophet_mem)
|
||||
@ -909,7 +909,7 @@ MACHINE_CONFIG_END
|
||||
-------------------------------------------------*/
|
||||
|
||||
//static MACHINE_CONFIG_START( atommc )
|
||||
// atom(config);
|
||||
// atom(config);
|
||||
// /* Software lists */
|
||||
// MCFG_SOFTWARE_LIST_ADD("mmc_list","atom_mmc")
|
||||
// MCFG_SOFTWARE_LIST_REMOVE("flop_list")
|
||||
|
@ -1,6 +1,6 @@
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders:Aaron Giles, Angelo Salese
|
||||
/***************************************************************************************
|
||||
/***************************************************************************************
|
||||
|
||||
Badlands - Playmark Bootleg support
|
||||
|
||||
@ -11,9 +11,9 @@
|
||||
- fix sound;
|
||||
- inputs (coins & accelerators);
|
||||
- any way to disable sprites in service mode?
|
||||
|
||||
|
||||
========================================================================================
|
||||
|
||||
|
||||
Year: 1989
|
||||
Producer: Playmark
|
||||
|
||||
@ -54,18 +54,18 @@ uint32_t badlandsbl_state::screen_update_badlandsbl(screen_device &screen, bitma
|
||||
// TODO: is this derived from something else?
|
||||
{
|
||||
gfx_element *gfx = m_gfxdecode->gfx(1);
|
||||
|
||||
|
||||
for(int count=0;count<(0x100-0x10)/2;count+=4)
|
||||
{
|
||||
if((m_spriteram[count+3] & 0xff) == 0xff)
|
||||
return 0;
|
||||
|
||||
|
||||
uint16 tile = m_spriteram[count];
|
||||
int y = (511 - 14) - (m_spriteram[count+1] & 0x1ff);
|
||||
int x = (m_spriteram[count+2] >> 7) - 7;
|
||||
int color = (m_spriteram[count+3] >> 8) & 7;
|
||||
int h = (m_spriteram[count+3] & 0xf) + 1;
|
||||
|
||||
|
||||
for(int yi=0;yi<h;yi++)
|
||||
gfx->transpen(bitmap,cliprect,tile+yi,color,0,0,x,y+yi*8,0);
|
||||
}
|
||||
@ -136,7 +136,7 @@ ADDRESS_MAP_START(badlandsbl_state::bootleg_audio_map)
|
||||
AM_RANGE(0x2000, 0x2005) AM_RAM AM_SHARE("b_sharedram")
|
||||
AM_RANGE(0x2006, 0x3fff) AM_RAM
|
||||
AM_RANGE(0x4000, 0xcfff) AM_ROM AM_REGION("audiorom", 0x4000)
|
||||
AM_RANGE(0xd400, 0xd400) AM_WRITE(bootleg_main_irq_w)
|
||||
AM_RANGE(0xd400, 0xd400) AM_WRITE(bootleg_main_irq_w)
|
||||
AM_RANGE(0xd800, 0xd801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
|
||||
AM_RANGE(0xe000, 0xffff) AM_NOP // either RAM mirror or left-over
|
||||
ADDRESS_MAP_END
|
||||
@ -175,7 +175,7 @@ static const gfx_layout pflayout_bootleg =
|
||||
4,
|
||||
{ RGN_FRAC(0,4), RGN_FRAC(1,4), RGN_FRAC(2,4), RGN_FRAC(3,4) },
|
||||
// TODO: service mode and (most of) in-game uses this arrangement
|
||||
// { RGN_FRAC(1,4), RGN_FRAC(3,4), RGN_FRAC(0,4), RGN_FRAC(2,4) },
|
||||
// { RGN_FRAC(1,4), RGN_FRAC(3,4), RGN_FRAC(0,4), RGN_FRAC(2,4) },
|
||||
{ 0, 1, 2, 3, 4, 5, 6, 7 },
|
||||
{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
|
||||
8*8
|
||||
@ -227,8 +227,8 @@ MACHINE_CONFIG_START(badlandsbl_state::badlandsb)
|
||||
MCFG_CPU_PROGRAM_MAP(bootleg_audio_map)
|
||||
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", badlandsbl_state, bootleg_sound_scanline, "screen", 0, 1)
|
||||
|
||||
// MCFG_QUANTUM_PERFECT_CPU("maincpu")
|
||||
|
||||
// MCFG_QUANTUM_PERFECT_CPU("maincpu")
|
||||
|
||||
MCFG_MACHINE_START_OVERRIDE(badlands_state,badlands)
|
||||
|
||||
MCFG_EEPROM_2816_ADD("eeprom")
|
||||
@ -241,8 +241,8 @@ MACHINE_CONFIG_START(badlandsbl_state::badlandsb)
|
||||
MCFG_PALETTE_MEMBITS(8)
|
||||
|
||||
MCFG_TILEMAP_ADD_STANDARD("playfield", "gfxdecode", 2, badlands_state, get_playfield_tile_info, 8,8, SCAN_ROWS, 64,32)
|
||||
// MCFG_ATARI_MOTION_OBJECTS_ADD("mob", "screen", badlands_state::s_mob_config)
|
||||
// MCFG_ATARI_MOTION_OBJECTS_GFXDECODE("gfxdecode")
|
||||
// MCFG_ATARI_MOTION_OBJECTS_ADD("mob", "screen", badlands_state::s_mob_config)
|
||||
// MCFG_ATARI_MOTION_OBJECTS_GFXDECODE("gfxdecode")
|
||||
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
|
||||
|
@ -6,7 +6,7 @@
|
||||
main CPU is
|
||||
|
||||
PHILIPS
|
||||
|
||||
|
||||
P89C51RD2HBA
|
||||
1C7415
|
||||
AeD0118 G
|
||||
|
@ -853,14 +853,14 @@ MACHINE_CONFIG_START(bnstars_state::bnstars)
|
||||
MCFG_SOUND_ADD("ymf1", YMF271, 16934400)
|
||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||
// MCFG_SOUND_ROUTE(2, "lspeaker", 1.0) Output 2/3 not used?
|
||||
// MCFG_SOUND_ROUTE(3, "rspeaker", 1.0)
|
||||
// MCFG_SOUND_ROUTE(2, "lspeaker", 1.0) Output 2/3 not used?
|
||||
// MCFG_SOUND_ROUTE(3, "rspeaker", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("ymf2", YMF271, 16934400)
|
||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||
// MCFG_SOUND_ROUTE(2, "lspeaker", 1.0) Output 2/3 not used?
|
||||
// MCFG_SOUND_ROUTE(3, "rspeaker", 1.0)
|
||||
// MCFG_SOUND_ROUTE(2, "lspeaker", 1.0) Output 2/3 not used?
|
||||
// MCFG_SOUND_ROUTE(3, "rspeaker", 1.0)
|
||||
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -2033,7 +2033,7 @@ GFXDECODE_END
|
||||
MACHINE_START_MEMBER(cave_state,cave)
|
||||
{
|
||||
m_vblank_end_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(cave_state::cave_vblank_end), this));
|
||||
|
||||
|
||||
save_item(NAME(m_soundbuf_wptr));
|
||||
save_item(NAME(m_soundbuf_rptr));
|
||||
save_item(NAME(m_soundbuf_data));
|
||||
|
@ -238,7 +238,7 @@ MACHINE_CONFIG_START(comebaby_state::comebaby)
|
||||
MCFG_CPU_ADD("maincpu", PENTIUM, (66666666*19)/2) /* Actually a Celeron */
|
||||
MCFG_CPU_PROGRAM_MAP(comebaby_map)
|
||||
MCFG_CPU_IO_MAP(comebaby_io)
|
||||
|
||||
|
||||
pcat_common(config);
|
||||
|
||||
/* video hardware */
|
||||
|
@ -9661,7 +9661,7 @@ ROM_START( sf2amf2 )
|
||||
ROM_LOAD( "fun-u210.bin", 0x00000, 0x40000, CRC(6cfffb11) SHA1(995526183ffd35f92e9096500a3fe6237faaa2dd) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sf2rules ) //
|
||||
ROM_START( sf2rules ) //
|
||||
ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */
|
||||
ROM_LOAD16_BYTE( "prh2.u222", 0x000000, 0x80000, CRC(fff85f9b) SHA1(5e5bc7da471fe15011b91f8c27823fbdace3eac1) )
|
||||
ROM_LOAD16_BYTE( "prl1.u196", 0x000001, 0x80000, CRC(65c28bc9) SHA1(4f9c0e5062f00f115c3b471c7649d0b537cb3575) )
|
||||
|
@ -1992,7 +1992,7 @@ MACHINE_CONFIG_START(dec8_state::lastmisn)
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
|
||||
MCFG_GENERIC_LATCH_8_ADD("soundlatch")
|
||||
|
||||
MCFG_SOUND_ADD("ym1", YM2203, 1500000)
|
||||
@ -2100,7 +2100,7 @@ MACHINE_CONFIG_START(dec8_state::gondo)
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
|
||||
MCFG_GENERIC_LATCH_8_ADD("soundlatch")
|
||||
|
||||
MCFG_SOUND_ADD("ym1", YM2203, 1500000)
|
||||
@ -2333,7 +2333,7 @@ MACHINE_CONFIG_START(dec8_state::oscar)
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
|
||||
MCFG_GENERIC_LATCH_8_ADD("soundlatch")
|
||||
|
||||
MCFG_SOUND_ADD("ym1", YM2203, XTAL(12'000'000)/8) /* verified on pcb */
|
||||
|
@ -45,7 +45,7 @@
|
||||
revision: board # DE-0420-1 where the US set is DE-0359-2.
|
||||
The sound is _not_ hooked up correctly for this set.
|
||||
|
||||
Z80 Sound cpu version games : Music tempo is unverified (it has external timer / IRQ controller?).
|
||||
Z80 Sound cpu version games : Music tempo is unverified (it has external timer / IRQ controller?).
|
||||
|
||||
|
||||
|
||||
|
@ -203,22 +203,22 @@ WRITE32_MEMBER(deco_mlc_state::irq_ram_w)
|
||||
/*
|
||||
TODO : Accurate this from real PCB
|
||||
Word 0 : Used but Unknown
|
||||
skullfng : 0x00000cf3
|
||||
hoops** : 0xffffdfff
|
||||
avengrgs : 0x00000cd3
|
||||
stadhr96 : 0x000028f3
|
||||
skullfng : 0x00000cf3
|
||||
hoops** : 0xffffdfff
|
||||
avengrgs : 0x00000cd3
|
||||
stadhr96 : 0x000028f3
|
||||
|
||||
Word 1 : 0xc0 at shadow, 0x00 at alpha, Other bits unknown
|
||||
skullfng : 0x000000c0 or 0x00000000
|
||||
hoops** : 0xfffffffc
|
||||
avengrgs : 0xffffffff
|
||||
stadhr96 : 0x0000fcc0
|
||||
skullfng : 0x000000c0 or 0x00000000
|
||||
hoops** : 0xfffffffc
|
||||
avengrgs : 0xffffffff
|
||||
stadhr96 : 0x0000fcc0
|
||||
|
||||
Word 2 : Used but unknown
|
||||
skullfng : 0x00200008
|
||||
hoops** : 0x00000000
|
||||
avengrgs : 0x00000000
|
||||
stadhr96 : 0x00200008
|
||||
skullfng : 0x00200008
|
||||
hoops** : 0x00000000
|
||||
avengrgs : 0x00000000
|
||||
stadhr96 : 0x00200008
|
||||
|
||||
Word 3 : Unknown(Always 0)
|
||||
*/
|
||||
|
@ -245,26 +245,26 @@ ADDRESS_MAP_START(igt_gameking_state::igt_gameking_map)
|
||||
// 28050000: SOUND SEL
|
||||
// 28060000: COLOR SEL
|
||||
// 28070000: OUT SEL
|
||||
// AM_RANGE(0x28010000, 0x2801007f) AM_DEVREADWRITE8("quart1", sc28c94_device, read, write, 0x00ff00ff)
|
||||
// AM_RANGE(0x28010000, 0x2801007f) AM_DEVREADWRITE8("quart1", sc28c94_device, read, write, 0x00ff00ff)
|
||||
AM_RANGE(0x28010008, 0x2801000b) AM_READ(uart_status_r)
|
||||
AM_RANGE(0x2801001c, 0x2801001f) AM_WRITENOP
|
||||
AM_RANGE(0x28010030, 0x28010033) AM_READ(uart_status_r) // channel D
|
||||
AM_RANGE(0x28010034, 0x28010037) AM_WRITE(uart_w) // channel D
|
||||
AM_RANGE(0x28020000, 0x280205ff) AM_RAM // CMOS?
|
||||
// AM_RANGE(0x28020000, 0x2802007f) AM_READ(igt_gk_28010008_r) AM_WRITENOP
|
||||
// AM_RANGE(0x28020000, 0x2802007f) AM_READ(igt_gk_28010008_r) AM_WRITENOP
|
||||
AM_RANGE(0x28030000, 0x28030003) AM_READ_PORT("IN0")
|
||||
// AM_RANGE(0x28040000, 0x2804007f) AM_DEVREADWRITE8("quart2", sc28c94_device, read, write, 0x00ff00ff)
|
||||
// AM_RANGE(0x28040000, 0x2804007f) AM_DEVREADWRITE8("quart2", sc28c94_device, read, write, 0x00ff00ff)
|
||||
AM_RANGE(0x28040008, 0x2804000b) AM_WRITE8(unk_w,0x00ff0000)
|
||||
AM_RANGE(0x28040008, 0x2804000b) AM_READWRITE8(irq_vector_r,irq_enable_w,0x000000ff)
|
||||
AM_RANGE(0x28040018, 0x2804001b) AM_READ_PORT("IN1") AM_WRITENOP
|
||||
AM_RANGE(0x2804001c, 0x2804001f) AM_READ_PORT("IN4") AM_WRITENOP
|
||||
AM_RANGE(0x28040028, 0x2804002b) AM_READNOP AM_WRITE8(irq_ack_w,0x00ff0000)
|
||||
// AM_RANGE(0x28040038, 0x2804003b) AM_READ8(timer_r,0x00ff0000)
|
||||
// AM_RANGE(0x28040038, 0x2804003b) AM_READ8(timer_r,0x00ff0000)
|
||||
AM_RANGE(0x28040038, 0x2804003b) AM_READ_PORT("IN2") AM_WRITENOP
|
||||
AM_RANGE(0x2804003c, 0x2804003f) AM_READ_PORT("IN3") AM_WRITENOP
|
||||
AM_RANGE(0x28040050, 0x28040053) AM_READ8(frame_number_r,0x000000ff)
|
||||
AM_RANGE(0x28040054, 0x28040057) AM_WRITENOP
|
||||
// AM_RANGE(0x28040054, 0x28040057) AM_WRITE8(irq_ack_w,0x000000ff)
|
||||
// AM_RANGE(0x28040054, 0x28040057) AM_WRITE8(irq_ack_w,0x000000ff)
|
||||
|
||||
AM_RANGE(0x28050000, 0x28050003) AM_DEVREADWRITE8("ymz", ymz280b_device, read, write, 0x00ff00ff)
|
||||
AM_RANGE(0x28060000, 0x28060003) AM_DEVWRITE8("ramdac",ramdac_device, index_w, 0x000000ff )
|
||||
|
@ -423,7 +423,7 @@ MACHINE_CONFIG_START(gts80b_state::gts80b_s)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
//static MACHINE_CONFIG_START( gts80b_ss )
|
||||
//static gts80b(config);
|
||||
//static gts80b(config);
|
||||
// MCFG_SOUND_ADD("r1sound", GOTTLIEB_SOUND_REV1, 0)
|
||||
// //MCFG_SOUND_ADD("r1sound", GOTTLIEB_SOUND_REV1_WITH_VOTRAX, 0) // votrax crashes
|
||||
// MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
|
||||
|
@ -624,7 +624,7 @@ MACHINE_CONFIG_START(hyperscan_state::hyperscan)
|
||||
MCFG_CPU_PROGRAM_MAP(spg290_mem)
|
||||
|
||||
MCFG_SOFTWARE_LIST_ADD("cd_list","hyperscan")
|
||||
|
||||
|
||||
/* video hardware */
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
MCFG_SCREEN_REFRESH_RATE(50)
|
||||
|
@ -1762,7 +1762,7 @@ MACHINE_CONFIG_START(itech32_state::drivedge)
|
||||
MCFG_QUANTUM_TIME(attotime::from_hz(6000))
|
||||
|
||||
MCFG_SPEAKER_STANDARD_STEREO("left_back", "right_back")
|
||||
|
||||
|
||||
MCFG_SOUND_MODIFY("ensoniq")
|
||||
MCFG_ES5506_CHANNELS(2) /* channels */
|
||||
MCFG_SOUND_ROUTE(2, "right_back", 0.1) /* swapped stereo */
|
||||
|
@ -310,7 +310,7 @@ uint32_t jchan_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap,
|
||||
m_sprite_bitmap[chip]->fill(0, cliprect);
|
||||
m_spritegen[chip]->skns_draw_sprites(*m_sprite_bitmap[chip], cliprect, m_sprite_ram32[chip].get(), 0x4000, m_spriterom[chip]->base(), m_spriterom[chip]->bytes(), m_sprite_regs32[chip].get() );
|
||||
}
|
||||
|
||||
|
||||
bitmap_ind8 *tile_primap = &screen.priority();
|
||||
|
||||
// TODO : verify sprite-tile priorities from real hardware, Check what 15 bit of palette actually working
|
||||
|
@ -184,7 +184,7 @@ public:
|
||||
m_soundcpu(*this, "soundcpu"),
|
||||
m_soundbank(*this, "soundbank")
|
||||
{ }
|
||||
|
||||
|
||||
required_device<cpu_device> m_soundcpu;
|
||||
required_memory_bank m_soundbank;
|
||||
|
||||
@ -204,7 +204,7 @@ public:
|
||||
DECLARE_WRITE32_MEMBER(cmd1_word_w);
|
||||
DECLARE_WRITE32_MEMBER(cmd2_word_w);
|
||||
DECLARE_READ32_MEMBER(cmd_stat_word_r);
|
||||
|
||||
|
||||
DECLARE_DRIVER_INIT(jclub2o);
|
||||
|
||||
void jclub2o(machine_config &config);
|
||||
|
@ -101,7 +101,7 @@ ADDRESS_MAP_START(konin_state::konin_io)
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x24, 0x24) AM_WRITE(picu_b_w)
|
||||
|
||||
|
||||
;map(0x80, 0x83).lrw8("ioppi_rw", [this](address_space &space, offs_t offset, u8 mem_mask) { return m_ioppi->read(space, offset^3, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_ioppi->write(space, offset^3, data, mem_mask); });
|
||||
AM_RANGE(0xf6, 0xf6) AM_DEVREADWRITE("uart", i8251_device, status_r, control_w)
|
||||
AM_RANGE(0xf7, 0xf7) AM_DEVREADWRITE("uart", i8251_device, data_r, data_w)
|
||||
|
@ -341,9 +341,9 @@ ROM_START(leapster)
|
||||
ROM_SYSTEM_BIOS( 0, "uni15", "Universal 1.5" ) /* 152-10346 Leapster BaseROM Universal v1.5 - Sep 04 2003 10:46:47 */
|
||||
ROM_LOAD_BIOS( 0, "155-10072-a.bin" , 0x00000, 0x200000, CRC(af05e5a0) SHA1(d4468d060543ba7e44785041093bc98bcd9afa07) )
|
||||
ROM_SYSTEM_BIOS( 1, "uk21", "UK 2.1" ) /* 152-11452 Leapster BaseROM UK v2.1 - Aug 30 2005 16:01:46 */
|
||||
ROM_LOAD_BIOS( 1, "leapster2_1004.bin", 0x00000, 0x800000, CRC(b466e14d) SHA1(910c234f03e76b7de55b8aa0a0c62fd1daae4910) )
|
||||
ROM_LOAD_BIOS( 1, "leapster2_1004.bin", 0x00000, 0x800000, CRC(b466e14d) SHA1(910c234f03e76b7de55b8aa0a0c62fd1daae4910) )
|
||||
ROM_SYSTEM_BIOS( 2, "ger21", "German 2.1" ) /* 152-11435 Leapster BaseROM German v2.1 - Oct 21 2005 18:53:59 */
|
||||
ROM_LOAD_BIOS( 2, "leapster2_1006.bin", 0x00000, 0x800000, CRC(a69ed8ca) SHA1(e6aacba0c39b1465f344c2b07ff1cbd8a395adac) )
|
||||
ROM_LOAD_BIOS( 2, "leapster2_1006.bin", 0x00000, 0x800000, CRC(a69ed8ca) SHA1(e6aacba0c39b1465f344c2b07ff1cbd8a395adac) )
|
||||
ROM_END
|
||||
|
||||
ROM_START(leapstertv)
|
||||
|
@ -2282,7 +2282,7 @@ ROM_START( offroad3 )
|
||||
ROM_LOAD16_BYTE( "03-22118-02.u27t", 0x0e0001, 0x10000, NO_DUMP )
|
||||
ROM_LOAD16_BYTE( "03-22115-02.u15t", 0x0e0000, 0x10000, CRC(448648ae) SHA1(d9600fe080e10a7e6ebf7e83a1fe89c6047549a5) )
|
||||
|
||||
// the following 03 rev ROMs are loaded over the 02 rev ROMs. They shall be removed when the missing 02 rev ROMs dumps surface.
|
||||
// the following 03 rev ROMs are loaded over the 02 rev ROMs. They shall be removed when the missing 02 rev ROMs dumps surface.
|
||||
ROM_LOAD16_BYTE( "03-22116-03.u25t", 0x040001, 0x10000, CRC(95bb31d3) SHA1(e7bc43b63126fd33663865b2e41bacc58e962628) )
|
||||
ROM_LOAD16_BYTE( "03-22113-03.u13t", 0x040000, 0x10000, CRC(71b28df6) SHA1(caf8e4c98a1650dbaedf83f4d38da920d0976f78) )
|
||||
ROM_LOAD16_BYTE( "03-22117-03.u26t", 0x060001, 0x10000, CRC(703d81ce) SHA1(caf5363fb468a461a260e0ec636b0a7a8dc9cd3d) )
|
||||
|
@ -99,7 +99,7 @@ public:
|
||||
optional_device<st0016_cpu_device> m_maincpu;
|
||||
optional_device<generic_slot_device> m_cart1;
|
||||
optional_device<generic_slot_device> m_cart2;
|
||||
|
||||
|
||||
required_memory_bank_array<2> m_rombank;
|
||||
required_memory_bank_array<2> m_rambank;
|
||||
|
||||
|
@ -360,8 +360,8 @@ ADDRESS_MAP_START(magic10_state::magic102_map)
|
||||
AM_RANGE(0x500006, 0x500007) AM_READNOP // gives credits
|
||||
AM_RANGE(0x50001a, 0x50001b) AM_READ_PORT("IN0")
|
||||
AM_RANGE(0x50001c, 0x50001d) AM_READ_PORT("IN1")
|
||||
// AM_RANGE(0x500002, 0x50001f) AM_READNOP
|
||||
// AM_RANGE(0x500002, 0x50001f) AM_WRITENOP
|
||||
// AM_RANGE(0x500002, 0x50001f) AM_READNOP
|
||||
// AM_RANGE(0x500002, 0x50001f) AM_WRITENOP
|
||||
AM_RANGE(0x600000, 0x603fff) AM_RAM
|
||||
AM_RANGE(0x700000, 0x700001) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff)
|
||||
AM_RANGE(0x700080, 0x700087) AM_RAM AM_SHARE("vregs") // video registers?
|
||||
@ -759,7 +759,7 @@ MACHINE_CONFIG_START(magic10_state::sgsafari)
|
||||
MCFG_CPU_MODIFY("maincpu")
|
||||
MCFG_CPU_PROGRAM_MAP(sgsafari_map)
|
||||
MCFG_CPU_VBLANK_INT_DRIVER("screen", magic10_state, irq2_line_hold) /* L1 interrupts */
|
||||
|
||||
|
||||
MCFG_SCREEN_MODIFY("screen")
|
||||
MCFG_SCREEN_VISIBLE_AREA(0*8, 44*8-1, 0*8, 30*8-1)
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -235,7 +235,7 @@ uint32_t model2_state::copro_fifoout_pop(address_space &space,uint32_t offset, u
|
||||
uint32_t r;
|
||||
|
||||
m_maincpu->i960_noburst();
|
||||
|
||||
|
||||
if (m_copro_fifoout_num == 0)
|
||||
{
|
||||
/* Reading from empty FIFO causes the i960 to enter wait state */
|
||||
@ -433,7 +433,7 @@ MACHINE_RESET_MEMBER(model2_state,model2_common)
|
||||
m_timers[i]->reset();
|
||||
|
||||
m_uart->write_cts(0);
|
||||
|
||||
|
||||
// initialize bufferram to a sane default
|
||||
// TODO: HW can probably parse this at will somehow ...
|
||||
for (i=0;i<0x20000/4;i++)
|
||||
@ -556,12 +556,12 @@ READ32_MEMBER(model2_state::fifoctl_r)
|
||||
READ32_MEMBER(model2_state::videoctl_r)
|
||||
{
|
||||
uint8_t framenum;
|
||||
|
||||
|
||||
if(m_render_mode == false)
|
||||
framenum = (m_screen->frame_number() & 2) << 1;
|
||||
else
|
||||
framenum = (m_screen->frame_number() & 1) << 2;
|
||||
|
||||
|
||||
return (framenum) | (m_videocontrol & 3);
|
||||
}
|
||||
|
||||
@ -723,7 +723,7 @@ CUSTOM_INPUT_MEMBER(model2_state::rchase2_devices_r)
|
||||
uint8_t res;
|
||||
|
||||
res = 0xff;
|
||||
|
||||
|
||||
if(m_cmd_data == 0xe0 || m_cmd_data == 0x0e)
|
||||
res &= ~1;
|
||||
if(m_cmd_data == 0xd0 || m_cmd_data == 0x0d)
|
||||
@ -732,7 +732,7 @@ CUSTOM_INPUT_MEMBER(model2_state::rchase2_devices_r)
|
||||
res &= ~4;
|
||||
if(m_cmd_data == 0x70 || m_cmd_data == 0x07)
|
||||
res &= ~8;
|
||||
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
@ -1422,7 +1422,7 @@ WRITE32_MEMBER(model2_state::render_mode_w)
|
||||
|
||||
// undocumented, unknown purpose
|
||||
m_render_unk = bool(BIT(data,14));
|
||||
// osd_printf_debug("Mode = %08X\n", data);
|
||||
// osd_printf_debug("Mode = %08X\n", data);
|
||||
}
|
||||
|
||||
WRITE32_MEMBER(model2_state::model2o_tex_w0)
|
||||
@ -1515,17 +1515,17 @@ ADDRESS_MAP_START(model2_state::model2_base_mem)
|
||||
AM_RANGE(0x06000000, 0x06ffffff) AM_ROM AM_REGION("main_data", 0x1000000)
|
||||
|
||||
AM_RANGE(0x10000000, 0x101fffff) AM_READWRITE(render_mode_r,render_mode_w)
|
||||
// AM_RANGE(0x10200000, 0x103fffff) renderer status register
|
||||
// AM_RANGE(0x10200000, 0x103fffff) renderer status register
|
||||
AM_RANGE(0x10400000, 0x105fffff) AM_READ(polygon_count_r)
|
||||
// AM_RANGE(0x10600000, 0x107fffff) polygon data ping
|
||||
// AM_RANGE(0x10800000, 0x109fffff) polygon data pong
|
||||
// AM_RANGE(0x10a00000, 0x10bfffff) fill memory ping
|
||||
// AM_RANGE(0x10c00000, 0x10dfffff) fill memory pong
|
||||
|
||||
// AM_RANGE(0x10600000, 0x107fffff) polygon data ping
|
||||
// AM_RANGE(0x10800000, 0x109fffff) polygon data pong
|
||||
// AM_RANGE(0x10a00000, 0x10bfffff) fill memory ping
|
||||
// AM_RANGE(0x10c00000, 0x10dfffff) fill memory pong
|
||||
|
||||
// format is xGGGGGBBBBBRRRRR (512x400)
|
||||
AM_RANGE(0x11600000, 0x1167ffff) AM_RAM AM_SHARE("fbvram1") // framebuffer A (last bronx title screen)
|
||||
AM_RANGE(0x11680000, 0x116fffff) AM_RAM AM_SHARE("fbvram2") // framebuffer B
|
||||
|
||||
|
||||
AM_RANGE(0x12800000, 0x1281ffff) AM_READWRITE16(lumaram_r,lumaram_w,0x0000ffff) // polygon "luma" RAM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -1707,7 +1707,7 @@ ADDRESS_MAP_START(model2c_state::model2c_crx_mem)
|
||||
AM_RANGE(0x11200000, 0x113fffff) AM_RAM AM_SHARE("textureram1") // texture RAM 1 (2b/2c)
|
||||
AM_RANGE(0x11400000, 0x1140ffff) AM_READWRITE16(lumaram_r,lumaram_w,0xffffffff) // polygon "luma" RAM (2b/2c)
|
||||
AM_RANGE(0x12800000, 0x1281ffff) AM_READWRITE16(lumaram_r,lumaram_w,0x0000ffff) // polygon "luma" RAM
|
||||
|
||||
|
||||
AM_RANGE(0x01c00000, 0x01c0001f) AM_READ8(model2_crx_in_r, 0x00ff00ff)
|
||||
AM_RANGE(0x01c00000, 0x01c00003) AM_WRITE(ctrl0_w)
|
||||
AM_RANGE(0x01c00014, 0x01c00017) AM_WRITE(hotd_lightgun_w)
|
||||
@ -1752,7 +1752,7 @@ static INPUT_PORTS_START( desert )
|
||||
PORT_SERVICE_NO_TOGGLE(0x04, IP_ACTIVE_LOW )
|
||||
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_SERVICE1 )
|
||||
PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_START1 )
|
||||
PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) PORT_NAME("VR1 (Blue)")
|
||||
PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) PORT_NAME("VR1 (Blue)")
|
||||
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) PORT_NAME("VR2 (Green)")
|
||||
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1) PORT_NAME("VR3 (Red)")
|
||||
|
||||
@ -1835,7 +1835,7 @@ static INPUT_PORTS_START( daytona )
|
||||
|
||||
PORT_START("BRAKE")
|
||||
PORT_BIT(0xff, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(1)
|
||||
|
||||
|
||||
PORT_START("GEARS") // fake to handle gear bits
|
||||
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_BUTTON1) PORT_PLAYER(1) PORT_NAME("GEAR N")
|
||||
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_BUTTON2) PORT_PLAYER(1) PORT_NAME("GEAR 1")
|
||||
@ -2044,7 +2044,7 @@ INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( vstriker )
|
||||
PORT_INCLUDE(model2)
|
||||
|
||||
|
||||
// oddly enough service mode returns standard 1-2-3 layout but actual ingame is 2-3-1
|
||||
// also bit 3 repeats bit 2 functionality.
|
||||
PORT_MODIFY("IN1")
|
||||
@ -2241,7 +2241,7 @@ MACHINE_CONFIG_START(model2_state::model2_screen)
|
||||
// TODO: from System 24, might not be accurate for Model 2
|
||||
MCFG_SCREEN_RAW_PARAMS(VIDEO_CLOCK/2, 656, 0/*+69*/, 496/*+69*/, 424, 0/*+25*/, 384/*+25*/)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(model2_state, screen_update_model2)
|
||||
|
||||
|
||||
MCFG_PALETTE_ADD("palette", 8192)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -2334,7 +2334,7 @@ MACHINE_CONFIG_END
|
||||
|
||||
MACHINE_CONFIG_START(model2o_maxx_state::daytona_maxx)
|
||||
daytona(config);
|
||||
|
||||
|
||||
MCFG_CPU_MODIFY("maincpu")
|
||||
MCFG_CPU_PROGRAM_MAP(model2o_maxx_mem)
|
||||
MACHINE_CONFIG_END
|
||||
@ -3926,7 +3926,7 @@ ROM_START( stcc ) /* Sega Touring Car Championship, Model 2C - Defaults to Japan
|
||||
ROM_COPY( "textures", 0x800000, 0xd00000, 0x100000 )
|
||||
ROM_COPY( "textures", 0x800000, 0xe00000, 0x100000 )
|
||||
ROM_COPY( "textures", 0x800000, 0xf00000, 0x100000 )
|
||||
|
||||
|
||||
ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program
|
||||
ROM_LOAD16_WORD_SWAP("epr-19274.31", 0x080000, 0x20000, CRC(2dcc08ae) SHA1(bad26e2c994f2d4db5d9be0e34cf21a8bf5aa7e9) )
|
||||
|
||||
@ -5383,7 +5383,7 @@ ROM_START( fvipers ) /* Fighting Vipers Revision D, Model 2B, Sega Game ID# 833-
|
||||
ROM_LOAD32_WORD("mpr-18613.10", 0x0800002, 0x400000, CRC(f057cdf2) SHA1(e16d5de2a00670aba4fbe0dc88ccf317de9842be) )
|
||||
ROM_LOAD32_WORD("epr-18610d.7", 0x1000000, 0x080000, CRC(a1871703) SHA1(8d7b362a8fd9d63f5cea2f3fab97e5fe3fa30d87) )
|
||||
ROM_LOAD32_WORD("epr-18611d.8", 0x1000002, 0x080000, CRC(39a75fee) SHA1(c962805f03e2503dd1671ba3e906c6e306a92e48) )
|
||||
ROM_COPY( "main_data", 0x1000000, 0x1100000, 0x100000 )
|
||||
ROM_COPY( "main_data", 0x1000000, 0x1100000, 0x100000 )
|
||||
ROM_COPY( "main_data", 0x1000000, 0x1200000, 0x100000 )
|
||||
ROM_COPY( "main_data", 0x1000000, 0x1300000, 0x100000 )
|
||||
ROM_COPY( "main_data", 0x1000000, 0x1400000, 0x100000 )
|
||||
|
@ -1733,8 +1733,8 @@ MACHINE_CONFIG_START(ms32_state::ms32)
|
||||
MCFG_SOUND_ADD("ymf", YMF271, 16934400)
|
||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||
// MCFG_SOUND_ROUTE(2, "lspeaker", 1.0) Output 2/3 not used?
|
||||
// MCFG_SOUND_ROUTE(3, "rspeaker", 1.0)
|
||||
// MCFG_SOUND_ROUTE(2, "lspeaker", 1.0) Output 2/3 not used?
|
||||
// MCFG_SOUND_ROUTE(3, "rspeaker", 1.0)
|
||||
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -28,7 +28,7 @@ To Do:
|
||||
but then hangs.
|
||||
*cgangpzl, cgangpzlj, exvania, exvaniaj, knckheadjp, quiztou
|
||||
- xday2: unemulated printer and RTC devices (check test mode game options), also battery always returns NG
|
||||
|
||||
|
||||
- X-Day 2:
|
||||
Rom board M112
|
||||
Rom board custom Key chip i.d. C394
|
||||
@ -36,7 +36,7 @@ To Do:
|
||||
Game also has a large L.E.D. type score board with several displays for various scores. (connects to rom board)
|
||||
Game uses coin-type battery on rom board. (not suicide)
|
||||
Game won't startup unless printer is connected and with paper.
|
||||
|
||||
|
||||
|
||||
The board has a 28c16 EEPROM
|
||||
|
||||
@ -562,7 +562,7 @@ ADDRESS_MAP_START(namcona1_state::namcona1_main_map)
|
||||
AM_RANGE(0xf00000, 0xf01fff) AM_RAM_WRITE(paletteram_w) AM_SHARE("paletteram")
|
||||
AM_RANGE(0xf40000, 0xf7ffff) AM_READWRITE(gfxram_r, gfxram_w) AM_SHARE("cgram")
|
||||
AM_RANGE(0xff0000, 0xffbfff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
|
||||
AM_RANGE(0xffd000, 0xffdfff) AM_RAM /* unknown */
|
||||
AM_RANGE(0xffd000, 0xffdfff) AM_RAM /* unknown */
|
||||
AM_RANGE(0xffe000, 0xffefff) AM_RAM AM_SHARE("scroll") /* scroll registers */
|
||||
AM_RANGE(0xfff000, 0xffffff) AM_RAM AM_SHARE("spriteram") /* spriteram */
|
||||
ADDRESS_MAP_END
|
||||
@ -973,7 +973,7 @@ MACHINE_CONFIG_START(namcona1_state::namcona1)
|
||||
MCFG_SCREEN_REFRESH_RATE(60)
|
||||
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
|
||||
MCFG_SCREEN_SIZE(40*8, 32*8)
|
||||
// MCFG_SCREEN_VISIBLE_AREA(8, 38*8-1-8, 4*8, 32*8-1)
|
||||
// MCFG_SCREEN_VISIBLE_AREA(8, 38*8-1-8, 4*8, 32*8-1)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 38*8-1, 4*8, 32*8-1)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(namcona1_state, screen_update)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
@ -996,8 +996,8 @@ MACHINE_CONFIG_START(namcona2_state::namcona2)
|
||||
namcona1(config);
|
||||
|
||||
/* basic machine hardware */
|
||||
// MCFG_CPU_MODIFY("maincpu")
|
||||
// MCFG_CPU_PROGRAM_MAP(namcona2_main_map)
|
||||
// MCFG_CPU_MODIFY("maincpu")
|
||||
// MCFG_CPU_PROGRAM_MAP(namcona2_main_map)
|
||||
|
||||
MCFG_CPU_REPLACE("mcu", NAMCO_C70, MASTER_CLOCK/4)
|
||||
MCFG_CPU_PROGRAM_MAP(namcona1_mcu_map)
|
||||
|
@ -2729,7 +2729,7 @@ MACHINE_CONFIG_END
|
||||
MACHINE_CONFIG_START(naomi_state::naomi_base)
|
||||
naomi_aw_base(config);
|
||||
|
||||
MCFG_CPU_MODIFY("maincpu")
|
||||
MCFG_CPU_MODIFY("maincpu")
|
||||
MCFG_CPU_PROGRAM_MAP(naomi_map)
|
||||
MCFG_CPU_IO_MAP(naomi_port)
|
||||
|
||||
@ -2801,10 +2801,10 @@ MACHINE_CONFIG_END
|
||||
*/
|
||||
/*
|
||||
MACHINE_CONFIG_START((naomi2_state::naomi2)
|
||||
naomi(config);
|
||||
naomi(config);
|
||||
MCFG_CPU_MODIFY("maincpu")
|
||||
MCFG_CPU_PROGRAM_MAP(naomi2_map)
|
||||
MCFG_CPU_IO_MAP(naomi_port)
|
||||
MCFG_CPU_IO_MAP(naomi_port)
|
||||
MACHINE_CONFIG_END
|
||||
*/
|
||||
/*
|
||||
|
@ -20,22 +20,22 @@
|
||||
|
||||
VT16 - ?
|
||||
VT18 - ?
|
||||
|
||||
VT33 (?) - used in FC Pocket, dgun2573
|
||||
Adds scrambled opcodes (XORed with 0xA1) and RGB444 palette mode,
|
||||
and more advanced PCM modes (CPU and video working, sound NYI)
|
||||
|
||||
VT368 (?) - used in DGUN2561, lexcyber
|
||||
Various enhancements not yet emulated. Different banking, possibly an ALU,
|
||||
larger palette space
|
||||
|
||||
VT36x (?) - used in SY889
|
||||
Uses SQI rather than parallel flash
|
||||
Vaguely OneBus compatible but some registers different ($411C in particular)
|
||||
Uses RGB format for palettes
|
||||
Credit to NewRisingSun2 for much of the reverse engineering
|
||||
same chipset used in Mogis M320, but uses more advanced feature set.
|
||||
|
||||
|
||||
VT33 (?) - used in FC Pocket, dgun2573
|
||||
Adds scrambled opcodes (XORed with 0xA1) and RGB444 palette mode,
|
||||
and more advanced PCM modes (CPU and video working, sound NYI)
|
||||
|
||||
VT368 (?) - used in DGUN2561, lexcyber
|
||||
Various enhancements not yet emulated. Different banking, possibly an ALU,
|
||||
larger palette space
|
||||
|
||||
VT36x (?) - used in SY889
|
||||
Uses SQI rather than parallel flash
|
||||
Vaguely OneBus compatible but some registers different ($411C in particular)
|
||||
Uses RGB format for palettes
|
||||
Credit to NewRisingSun2 for much of the reverse engineering
|
||||
same chipset used in Mogis M320, but uses more advanced feature set.
|
||||
|
||||
(more)
|
||||
|
||||
VT1682 - NOT compatible with NES, different video system, sound CPU (4x
|
||||
@ -50,8 +50,8 @@
|
||||
todo (newer VTxx):
|
||||
|
||||
new PCM audio in FC Pocket and DGUN-2573
|
||||
add support for VT368 (?) in DGUN-2561 and lexcyber
|
||||
add support for the VT369 (?) featurs used by the MOGIS M320
|
||||
add support for VT368 (?) in DGUN-2561 and lexcyber
|
||||
add support for the VT369 (?) featurs used by the MOGIS M320
|
||||
|
||||
todo (general)
|
||||
|
||||
@ -143,7 +143,7 @@ public:
|
||||
|
||||
DECLARE_WRITE8_MEMBER(vt03_48ax_w);
|
||||
DECLARE_READ8_MEMBER(vt03_48ax_r);
|
||||
|
||||
|
||||
DECLARE_WRITE8_MEMBER(vt03_413x_w);
|
||||
DECLARE_READ8_MEMBER(vt03_413x_r);
|
||||
DECLARE_READ8_MEMBER(vt03_414f_r);
|
||||
@ -168,12 +168,12 @@ public:
|
||||
DECLARE_WRITE8_MEMBER(chr_w);
|
||||
|
||||
void nes_vt(machine_config &config);
|
||||
|
||||
|
||||
void nes_vt_hum(machine_config &config);
|
||||
void nes_vt_pjoy(machine_config &config);
|
||||
void nes_vt_sp69(machine_config &config);
|
||||
|
||||
|
||||
|
||||
void nes_vt_xx(machine_config &config);
|
||||
void nes_vt_hh(machine_config &config);
|
||||
void nes_vt_cy(machine_config &config);
|
||||
@ -624,7 +624,7 @@ WRITE8_MEMBER(nes_vt_state::vtfp_411e_w) {
|
||||
WRITE8_MEMBER(nes_vt_state::vtfp_4a00_w) {
|
||||
logerror("4a00_w %02x\n", data);
|
||||
//if(data == 0x80)
|
||||
// dynamic_cast<m6502_vtscr&>(*m_maincpu).set_scramble(false);
|
||||
// dynamic_cast<m6502_vtscr&>(*m_maincpu).set_scramble(false);
|
||||
}
|
||||
|
||||
|
||||
@ -668,7 +668,7 @@ void nes_vt_state::video_irq(bool hblank, int scanline, int vblank, int blanked)
|
||||
if (irqstate)
|
||||
m_maincpu->set_input_line(M6502_IRQ_LINE, ASSERT_LINE);
|
||||
//else
|
||||
// m_maincpu->set_input_line(M6502_IRQ_LINE, CLEAR_LINE);
|
||||
// m_maincpu->set_input_line(M6502_IRQ_LINE, CLEAR_LINE);
|
||||
}
|
||||
|
||||
}
|
||||
@ -962,8 +962,8 @@ int nes_vt_state::calculate_real_video_address(int addr, int extended, int readt
|
||||
/*
|
||||
nes_vt_state::vt03_8000_w notes
|
||||
|
||||
used for MMC3/other mapper compatibility
|
||||
some consoles have scrambled registers for crude copy protection
|
||||
used for MMC3/other mapper compatibility
|
||||
some consoles have scrambled registers for crude copy protection
|
||||
*/
|
||||
|
||||
static const uint8_t descram_8000_mmc3[5][8] = {
|
||||
@ -974,7 +974,7 @@ static const uint8_t descram_8000_mmc3[5][8] = {
|
||||
{0x6, 0x7, 0x2, 0x3, 0x4, 0x5, 0x7, 0x8},
|
||||
};
|
||||
|
||||
void nes_vt_state::scrambled_8000_w(address_space &space, uint16_t offset, uint8_t data, vt_scramble_mode scram)
|
||||
void nes_vt_state::scrambled_8000_w(address_space &space, uint16_t offset, uint8_t data, vt_scramble_mode scram)
|
||||
{
|
||||
uint16_t addr = offset + 0x8000;
|
||||
if((m_411d & 0x01) && (m_411d & 0x03)) {
|
||||
@ -1183,7 +1183,7 @@ ADDRESS_MAP_START(nes_vt_state::nes_vt_map)
|
||||
|
||||
AM_RANGE(0x4034, 0x4034) AM_WRITE(vt03_4034_w)
|
||||
|
||||
AM_RANGE(0x4100, 0x410b) AM_READ(vt03_410x_r) AM_WRITE(vt03_410x_w)
|
||||
AM_RANGE(0x4100, 0x410b) AM_READ(vt03_410x_r) AM_WRITE(vt03_410x_w)
|
||||
|
||||
AM_RANGE(0x8000, 0xffff) AM_DEVICE("prg", address_map_bank_device, amap8)
|
||||
AM_RANGE(0x8000, 0xffff) AM_WRITE(vt03_8000_w)
|
||||
@ -1220,9 +1220,9 @@ ADDRESS_MAP_START(nes_vt_state::nes_vt_cy_map)
|
||||
AM_IMPORT_FROM(nes_vt_xx_map)
|
||||
AM_RANGE(0x41b0, 0x41bf) AM_READ(vt03_41bx_r) AM_WRITE(vt03_41bx_w)
|
||||
AM_RANGE(0x48a0, 0x48af) AM_READ(vt03_48ax_r) AM_WRITE(vt03_48ax_w)
|
||||
AM_RANGE(0x4130, 0x4136) AM_READ(vt03_413x_r) AM_WRITE(vt03_413x_w)
|
||||
AM_RANGE(0x414F, 0x414F) AM_READ(vt03_414f_r)
|
||||
AM_RANGE(0x415C, 0x415C ) AM_READ(vt03_415c_r)
|
||||
AM_RANGE(0x4130, 0x4136) AM_READ(vt03_413x_r) AM_WRITE(vt03_413x_w)
|
||||
AM_RANGE(0x414F, 0x414F) AM_READ(vt03_414f_r)
|
||||
AM_RANGE(0x415C, 0x415C ) AM_READ(vt03_415c_r)
|
||||
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -1248,7 +1248,7 @@ ADDRESS_MAP_START(nes_vt_state::nes_vt_hh_map)
|
||||
|
||||
AM_RANGE(0x4034, 0x4034) AM_WRITE(vt03_4034_w)
|
||||
AM_RANGE(0x4014, 0x4014) AM_READ(psg1_4014_r) AM_WRITE(vt_hh_sprite_dma_w)
|
||||
|
||||
|
||||
AM_RANGE(0x414A, 0x414A) AM_READ(vthh_414a_r)
|
||||
AM_RANGE(0x411d, 0x411d) AM_WRITE(vtfp_411d_w)
|
||||
|
||||
@ -1281,8 +1281,8 @@ ADDRESS_MAP_START(nes_vt_state::nes_vt_fp_map)
|
||||
AM_RANGE(0x411e, 0x411e) AM_WRITE(vtfp_411e_w)
|
||||
AM_RANGE(0x4a00, 0x4a00) AM_WRITE(vtfp_4a00_w)
|
||||
AM_RANGE(0x412c, 0x412c) AM_WRITE(vtfp_412c_w)
|
||||
AM_RANGE(0x412d, 0x412d) AM_READ(vtfp_412d_r)
|
||||
AM_RANGE(0x4242, 0x4242) AM_WRITE(vtfp_4242_w)
|
||||
AM_RANGE(0x412d, 0x412d) AM_READ(vtfp_412d_r)
|
||||
AM_RANGE(0x4242, 0x4242) AM_WRITE(vtfp_4242_w)
|
||||
AM_RANGE(0x4119, 0x4119) AM_READ(vtfp_4119_r)
|
||||
|
||||
ADDRESS_MAP_END
|
||||
@ -1291,8 +1291,8 @@ ADDRESS_MAP_START(nes_vt_state::nes_vt_fa_map)
|
||||
|
||||
AM_IMPORT_FROM(nes_vt_dg_map)
|
||||
|
||||
AM_RANGE(0x412c, 0x412c) AM_READ(vtfa_412c_r) AM_WRITE(vtfa_412c_w)
|
||||
AM_RANGE(0x4242, 0x4242) AM_WRITE(vtfp_4242_w)
|
||||
AM_RANGE(0x412c, 0x412c) AM_READ(vtfa_412c_r) AM_WRITE(vtfa_412c_w)
|
||||
AM_RANGE(0x4242, 0x4242) AM_WRITE(vtfp_4242_w)
|
||||
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -1411,7 +1411,7 @@ MACHINE_CONFIG_START(nes_vt_state::nes_vt_hum)
|
||||
nes_vt(config);
|
||||
MCFG_CPU_MODIFY("maincpu")
|
||||
MCFG_CPU_PROGRAM_MAP(nes_vt_hum_map)
|
||||
|
||||
|
||||
MCFG_PPU_VT03_MODIFY("ppu")
|
||||
MCFG_PPU_VT03_SET_DESCRAMBLE(descram_ppu_2012_2017[3]);
|
||||
MACHINE_CONFIG_END
|
||||
@ -1420,7 +1420,7 @@ MACHINE_CONFIG_START(nes_vt_state::nes_vt_pjoy)
|
||||
nes_vt(config);
|
||||
MCFG_CPU_MODIFY("maincpu")
|
||||
MCFG_CPU_PROGRAM_MAP(nes_vt_pjoy_map)
|
||||
|
||||
|
||||
MCFG_PPU_VT03_MODIFY("ppu")
|
||||
MCFG_PPU_VT03_SET_DESCRAMBLE(descram_ppu_2012_2017[2]);
|
||||
MACHINE_CONFIG_END
|
||||
@ -1430,7 +1430,7 @@ MACHINE_CONFIG_START(nes_vt_state::nes_vt_sp69)
|
||||
nes_vt(config);
|
||||
MCFG_CPU_MODIFY("maincpu")
|
||||
MCFG_CPU_PROGRAM_MAP(nes_vt_sp69_map)
|
||||
|
||||
|
||||
MCFG_PPU_VT03_MODIFY("ppu")
|
||||
MCFG_PPU_VT03_SET_DESCRAMBLE(descram_ppu_2012_2017[4]);
|
||||
MACHINE_CONFIG_END
|
||||
@ -1799,7 +1799,7 @@ CONS( 200?, vdogdemo, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "VRT", "V-Do
|
||||
CONS( 200?, mc_dgear, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "dreamGEAR", "dreamGEAR 75-in-1", MACHINE_IMPERFECT_GRAPHICS )
|
||||
// all software in this runs in the VT03 enhanced mode, it also includes an actual licensed VT03 port of Frogger.
|
||||
// all games work OK except Frogger which has serious graphical issues
|
||||
CONS( 2006, vgtablet, 0, 0, nes_vt_vg, nes_vt, nes_vt_state, 0, "<unknown> / Konami", "VG Pocket Tablet", MACHINE_NOT_WORKING )
|
||||
CONS( 2006, vgtablet, 0, 0, nes_vt_vg, nes_vt, nes_vt_state, 0, "<unknown> / Konami", "VG Pocket Tablet", MACHINE_NOT_WORKING )
|
||||
// There is a 2004 Majesco Frogger "TV game" that appears to contain the same version of Frogger as above but with no other games, so probably fits here.
|
||||
|
||||
// this is VT09 based
|
||||
@ -1812,10 +1812,10 @@ CONS( 200?, vgpmini, 0, 0, nes_vt_vg, nes_vt, nes_vt_state, 0, "<unknown>",
|
||||
// Runs fine, non-sport 121 in 1 games perfect, but minor graphical issues in
|
||||
// sport games, also no sound in menu or sport games due to missing PCM
|
||||
// emulation
|
||||
CONS( 200?, dgun2500, 0, 0, nes_vt_dg, nes_vt, nes_vt_state, 0, "dreamGEAR", "dreamGEAR Wireless Motion Control with 130 games (DGUN-2500)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND)
|
||||
CONS( 200?, dgun2500, 0, 0, nes_vt_dg, nes_vt, nes_vt_state, 0, "dreamGEAR", "dreamGEAR Wireless Motion Control with 130 games (DGUN-2500)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND)
|
||||
|
||||
// don't even get to menu. very enhanced chipset, VT368/9?
|
||||
CONS( 2012, dgun2561, 0, 0, nes_vt_cy, nes_vt, nes_vt_state, 0, "dreamGEAR", "dreamGEAR My Arcade Portable Gaming System (DGUN-2561)", MACHINE_NOT_WORKING )
|
||||
CONS( 2012, dgun2561, 0, 0, nes_vt_cy, nes_vt, nes_vt_state, 0, "dreamGEAR", "dreamGEAR My Arcade Portable Gaming System (DGUN-2561)", MACHINE_NOT_WORKING )
|
||||
CONS( 200?, lexcyber, 0, 0, nes_vt_cy, nes_vt, nes_vt_state, 0, "Lexibook", "Lexibook Compact Cyber Arcade", MACHINE_NOT_WORKING )
|
||||
|
||||
// boots, same platform with scrambled opcodes as FC pocket
|
||||
@ -1831,11 +1831,11 @@ CONS( 200?, ii8in1, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "Intec", "In
|
||||
CONS( 200?, ii32in1, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "Intec", "InterAct 32-in-1", MACHINE_NOT_WORKING )
|
||||
|
||||
// this has 'Shark' and 'Octopus' etc. like mc_dgear but uses scrambled bank registers
|
||||
CONS( 200?, mc_sp69, 0, 0, nes_vt_sp69, nes_vt, nes_vt_state, 0, "<unknown>", "Sports Game 69 in 1", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND)
|
||||
CONS( 200?, mc_sp69, 0, 0, nes_vt_sp69, nes_vt, nes_vt_state, 0, "<unknown>", "Sports Game 69 in 1", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND)
|
||||
|
||||
// Hummer systems, scrambled bank register
|
||||
CONS( 200?, mc_sam60, 0, 0, nes_vt_hum, nes_vt, nes_vt_state, 0, "Hummer Technology Co., Ltd.", "Samuri (60 in 1)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
|
||||
CONS( 200?, zdog, 0, 0, nes_vt_hum, nes_vt, nes_vt_state, 0, "Hummer Technology Co., Ltd.", "ZDog (44 in 1)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
|
||||
CONS( 200?, mc_sam60, 0, 0, nes_vt_hum, nes_vt, nes_vt_state, 0, "Hummer Technology Co., Ltd.", "Samuri (60 in 1)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
|
||||
CONS( 200?, zdog, 0, 0, nes_vt_hum, nes_vt, nes_vt_state, 0, "Hummer Technology Co., Ltd.", "ZDog (44 in 1)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
|
||||
|
||||
// titles below don't seem to use the enhanced modes, so probably VT01 / VT02 or plain standalone famiclones?
|
||||
|
||||
@ -1851,10 +1851,10 @@ CONS( 200?, mc_110cb, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "Cool
|
||||
CONS( 200?, mc_138cb, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "CoolBoy", "138 in 1 CoolBaby (CoolBoy RS-5, PCB060-10009011V1.3)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
|
||||
// doesn't boot, bad dump
|
||||
CONS( 201?, cbrs8, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "CoolBoy", "CoolBoy RS-8 168 in 1", MACHINE_NOT_WORKING )
|
||||
CONS( 201?, cbrs8, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "CoolBoy", "CoolBoy RS-8 168 in 1", MACHINE_NOT_WORKING )
|
||||
|
||||
CONS( 200?, gprnrs1, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "<unknown>", "Game Prince RS-1", MACHINE_IMPERFECT_GRAPHICS )
|
||||
CONS( 200?, gprnrs16, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "<unknown>", "Game Prince RS-16", MACHINE_IMPERFECT_GRAPHICS )
|
||||
CONS( 200?, gprnrs1, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "<unknown>", "Game Prince RS-1", MACHINE_IMPERFECT_GRAPHICS )
|
||||
CONS( 200?, gprnrs16, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "<unknown>", "Game Prince RS-16", MACHINE_IMPERFECT_GRAPHICS )
|
||||
// unsorted, these were all in nes.xml listed as ONE BUS systems
|
||||
CONS( 200?, mc_dg101, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "dreamGEAR", "dreamGEAR 101 in 1", MACHINE_IMPERFECT_GRAPHICS ) // dreamGear, but no enhanced games?
|
||||
CONS( 200?, mc_aa2, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "<unknown>", "100 in 1 Arcade Action II (AT-103)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
@ -1868,32 +1868,32 @@ CONS( 2004, mc_dcat8, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "<unk
|
||||
CONS( 2004, mc_dcat8a, mc_dcat8, 0, nes_vt, nes_vt, nes_vt_state, 0, "<unknown>", "100 in 1 (D-CAT8 8bit Console, set 2)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
|
||||
// Runs well, minor GFX issues in intro
|
||||
CONS( 2017, sy889, 0, 0, nes_vt_hh, nes_vt, nes_vt_state, 0, "SY Corp", "SY-889 300 in 1 Handheld", MACHINE_IMPERFECT_GRAPHICS )
|
||||
CONS( 2016, sy888b, 0, 0, nes_vt_hh, nes_vt, nes_vt_state, 0, "SY Corp", "SY-888B 288 in 1 Handheld", MACHINE_IMPERFECT_GRAPHICS )
|
||||
CONS( 2017, sy889, 0, 0, nes_vt_hh, nes_vt, nes_vt_state, 0, "SY Corp", "SY-889 300 in 1 Handheld", MACHINE_IMPERFECT_GRAPHICS )
|
||||
CONS( 2016, sy888b, 0, 0, nes_vt_hh, nes_vt, nes_vt_state, 0, "SY Corp", "SY-888B 288 in 1 Handheld", MACHINE_IMPERFECT_GRAPHICS )
|
||||
|
||||
// Same hardware as SY-889
|
||||
CONS( 201?, mc_cb280, 0, 0, nes_vt_hh, nes_vt, nes_vt_state, 0, "CoolBoy", "Coolboy RS-18 (280 in 1)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
CONS( 201?, mc_cb280, 0, 0, nes_vt_hh, nes_vt, nes_vt_state, 0, "CoolBoy", "Coolboy RS-18 (280 in 1)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
|
||||
// Runs well, only issues in SMB3 which crashes
|
||||
CONS( 2017, bittboy, 0, 0, nes_vt_bt, nes_vt, nes_vt_state, 0, "BittBoy", "BittBoy Mini FC 300 in 1", MACHINE_IMPERFECT_GRAPHICS )
|
||||
CONS( 2017, bittboy, 0, 0, nes_vt_bt, nes_vt, nes_vt_state, 0, "BittBoy", "BittBoy Mini FC 300 in 1", MACHINE_IMPERFECT_GRAPHICS )
|
||||
// Runs well, all games seem to work
|
||||
CONS( 201?, mc_89in1, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "<unknown>", "89 in 1 Mini Game Console (060-92023011V1.0)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
CONS( 201?, mc_89in1, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "<unknown>", "89 in 1 Mini Game Console (060-92023011V1.0)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
// Broken GFX, investigate
|
||||
CONS( 201?, mc_pg150, 0, 0, nes_vt_bt, nes_vt, nes_vt_state, 0, "<unknown>", "Pocket Games 150 in 1", MACHINE_NOT_WORKING )
|
||||
CONS( 201?, mc_pg150, 0, 0, nes_vt_bt, nes_vt, nes_vt_state, 0, "<unknown>", "Pocket Games 150 in 1", MACHINE_NOT_WORKING )
|
||||
// No title screen, but press start and menu and games run fine. Makes odd
|
||||
// memory accesses which probably explain broken title screen
|
||||
CONS( 201?, mc_hh210, 0, 0, nes_vt_xx, nes_vt, nes_vt_state, 0, "<unknown>", "Handheld 210 in 1", MACHINE_NOT_WORKING )
|
||||
CONS( 201?, mc_hh210, 0, 0, nes_vt_xx, nes_vt, nes_vt_state, 0, "<unknown>", "Handheld 210 in 1", MACHINE_NOT_WORKING )
|
||||
// First half of games don't work, probably bad dump
|
||||
CONS( 201?, dvnimbus, 0, 0, nes_vt_vg, nes_vt, nes_vt_state, 0, "<unknown>", "DVTech Nimbus 176 in 1", MACHINE_NOT_WORKING )
|
||||
CONS( 201?, dvnimbus, 0, 0, nes_vt_vg, nes_vt, nes_vt_state, 0, "<unknown>", "DVTech Nimbus 176 in 1", MACHINE_NOT_WORKING )
|
||||
// Works fine, VT02 based
|
||||
CONS( 201?, mc_tv200, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "Thumbs Up", "200 in 1 Retro TV Game", MACHINE_IMPERFECT_GRAPHICS )
|
||||
CONS( 201?, mc_tv200, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "Thumbs Up", "200 in 1 Retro TV Game", MACHINE_IMPERFECT_GRAPHICS )
|
||||
// New platform with scrambled opcodes, same as DGUN-2561. Runs fine with minor GFX and sound issues in menu
|
||||
// Use DIP switch to select console or cartridge, as cartridge is fake and just toggles a GPIO
|
||||
CONS( 2016, fcpocket, 0, 0, nes_vt_fp, nes_vt_fp, nes_vt_state, 0, "<unknown>", "FC Pocket 600 in 1", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
|
||||
CONS( 2016, fcpocket, 0, 0, nes_vt_fp, nes_vt_fp, nes_vt_state, 0, "<unknown>", "FC Pocket 600 in 1", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
|
||||
// Probably VT09 or similar
|
||||
// Use DIP switch to select console or cartridge, as cartridge is fake and just toggles a ROM high address bit
|
||||
// (which can also be overriden by GPIO)
|
||||
CONS( 2017, fapocket, 0, 0, nes_vt_fa, nes_vt_fa, nes_vt_state, 0, "<unknown>", "Family Pocket 638 in 1", MACHINE_IMPERFECT_GRAPHICS )
|
||||
CONS( 2017, fapocket, 0, 0, nes_vt_fa, nes_vt_fa, nes_vt_state, 0, "<unknown>", "Family Pocket 638 in 1", MACHINE_IMPERFECT_GRAPHICS )
|
||||
|
||||
// Plays intro music but then crashes. same hardware as SY-88x but uses more features
|
||||
CONS( 2016, mog_m320, 0, 0, nes_vt_hh, nes_vt, nes_vt_state, 0, "MOGIS", "MOGIS M320 246 in 1 Handheld", MACHINE_NOT_WORKING )
|
||||
CONS( 2016, mog_m320, 0, 0, nes_vt_hh, nes_vt, nes_vt_state, 0, "MOGIS", "MOGIS M320 246 in 1 Handheld", MACHINE_NOT_WORKING )
|
||||
|
@ -6488,7 +6488,7 @@ ROM_START( tdragon3h )
|
||||
ROM_REGION( 0x400000, "sprites", 0 )
|
||||
ROM_LOAD16_WORD_SWAP( "ww930917.7", 0x000000, 0x200000, CRC(b98873cb) SHA1(cc19200865176e940ff68e12de81f029b51c2084) ) /* Sprites */
|
||||
ROM_LOAD16_WORD_SWAP( "ww930918.8", 0x200000, 0x200000, CRC(baee84b2) SHA1(b325b00e6147266dbdc840e03556004531dc2038) )
|
||||
|
||||
|
||||
// Not from this PCB
|
||||
ROM_REGION( 0x240000, "oki1", 0 ) /* OKIM6295 samples */
|
||||
ROM_LOAD( "ww930916.4", 0x040000, 0x200000, CRC(07c35fe6) SHA1(33547bd88764704310f2ef8cf3bfe21ceb56d5b7) ) /* all banked */
|
||||
|
@ -1,36 +1,36 @@
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders: Gabriele D'Antona
|
||||
/*
|
||||
Olympia BOSS
|
||||
Made in Germany around 1981
|
||||
|
||||
The BOSS series was not a great success, as its members differed too much to be compatible:
|
||||
First they were 8085 based, later machines used a Z80A.
|
||||
|
||||
Other distinguishing features were the capacity of the disk drives:
|
||||
|
||||
BOSS A: Two 128K floppy drives
|
||||
BOSS B: Two 256K disk drives
|
||||
BOSS C: Two 600K disk drives
|
||||
BOSS D: One 600K disk drive, one 5 MB harddisk
|
||||
BOSS M: M for multipost, up to four BOSS machines linked together for up to 20MB shared harddisk space
|
||||
|
||||
Olympia favoured the French Prologue operating system over CPM (cf. Olympia People PC) and supplied BAL
|
||||
as a programming language with it.
|
||||
|
||||
Video is 80x28
|
||||
|
||||
There are no service manuals available (or no documentation in general), so everything is guesswork.
|
||||
/*
|
||||
Olympia BOSS
|
||||
Made in Germany around 1981
|
||||
|
||||
- Ports 0x80 and 0x81 seem to be related to the graphics chip and cursor position
|
||||
The rom outs value 0x81 to port 0x81 and then the sequence <column> <row> (?) to port 0x80
|
||||
The BOSS series was not a great success, as its members differed too much to be compatible:
|
||||
First they were 8085 based, later machines used a Z80A.
|
||||
|
||||
- The machine boots up and shows "BOSS .." on the screen. Every keystroke is repeated on screen.
|
||||
If you press <return>, the machine seems to go into a boot sequence (from the HD, probably)
|
||||
|
||||
The harddisk controller is based on a MSC-9056.
|
||||
|
||||
Links: http://www.old-computers.com/museum/computer.asp?c=95
|
||||
Other distinguishing features were the capacity of the disk drives:
|
||||
|
||||
BOSS A: Two 128K floppy drives
|
||||
BOSS B: Two 256K disk drives
|
||||
BOSS C: Two 600K disk drives
|
||||
BOSS D: One 600K disk drive, one 5 MB harddisk
|
||||
BOSS M: M for multipost, up to four BOSS machines linked together for up to 20MB shared harddisk space
|
||||
|
||||
Olympia favoured the French Prologue operating system over CPM (cf. Olympia People PC) and supplied BAL
|
||||
as a programming language with it.
|
||||
|
||||
Video is 80x28
|
||||
|
||||
There are no service manuals available (or no documentation in general), so everything is guesswork.
|
||||
|
||||
- Ports 0x80 and 0x81 seem to be related to the graphics chip and cursor position
|
||||
The rom outs value 0x81 to port 0x81 and then the sequence <column> <row> (?) to port 0x80
|
||||
|
||||
- The machine boots up and shows "BOSS .." on the screen. Every keystroke is repeated on screen.
|
||||
If you press <return>, the machine seems to go into a boot sequence (from the HD, probably)
|
||||
|
||||
The harddisk controller is based on a MSC-9056.
|
||||
|
||||
Links: http://www.old-computers.com/museum/computer.asp?c=95
|
||||
*/
|
||||
|
||||
#include "emu.h"
|
||||
@ -48,7 +48,7 @@
|
||||
|
||||
#define UPD3301_TAG "upd3301"
|
||||
#define I8257_TAG "i8257"
|
||||
#define SCREEN_TAG "screen"
|
||||
#define SCREEN_TAG "screen"
|
||||
|
||||
//**************************************************************************
|
||||
// TYPE DEFINITIONS
|
||||
@ -127,7 +127,7 @@ private:
|
||||
|
||||
bool m_keybhit;
|
||||
u8 m_keystroke;
|
||||
void keyboard_put(u8 data);
|
||||
void keyboard_put(u8 data);
|
||||
void keyboard85_put(u8 data);
|
||||
u8 m_fdcctrl, m_fdctype;
|
||||
u8 m_channel, m_vchrmap, m_vchrpage;
|
||||
@ -245,7 +245,7 @@ WRITE8_MEMBER( olyboss_state::vchrram_w )
|
||||
|
||||
WRITE_LINE_MEMBER( olyboss_state::romdis_w )
|
||||
{
|
||||
m_romen = state ? false : true;
|
||||
m_romen = state ? false : true;
|
||||
}
|
||||
|
||||
IRQ_CALLBACK_MEMBER( olyboss_state::irq_cb )
|
||||
@ -269,7 +269,7 @@ UPD3301_DRAW_CHARACTER_MEMBER( olyboss_state::olyboss_display_pixels )
|
||||
int i;
|
||||
|
||||
//if (lc >= 8) return;
|
||||
if (csr)
|
||||
if (csr)
|
||||
{
|
||||
data = 0xff;
|
||||
}
|
||||
@ -566,7 +566,7 @@ ROM_START( bossb85 )
|
||||
ROM_LOAD( "olympia_boss_graphics_251-461.bin", 0x0000, 0x800, CRC(56149540) SHA1(b2b893bd219308fc98a38528beb7ddae391c7609) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( olybossb ) // verified: BOSS B uses the same ROMs as D, so C is safe to assume as well
|
||||
ROM_START( olybossb ) // verified: BOSS B uses the same ROMs as D, so C is safe to assume as well
|
||||
ROM_REGION(0x800, "mainrom", ROMREGION_ERASEFF)
|
||||
ROM_LOAD( "olympia_boss_system_251-462.bin", 0x0000, 0x800, CRC(01b99609) SHA1(07b764c36337c12f7b40aa309b0805ceed8b22e2) )
|
||||
|
||||
@ -595,9 +595,9 @@ ROM_END
|
||||
// SYSTEM DRIVERS
|
||||
//**************************************************************************
|
||||
|
||||
// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS
|
||||
COMP(1981, bossa85, olybossd, 0, bossa85, olyboss, olyboss_state, 0, "Olympia International", "Olympia BOSS A 8085", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
||||
COMP(1981, bossb85, olybossd, 0, bossb85, olyboss, olyboss_state, 0, "Olympia International", "Olympia BOSS B 8085", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
||||
COMP(1981, olybossb, olybossd, 0, olybossb, olyboss, olyboss_state, 0, "Olympia International", "Olympia BOSS B", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
||||
COMP(1981, olybossc, olybossd, 0, olybossc, olyboss, olyboss_state, 0, "Olympia International", "Olympia BOSS C", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
||||
COMP(1981, olybossd, 0, 0, olybossd, olyboss, olyboss_state, 0, "Olympia International", "Olympia BOSS D", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
||||
// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS
|
||||
COMP(1981, bossa85, olybossd, 0, bossa85, olyboss, olyboss_state, 0, "Olympia International", "Olympia BOSS A 8085", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
||||
COMP(1981, bossb85, olybossd, 0, bossb85, olyboss, olyboss_state, 0, "Olympia International", "Olympia BOSS B 8085", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
||||
COMP(1981, olybossb, olybossd, 0, olybossb, olyboss, olyboss_state, 0, "Olympia International", "Olympia BOSS B", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
||||
COMP(1981, olybossc, olybossd, 0, olybossc, olyboss, olyboss_state, 0, "Olympia International", "Olympia BOSS C", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
||||
COMP(1981, olybossd, 0, 0, olybossd, olyboss, olyboss_state, 0, "Olympia International", "Olympia BOSS D", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
||||
|
@ -649,7 +649,7 @@ ROM_START( paclandm2 )
|
||||
|
||||
ROM_REGION( 0x10000, "mcu", 0 )
|
||||
ROM_LOAD( "pl1_7.3e", 0x8000, 0x2000, CRC(8c5becae) SHA1(14d67136395c4c64472980a69648ce2d479ae67f) )
|
||||
ROM_LOAD( "cus60-60a1.mcu", 0xf000, 0x1000, CRC(076ea82a) SHA1(22b5e62e26390d7d5cacc0503c7aa5ed524204df) )
|
||||
ROM_LOAD( "cus60-60a1.mcu", 0xf000, 0x1000, CRC(076ea82a) SHA1(22b5e62e26390d7d5cacc0503c7aa5ed524204df) )
|
||||
|
||||
ROM_REGION( 0x02000, "gfx1", 0 )
|
||||
ROM_LOAD( "pl2_12.6n", 0x00000, 0x2000, CRC(a63c8726) SHA1(b15903fa2267375280af03af0a7157e1b0bcb86d) )
|
||||
@ -664,7 +664,7 @@ ROM_START( paclandm2 )
|
||||
ROM_LOAD( "pl1-11.7f", 0x0c000, 0x4000, CRC(6621361a) SHA1(4efa40adba803006e86d5e12514983d4132b5efb) )
|
||||
|
||||
ROM_REGION( 0x1400, "proms", 0 )
|
||||
ROM_LOAD( "pl1-2.1t", 0x0000, 0x0400, CRC(472885de) SHA1(8d552c90b8d5bc6ad6c60934c00f4303cd180ce7) )
|
||||
ROM_LOAD( "pl1-2.1t", 0x0000, 0x0400, CRC(472885de) SHA1(8d552c90b8d5bc6ad6c60934c00f4303cd180ce7) )
|
||||
ROM_LOAD( "pl1-1.1r", 0x0400, 0x0400, CRC(a78ebdaf) SHA1(8ea215701eb5e1a2a329ef92c19fc69b18fc28c7) )
|
||||
ROM_LOAD( "pl1-5.5t", 0x0800, 0x0400, CRC(4b7ee712) SHA1(dd0ec4c632d8b160f7b54d8f18fcf4ef1508d832) )
|
||||
ROM_LOAD( "pl1-4.4n", 0x0c00, 0x0400, CRC(3a7be418) SHA1(475cdc68205e3acce83fe79b00b74c6a7e28dde4) )
|
||||
|
@ -12,42 +12,42 @@
|
||||
- cassette handling requires a decap of the MCU. It could be possible to
|
||||
do some tight synch between the master CPU and a code simulation, but maybe
|
||||
it's not worth the effort...
|
||||
- Identify and hook-up the FDC device, apparently PC-6001 and PC-6601 doesn't
|
||||
even use the same thing;
|
||||
- Identify and hook-up the FDC device, apparently PC-6001 and PC-6601 doesn't
|
||||
even use the same thing;
|
||||
- PC-6601: mon r-0 type games doesn't seem to work at all on this system?
|
||||
- PC-6001SR: get it to boot, also implement MK-2 compatibility mode (it changes
|
||||
the memory map to behave like the older versions)
|
||||
- PC-6001SR: get it to boot, also implement MK-2 compatibility mode (it changes
|
||||
the memory map to behave like the older versions)
|
||||
- Hookup MC6847 for vanilla PC-6001 and fix video bugs for that device;
|
||||
- upd7752 voice speech device needs to be properly emulated (device is currently a skeleton),
|
||||
Chrith game is a good test case, it's supposed to talk before title screen;
|
||||
- upd7752 voice speech device needs to be properly emulated (device is currently a skeleton),
|
||||
Chrith game is a good test case, it's supposed to talk before title screen;
|
||||
|
||||
TODO (game specific):
|
||||
- (several AX* games, namely Galaxy Mission Part 1/2 and others): inputs doesn't work;
|
||||
- AX6 - Demo: When AY-based speech talks, other emus emulates the screen drawing to be
|
||||
a solid green (plain PC-6001) or solid white (Mk2 version), but according to an
|
||||
original video reference, that screen should actually some kind of weird garbage on it;
|
||||
- AX6 - Powered Knight: doesn't work too well, according to the asm code it asks the
|
||||
player to press either 'B' or 'C' then a number but nothing is shown on screen,
|
||||
other emus behaves the same, bad dump?
|
||||
- AX6 - Demo: When AY-based speech talks, other emus emulates the screen drawing to be
|
||||
a solid green (plain PC-6001) or solid white (Mk2 version), but according to an
|
||||
original video reference, that screen should actually some kind of weird garbage on it;
|
||||
- AX6 - Powered Knight: doesn't work too well, according to the asm code it asks the
|
||||
player to press either 'B' or 'C' then a number but nothing is shown on screen,
|
||||
other emus behaves the same, bad dump?
|
||||
- Dawn Patrol (cart): presumably too slow;
|
||||
(Mk2 mode 5 games)
|
||||
- 3D Golf Simulation Super Version: gameplay / inputs seems broken
|
||||
- American Truck: Screen is offset at the loading screen, loading bug?
|
||||
- Castle Excellent: copyright text drawing is quite bogus, scans text in vertical
|
||||
- Castle Excellent: copyright text drawing is quite bogus, scans text in vertical
|
||||
instead of horizontal?
|
||||
- Dezeni Land (ALL versions) / Hurry Fox 1/2: asks you to "load something", can't do it
|
||||
with current cassette kludge, also, for Dezeni Land(s) keyboard irqs doesn't seem to
|
||||
work too well with halt opcode execution?
|
||||
- Dezeni Land (ALL versions) / Hurry Fox 1/2: asks you to "load something", can't do it
|
||||
with current cassette kludge, also, for Dezeni Land(s) keyboard irqs doesn't seem to
|
||||
work too well with halt opcode execution?
|
||||
- Dezeni Land 1/4: dies after loading of main program;
|
||||
- Dezeni Land 2: dies at the "load something" screen with presumably wrong stack opcodes
|
||||
- (MyCom BASIC games with multiple files): most of them refuses to run ... how to load them?
|
||||
- Grobda: when "get ready" speech plays, screen should be full white but instead it's all
|
||||
black, same issue as AX-6 Demo?
|
||||
- Grobda: when "get ready" speech plays, screen should be full white but instead it's all
|
||||
black, same issue as AX-6 Demo?
|
||||
- Pac-Man / Tiny Xevious 2: gameplay is too fast
|
||||
- Salad no Kunino Tomato-Hime: can't start a play
|
||||
- Space Harrier: inputs doesn't work properly
|
||||
- The Black Onyx: dies when it attempts to save the character, that obviously means saving
|
||||
on the tape;
|
||||
- The Black Onyx: dies when it attempts to save the character, that obviously means saving
|
||||
on the tape;
|
||||
- Yakyukyo / Punchball Mario: waits for an irq, check which one;
|
||||
|
||||
=================================================================================================
|
||||
@ -163,7 +163,7 @@ inline void pc6001_state::ppi_control_hack_w(uint8_t data)
|
||||
|
||||
#ifdef UNUSED_FUNCTION
|
||||
// this switch-case is overwritten below anyway!?
|
||||
switch(data)
|
||||
switch(data)
|
||||
{
|
||||
case 0x08: m_port_c_8255 |= 0x88; break;
|
||||
case 0x09: m_port_c_8255 &= 0xf7; break;
|
||||
@ -172,7 +172,7 @@ inline void pc6001_state::ppi_control_hack_w(uint8_t data)
|
||||
default: break;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
m_port_c_8255 |= 0xa8;
|
||||
}
|
||||
|
||||
@ -572,9 +572,9 @@ void pc6001mk2_state::vram_bank_change(uint8_t vram_bank)
|
||||
{
|
||||
uint32_t bank_base_values[8] = { 0x8000, 0xc000, 0xc000, 0xe000, 0x0000, 0x8000, 0x4000, 0xa000 };
|
||||
uint8_t vram_bank_index = ((vram_bank & 0x60) >> 4) | ((vram_bank & 2) >> 1);
|
||||
// uint8_t *work_ram = m_region_maincpu->base();
|
||||
// uint8_t *work_ram = m_region_maincpu->base();
|
||||
|
||||
// bit 2 of vram_bank sets up 4 color mode
|
||||
// bit 2 of vram_bank sets up 4 color mode
|
||||
set_videoram_bank(0x28000 + bank_base_values[vram_bank_index]);
|
||||
|
||||
// popmessage("%02x",vram_bank);
|
||||
@ -598,7 +598,7 @@ inline void pc6001mk2_state::refresh_crtc_params()
|
||||
int y_height;
|
||||
|
||||
y_height = (m_exgfx_bitmap_mode || m_exgfx_2bpp_mode) ? 200 : 240;
|
||||
|
||||
|
||||
visarea.set(0, (320) - 1, 0, (y_height) - 1);
|
||||
|
||||
m_screen->configure(m_screen->width(), m_screen->height(), visarea, m_screen->frame_period().attoseconds());
|
||||
@ -728,7 +728,7 @@ ADDRESS_MAP_END
|
||||
*
|
||||
****************************************/
|
||||
|
||||
// disk device placeholder
|
||||
// disk device placeholder
|
||||
// TODO: identify & hook-up this FDC
|
||||
READ8_MEMBER(pc6601_state::fdc_r)
|
||||
{
|
||||
@ -743,7 +743,7 @@ ADDRESS_MAP_START(pc6601_state::pc6601_io)
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_IMPORT_FROM( pc6001mk2_io )
|
||||
|
||||
|
||||
// these are disk related
|
||||
// AM_RANGE(0xb1
|
||||
// AM_RANGE(0xb2
|
||||
@ -840,12 +840,12 @@ WRITE8_MEMBER(pc6001sr_state::sr_work_ram0_w)
|
||||
{
|
||||
uint32_t real_offs = (m_bitmap_xoffs*16+m_bitmap_yoffs)*256;
|
||||
real_offs += offset;
|
||||
|
||||
|
||||
m_gvram[real_offs] = data;
|
||||
return;
|
||||
}
|
||||
|
||||
SR_WRAM_BANK_W(0);
|
||||
SR_WRAM_BANK_W(0);
|
||||
}
|
||||
WRITE8_MEMBER(pc6001sr_state::sr_work_ram1_w){ SR_WRAM_BANK_W(1); }
|
||||
WRITE8_MEMBER(pc6001sr_state::sr_work_ram2_w){ SR_WRAM_BANK_W(2); }
|
||||
@ -861,7 +861,7 @@ WRITE8_MEMBER(pc6001sr_state::sr_mode_w)
|
||||
m_sr_text_mode = bool(BIT(data,3));
|
||||
m_sr_text_rows = data & 4 ? 20 : 25;
|
||||
// bit 1: bus request
|
||||
|
||||
|
||||
if(data & 1)
|
||||
assert("PC-6001SR in Mk-2 compatibility mode not yet supported!\n");
|
||||
}
|
||||
@ -951,7 +951,7 @@ ADDRESS_MAP_START(pc6001sr_state::pc6001sr_io)
|
||||
AM_RANGE(0xc9, 0xc9) AM_WRITE(sr_vram_bank_w)
|
||||
AM_RANGE(0xce, 0xce) AM_WRITE(sr_bitmap_yoffs_w)
|
||||
AM_RANGE(0xcf, 0xcf) AM_WRITE(sr_bitmap_xoffs_w)
|
||||
|
||||
|
||||
AM_RANGE(0xd0, 0xdf) AM_READWRITE(fdc_r,fdc_w) // disk device
|
||||
|
||||
AM_RANGE(0xe0, 0xe3) AM_MIRROR(0x0c) AM_DEVREADWRITE("upd7752", upd7752_device, read, write)
|
||||
@ -1131,7 +1131,7 @@ INTERRUPT_GEN_MEMBER(pc6001_state::vrtc_irq)
|
||||
INTERRUPT_GEN_MEMBER(pc6001sr_state::sr_vrtc_irq)
|
||||
{
|
||||
m_kludge ^= 1;
|
||||
|
||||
|
||||
// TODO: it is unclear who is responsible of the "Joystick IRQ" vs VRTC
|
||||
if(m_kludge)
|
||||
{
|
||||
@ -1310,7 +1310,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(pc6001_state::keyboard_callback)
|
||||
// uint8_t p1_key = m_io_p1->read();
|
||||
|
||||
if(m_cas_switch == 0)
|
||||
{
|
||||
{
|
||||
if((key1 != m_old_key1) || (key2 != m_old_key2) || (key3 != m_old_key3))
|
||||
{
|
||||
m_cur_keycode = check_keyboard_press();
|
||||
@ -1344,7 +1344,7 @@ inline void pc6001_state::set_videoram_bank(uint32_t offs)
|
||||
void pc6001_state::machine_reset()
|
||||
{
|
||||
set_videoram_bank(0xc000);
|
||||
|
||||
|
||||
if (m_cart->exists())
|
||||
m_maincpu->space(AS_PROGRAM).install_read_handler(0x4000, 0x5fff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
|
||||
|
||||
@ -1359,7 +1359,7 @@ void pc6001_state::machine_reset()
|
||||
m_timer_irq_mask = 1;
|
||||
m_timer_irq_mask2 = 1;
|
||||
// timer irq vector is fixed in plain PC-6001
|
||||
m_timer_irq_vector = 0x06;
|
||||
m_timer_irq_vector = 0x06;
|
||||
set_timer_divider(3);
|
||||
}
|
||||
|
||||
@ -1392,7 +1392,7 @@ void pc6001mk2_state::machine_reset()
|
||||
m_gfx_bank_on = 0;
|
||||
}
|
||||
|
||||
// refresh_crtc_params();
|
||||
// refresh_crtc_params();
|
||||
}
|
||||
|
||||
void pc6001sr_state::machine_reset()
|
||||
@ -1431,7 +1431,7 @@ void pc6001sr_state::machine_reset()
|
||||
m_sr_bank_w[6] = 0x0c;
|
||||
m_sr_bank_w[7] = 0x0e;
|
||||
|
||||
// m_gfx_bank_on = 0;
|
||||
// m_gfx_bank_on = 0;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1538,8 +1538,8 @@ MACHINE_CONFIG_START(pc6001mk2_state::pc6001mk2)
|
||||
MCFG_CPU_MODIFY("maincpu")
|
||||
MCFG_CPU_PROGRAM_MAP(pc6001mk2_map)
|
||||
MCFG_CPU_IO_MAP(pc6001mk2_io)
|
||||
|
||||
// MCFG_MACHINE_RESET_OVERRIDE(pc6001mk2_state,pc6001mk2)
|
||||
|
||||
// MCFG_MACHINE_RESET_OVERRIDE(pc6001mk2_state,pc6001mk2)
|
||||
|
||||
MCFG_SCREEN_MODIFY("screen")
|
||||
MCFG_SCREEN_UPDATE_DRIVER(pc6001mk2_state, screen_update_pc6001mk2)
|
||||
@ -1577,7 +1577,7 @@ MACHINE_CONFIG_START(pc6001sr_state::pc6001sr)
|
||||
MCFG_CPU_VBLANK_INT_DRIVER("screen", pc6001sr_state, sr_vrtc_irq)
|
||||
MCFG_CPU_IRQ_ACKNOWLEDGE_DRIVER(pc6001_state, irq_callback)
|
||||
|
||||
// MCFG_MACHINE_RESET_OVERRIDE(pc6001sr_state,pc6001sr)
|
||||
// MCFG_MACHINE_RESET_OVERRIDE(pc6001sr_state,pc6001sr)
|
||||
|
||||
MCFG_SCREEN_MODIFY("screen")
|
||||
MCFG_SCREEN_UPDATE_DRIVER(pc6001sr_state, screen_update_pc6001sr)
|
||||
|
@ -100,7 +100,7 @@ static INPUT_PORTS_START( pce )
|
||||
// pachinko controller paddle maps here (!?) with this arrangement
|
||||
//PORT_BIT( 0xff, 0x00, IPT_PADDLE ) PORT_MINMAX(0,0x5f) PORT_SENSITIVITY(15) PORT_KEYDELTA(15) PORT_CENTERDELTA(0) PORT_CODE_DEC(KEYCODE_N) PORT_CODE_INC(KEYCODE_M)
|
||||
|
||||
|
||||
|
||||
PORT_START("JOY_P.2")
|
||||
/* II is left of I on the original pad so we map them in reverse order */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("P3 Button I") PORT_PLAYER(3) PORT_CONDITION("JOY_TYPE", 0x0030, EQUALS, 0x0000)
|
||||
|
@ -45,7 +45,7 @@ public:
|
||||
required_region_ptr<uint8_t> m_main_bios;
|
||||
required_region_ptr<uint8_t> m_video_bios;
|
||||
required_region_ptr<uint8_t> m_ex_bios;
|
||||
|
||||
|
||||
uint8_t *m_shadow_ram;
|
||||
|
||||
DECLARE_READ8_MEMBER(bios_r);
|
||||
@ -77,13 +77,13 @@ static uint32_t sis_pcm_r(device_t *busdevice, device_t *device, int function, i
|
||||
// Device ID / Vendor ID
|
||||
return 0x04961039;
|
||||
}
|
||||
|
||||
|
||||
if(reg == 8)
|
||||
{
|
||||
// Device Class Code / Device Revision Identification
|
||||
return 0x06000002;
|
||||
}
|
||||
|
||||
|
||||
// Device Header Type
|
||||
if(reg == 0xc)
|
||||
return 0;
|
||||
@ -106,7 +106,7 @@ static void sis_pcm_w(device_t *busdevice, device_t *device, int function, int r
|
||||
if(reg == 0x44)
|
||||
{
|
||||
|
||||
/*
|
||||
/*
|
||||
* reg 0x45
|
||||
* shadow RAM control
|
||||
* xxxx ---- <reserved>
|
||||
@ -117,7 +117,7 @@ static void sis_pcm_w(device_t *busdevice, device_t *device, int function, int r
|
||||
*/
|
||||
if(ACCESSING_BITS_8_15)
|
||||
state->m_pci_shadow_reg = (data & 0xff00) | (state->m_pci_shadow_reg & 0x00ff);
|
||||
|
||||
|
||||
/*
|
||||
* shadow RAM enable:
|
||||
* bit 7: 0xf8000-0xfffff shadow RAM enable
|
||||
@ -126,7 +126,7 @@ static void sis_pcm_w(device_t *busdevice, device_t *device, int function, int r
|
||||
*/
|
||||
if(ACCESSING_BITS_0_7) // reg 0x44
|
||||
state->m_pci_shadow_reg = (data & 0x00ff) | (state->m_pci_shadow_reg & 0xff00);
|
||||
|
||||
|
||||
//printf("%04x\n",state->m_pci_shadow_reg);
|
||||
}
|
||||
}
|
||||
@ -134,9 +134,9 @@ static void sis_pcm_w(device_t *busdevice, device_t *device, int function, int r
|
||||
READ8_MEMBER(photoply_state::bios_r)
|
||||
{
|
||||
uint8_t bit_mask = (offset & 0x38000) >> 15;
|
||||
|
||||
|
||||
if((m_pci_shadow_reg & 0x200) == 0x200)
|
||||
{
|
||||
{
|
||||
if(m_pci_shadow_reg & (1 << bit_mask))
|
||||
return m_shadow_ram[offset];
|
||||
}
|
||||
@ -168,7 +168,7 @@ READ8_MEMBER(photoply_state::bios_r)
|
||||
|
||||
WRITE8_MEMBER(photoply_state::bios_w)
|
||||
{
|
||||
// return m_bios[offset];
|
||||
// return m_bios[offset];
|
||||
|
||||
if((m_pci_shadow_reg & 0x100) == 0)
|
||||
{
|
||||
@ -193,8 +193,8 @@ WRITE8_MEMBER(photoply_state::eeprom_w)
|
||||
ADDRESS_MAP_START(photoply_state::photoply_map)
|
||||
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
|
||||
AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", cirrus_gd5446_device, mem_r, mem_w, 0xffffffff)
|
||||
// AM_RANGE(0x000c0000, 0x000c7fff) AM_RAM AM_REGION("video_bios", 0)
|
||||
// AM_RANGE(0x000c8000, 0x000cffff) AM_RAM AM_REGION("ex_bios", 0)
|
||||
// AM_RANGE(0x000c0000, 0x000c7fff) AM_RAM AM_REGION("video_bios", 0)
|
||||
// AM_RANGE(0x000c8000, 0x000cffff) AM_RAM AM_REGION("ex_bios", 0)
|
||||
AM_RANGE(0x000c0000, 0x000fffff) AM_READWRITE8(bios_r,bios_w,0xffffffff)
|
||||
AM_RANGE(0x00100000, 0x07ffffff) AM_RAM // 64MB RAM, guess!
|
||||
AM_RANGE(0xfffe0000, 0xffffffff) AM_ROM AM_REGION("bios", 0)
|
||||
@ -209,15 +209,15 @@ ADDRESS_MAP_START(photoply_state::photoply_io)
|
||||
AM_RANGE(0x0170, 0x0177) AM_DEVREADWRITE("ide2", ide_controller_32_device, read_cs0, write_cs0)
|
||||
AM_RANGE(0x01f0, 0x01f7) AM_DEVREADWRITE("ide", ide_controller_32_device, read_cs0, write_cs0)
|
||||
AM_RANGE(0x0200, 0x0203) AM_WRITE8(eeprom_w, 0x00ff0000)
|
||||
// AM_RANGE(0x0278, 0x027f) AM_RAM //parallel port 2
|
||||
// AM_RANGE(0x0278, 0x027f) AM_RAM //parallel port 2
|
||||
AM_RANGE(0x0370, 0x0377) AM_DEVREADWRITE("ide2", ide_controller_32_device, read_cs1, write_cs1)
|
||||
// AM_RANGE(0x0378, 0x037f) AM_RAM //parallel port
|
||||
// AM_RANGE(0x0378, 0x037f) AM_RAM //parallel port
|
||||
AM_RANGE(0x03b0, 0x03bf) AM_DEVREADWRITE8("vga", cirrus_gd5446_device, port_03b0_r, port_03b0_w, 0xffffffff)
|
||||
AM_RANGE(0x03c0, 0x03cf) AM_DEVREADWRITE8("vga", cirrus_gd5446_device, port_03c0_r, port_03c0_w, 0xffffffff)
|
||||
AM_RANGE(0x03d0, 0x03df) AM_DEVREADWRITE8("vga", cirrus_gd5446_device, port_03d0_r, port_03d0_w, 0xffffffff)
|
||||
|
||||
AM_RANGE(0x03f0, 0x03f7) AM_DEVREADWRITE("ide", ide_controller_32_device, read_cs1, write_cs1)
|
||||
|
||||
|
||||
AM_RANGE(0x0cf8, 0x0cff) AM_DEVREADWRITE("pcibus", pci_bus_legacy_device, read, write)
|
||||
|
||||
ADDRESS_MAP_END
|
||||
@ -229,8 +229,8 @@ static INPUT_PORTS_START( photoply )
|
||||
PORT_START("pc_keyboard_0")
|
||||
PORT_BIT ( 0x0001, 0x0000, IPT_UNUSED ) /* unused scancode 0 */
|
||||
AT_KEYB_HELPER( 0x0002, "Esc", KEYCODE_Q ) /* Esc 01 81 */
|
||||
AT_KEYB_HELPER( 0x0004, "1", KEYCODE_1 )
|
||||
AT_KEYB_HELPER( 0x0008, "2", KEYCODE_2 )
|
||||
AT_KEYB_HELPER( 0x0004, "1", KEYCODE_1 )
|
||||
AT_KEYB_HELPER( 0x0008, "2", KEYCODE_2 )
|
||||
|
||||
PORT_START("pc_keyboard_1")
|
||||
AT_KEYB_HELPER( 0x0020, "Y", KEYCODE_Y ) /* Y 15 95 */
|
||||
@ -307,7 +307,7 @@ MACHINE_CONFIG_START(photoply_state::photoply)
|
||||
|
||||
MCFG_PCI_BUS_LEGACY_ADD("pcibus", 0)
|
||||
MCFG_PCI_BUS_LEGACY_DEVICE(5, nullptr, sis_pcm_r, sis_pcm_w)
|
||||
|
||||
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
MCFG_SCREEN_RAW_PARAMS(XTAL(25'174'800),900,0,640,526,0,480)
|
||||
MCFG_SCREEN_UPDATE_DEVICE("vga", cirrus_gd5446_device, screen_update)
|
||||
@ -327,9 +327,9 @@ ROM_START(photoply)
|
||||
|
||||
ROM_REGION(0x8000, "ex_bios", ROMREGION_ERASE00 ) /* multifunction board with a ESS AudioDrive chip, M27128A */
|
||||
ROM_LOAD("enhanced bios.bin", 0x000000, 0x4000, CRC(a216404e) SHA1(c9067cf87d5c8106de00866bb211eae3a6c02c65) )
|
||||
// ROM_RELOAD( 0x004000, 0x4000 )
|
||||
// ROM_RELOAD( 0x008000, 0x4000 )
|
||||
// ROM_RELOAD( 0x00c000, 0x4000 )
|
||||
// ROM_RELOAD( 0x004000, 0x4000 )
|
||||
// ROM_RELOAD( 0x008000, 0x4000 )
|
||||
// ROM_RELOAD( 0x00c000, 0x4000 )
|
||||
|
||||
ROM_REGION(0x8000, "video_bios", 0 )
|
||||
ROM_LOAD("vga.bin", 0x000000, 0x8000, CRC(7a859659) SHA1(ff667218261969c48082ec12aa91088a01b0cb2a) )
|
||||
|
@ -1006,7 +1006,7 @@ MACHINE_CONFIG_END
|
||||
//-------------------------------------------------
|
||||
|
||||
static MACHINE_CONFIG_START( megaopd )
|
||||
static ql(config);
|
||||
static ql(config);
|
||||
// internal ram
|
||||
MCFG_RAM_MODIFY(RAM_TAG)
|
||||
MCFG_RAM_DEFAULT_SIZE("256K")
|
||||
|
@ -1889,7 +1889,7 @@ DRIVER_INIT_MEMBER(rohga_state,hangzo)
|
||||
{
|
||||
const uint8_t *src = memregion("gfx2")->base();
|
||||
uint8_t *dst = memregion("gfx1")->base();
|
||||
|
||||
|
||||
std::copy(&src[0], &src[0x20000], &dst[0]);
|
||||
std::copy(&src[0x80000], &src[0xa0000], &dst[0x20000]);
|
||||
}
|
||||
|
@ -152,12 +152,12 @@ uint32_t sandscrp_state::screen_update(screen_device &screen, bitmap_ind16 &bitm
|
||||
|
||||
// copy sprite bitmap to screen
|
||||
m_pandora->update(bitmap, cliprect);
|
||||
|
||||
|
||||
for ( int h = 4; h < 8; h++ ) // high bit of tile priority : above sprites
|
||||
{
|
||||
m_view2->render_tilemap_chip(screen,bitmap,cliprect,h);
|
||||
}
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -2088,7 +2088,7 @@ MACHINE_CONFIG_END
|
||||
|
||||
/*
|
||||
static MACHINE_CONFIG_START( system16a_i8751_no7751 )
|
||||
system16a_i8751(config);
|
||||
system16a_i8751(config);
|
||||
MCFG_DEVICE_REMOVE("n7751")
|
||||
MCFG_DEVICE_REMOVE("dac")
|
||||
MCFG_DEVICE_REMOVE("vref")
|
||||
|
@ -1895,8 +1895,8 @@ MACHINE_CONFIG_START(seibuspi_state::spi)
|
||||
|
||||
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
|
||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||
// MCFG_SOUND_ROUTE(2, "lspeaker", 1.0) Output 2/3 not used?
|
||||
// MCFG_SOUND_ROUTE(3, "rspeaker", 1.0)
|
||||
// MCFG_SOUND_ROUTE(2, "lspeaker", 1.0) Output 2/3 not used?
|
||||
// MCFG_SOUND_ROUTE(3, "rspeaker", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
MACHINE_CONFIG_START(seibuspi_state::ejanhs)
|
||||
@ -1938,7 +1938,7 @@ MACHINE_CONFIG_START(seibuspi_state::sxx2e)
|
||||
MCFG_DEVICE_REMOVE("soundflash2")
|
||||
|
||||
MCFG_DEVICE_REMOVE("soundfifo2")
|
||||
|
||||
|
||||
/* sound hardware */
|
||||
// Single PCBs only output mono sound, SXX2E : unverified
|
||||
MCFG_DEVICE_REMOVE("lspeaker")
|
||||
|
@ -180,7 +180,7 @@ INPUT_PORTS_START(sk1)
|
||||
|
||||
PORT_START("KO9")
|
||||
PORT_BIT(0x83, IP_ACTIVE_LOW, IPT_SPECIAL) PORT_CUSTOM_MEMBER(DEVICE_SELF, sk1_state, function_in, nullptr)
|
||||
PORT_BIT(0x7c, IP_ACTIVE_LOW, IPT_UNUSED)
|
||||
PORT_BIT(0x7c, IP_ACTIVE_LOW, IPT_UNUSED)
|
||||
|
||||
PORT_START("TOGGLES")
|
||||
PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("PLAY") PORT_CHANGED_MEMBER(DEVICE_SELF, sk1_state, sw_function<0xfe>, nullptr) // three-position function switch
|
||||
|
@ -123,7 +123,7 @@ public:
|
||||
m_cop_ram(*this, "cop_ram"),
|
||||
m_st0016_bank(*this, "st0016_bank")
|
||||
{ }
|
||||
|
||||
|
||||
required_device<palette_device> m_palette;
|
||||
required_device<st0016_cpu_device> m_maincpu;
|
||||
required_device<cpu_device> m_subcpu;
|
||||
|
@ -566,7 +566,7 @@ MACHINE_CONFIG_START(srmp5_state::srmp5)
|
||||
MCFG_R3000_ENDIANNESS(ENDIANNESS_LITTLE)
|
||||
MCFG_CPU_PROGRAM_MAP(srmp5_mem)
|
||||
MCFG_CPU_VBLANK_INT_DRIVER("screen", srmp5_state, irq4_line_assert)
|
||||
|
||||
|
||||
MCFG_CPU_ADD("soundcpu",ST0016_CPU,8000000)
|
||||
MCFG_CPU_PROGRAM_MAP(st0016_mem)
|
||||
MCFG_CPU_IO_MAP(st0016_io)
|
||||
@ -597,7 +597,7 @@ ROM_START( srmp5 )
|
||||
ROM_LOAD32_BYTE( "sx008-12.bin", 0x00001, 0x80000, CRC(43e9bb98) SHA1(e46dd98d2e1babfa12ddf2fa9b31377e8691d3a1) )
|
||||
ROM_LOAD32_BYTE( "sx008-13.bin", 0x00002, 0x80000, CRC(0af475e8) SHA1(24cddffa0f8c81832ae8870823d772e3b7493194) )
|
||||
ROM_LOAD32_BYTE( "sx008-14.bin", 0x00003, 0x80000, CRC(b5c55120) SHA1(0a41351c9563b2c6a00709189a917757bd6e0a24) )
|
||||
|
||||
|
||||
ROM_REGION( 0x400000, "soundcpu", 0 ) // SoundDriverV1.26
|
||||
ROM_LOAD( "sx008-08.bin", 0x000000, 0x200000, CRC(d4ac54f4) SHA1(c3dc76cd71485796a0b6a960294ea96eae8c946e) )
|
||||
ROM_LOAD( "sx008-09.bin", 0x200000, 0x200000, CRC(5a3e6560) SHA1(92ea398f3c5e3035869f0ca5dfe7b05c90095318) )
|
||||
|
@ -15,7 +15,7 @@ Notes:
|
||||
Banbam has a Fujitsu MB8841 4-Bit MCU for protection labeled SUN 8212.
|
||||
Its internal ROM has been imaged, manually typed, and decoded as sun-8212.ic3.
|
||||
Pettan Pyuu is a clone of Banbam although with different levels / play fields.
|
||||
|
||||
|
||||
Protection currently fails on both Pettan Pyuu and Banbam if you play either
|
||||
game to Round 11. When you get there, the music still plays but all you see is
|
||||
"ERR-43" in red text at the bottom left of the screen and the game is no longer
|
||||
|
@ -3584,7 +3584,7 @@ ROM_START( patocar )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sackids )
|
||||
// STV_BIOS
|
||||
// STV_BIOS
|
||||
|
||||
// wants it's own specific bios, marked "CKBP1.13J0001024" at 0x800
|
||||
// PC=06004150 is where it compares this
|
||||
@ -3593,15 +3593,15 @@ ROM_START( sackids )
|
||||
ROM_LOAD16_WORD_SWAP( "epr-20091.ic8", 0x000000, 0x080000, BAD_DUMP CRC(59ed40f4) SHA1(eff0f54c70bce05ff3a289bf30b1027e1c8cd117) )
|
||||
|
||||
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
|
||||
ROM_LOAD16_WORD_SWAP( "ic22.bin", 0x0200000, 0x200000, CRC(4d9d1870) SHA1(c702964af2767b0db4ca1d6c7d07356e675d5efd) )
|
||||
ROM_LOAD16_WORD_SWAP( "ic24.bin", 0x0400000, 0x200000, CRC(39fca3e5) SHA1(29be552f58b69f8f3f237ca14f13af3673559123) )
|
||||
ROM_LOAD16_WORD_SWAP( "ic26.bin", 0x0600000, 0x200000, CRC(f38c79b6) SHA1(a470a22ef3d735c9929f70ef5441547a07a480e8) )
|
||||
ROM_LOAD16_WORD_SWAP( "ic28.bin", 0x0800000, 0x200000, CRC(63d09f3c) SHA1(e470e5af52f9ee70bf160ff58a5cbafd7e674073) )
|
||||
ROM_LOAD16_WORD_SWAP( "ic30.bin", 0x0a00000, 0x200000, CRC(f89811ba) SHA1(8fa8b4b09430456bce63e45686640c7bcdde90e9) )
|
||||
ROM_LOAD16_WORD_SWAP( "ic32.bin", 0x0c00000, 0x200000, CRC(1db6c26b) SHA1(2e14b7b021bce145f989295fdc6effcd799f00a4) )
|
||||
ROM_LOAD16_WORD_SWAP( "ic34.bin", 0x0e00000, 0x200000, CRC(0f3622c8) SHA1(69337114d6902675018371101f0fba01902de54a) )
|
||||
ROM_LOAD16_WORD_SWAP( "ic36.bin", 0x1000000, 0x200000, CRC(9a4109e5) SHA1(ba59caac5f5a80fc52c507d8a47f322a380aa9a1) ) // empty / FF filled
|
||||
|
||||
ROM_LOAD16_WORD_SWAP( "ic22.bin", 0x0200000, 0x200000, CRC(4d9d1870) SHA1(c702964af2767b0db4ca1d6c7d07356e675d5efd) )
|
||||
ROM_LOAD16_WORD_SWAP( "ic24.bin", 0x0400000, 0x200000, CRC(39fca3e5) SHA1(29be552f58b69f8f3f237ca14f13af3673559123) )
|
||||
ROM_LOAD16_WORD_SWAP( "ic26.bin", 0x0600000, 0x200000, CRC(f38c79b6) SHA1(a470a22ef3d735c9929f70ef5441547a07a480e8) )
|
||||
ROM_LOAD16_WORD_SWAP( "ic28.bin", 0x0800000, 0x200000, CRC(63d09f3c) SHA1(e470e5af52f9ee70bf160ff58a5cbafd7e674073) )
|
||||
ROM_LOAD16_WORD_SWAP( "ic30.bin", 0x0a00000, 0x200000, CRC(f89811ba) SHA1(8fa8b4b09430456bce63e45686640c7bcdde90e9) )
|
||||
ROM_LOAD16_WORD_SWAP( "ic32.bin", 0x0c00000, 0x200000, CRC(1db6c26b) SHA1(2e14b7b021bce145f989295fdc6effcd799f00a4) )
|
||||
ROM_LOAD16_WORD_SWAP( "ic34.bin", 0x0e00000, 0x200000, CRC(0f3622c8) SHA1(69337114d6902675018371101f0fba01902de54a) )
|
||||
ROM_LOAD16_WORD_SWAP( "ic36.bin", 0x1000000, 0x200000, CRC(9a4109e5) SHA1(ba59caac5f5a80fc52c507d8a47f322a380aa9a1) ) // empty / FF filled
|
||||
|
||||
ROM_REGION32_BE( 0x3000000, "abus", ROMREGION_ERASE00 ) /* SH2 code */
|
||||
ROM_END
|
||||
|
||||
|
@ -3170,7 +3170,7 @@ MACHINE_CONFIG_START(taitof2_state::growl)
|
||||
MCFG_VIDEO_START_OVERRIDE(taitof2_state,taitof2_growl)
|
||||
MCFG_SCREEN_MODIFY("screen")
|
||||
MCFG_SCREEN_UPDATE_DRIVER(taitof2_state, screen_update_taitof2_pri)
|
||||
|
||||
|
||||
MCFG_PALETTE_MODIFY("palette")
|
||||
MCFG_PALETTE_FORMAT(RRRRGGGGBBBBRGBx)
|
||||
|
||||
@ -3276,7 +3276,7 @@ MACHINE_CONFIG_START(taitof2_state::koshien)
|
||||
MCFG_VIDEO_START_OVERRIDE(taitof2_state,taitof2_koshien)
|
||||
MCFG_SCREEN_MODIFY("screen")
|
||||
MCFG_SCREEN_UPDATE_DRIVER(taitof2_state, screen_update_taitof2_pri)
|
||||
|
||||
|
||||
MCFG_PALETTE_MODIFY("palette")
|
||||
MCFG_PALETTE_FORMAT(RRRRGGGGBBBBRGBx)
|
||||
|
||||
|
@ -247,9 +247,9 @@ ADDRESS_MAP_START(kongambl_state::kongambl_map)
|
||||
|
||||
AM_RANGE(0x500000, 0x5007ff) AM_RAM
|
||||
AM_RANGE(0x500380, 0x500383) AM_READ(test_r)
|
||||
// AM_RANGE(0x500400, 0x500403) AM_NOP //dual port?
|
||||
// AM_RANGE(0x500420, 0x500423) AM_NOP //dual port?
|
||||
// AM_RANGE(0x500500, 0x500503) AM_NOP // reads sound ROM in here, polled from m68k?
|
||||
// AM_RANGE(0x500400, 0x500403) AM_NOP //dual port?
|
||||
// AM_RANGE(0x500420, 0x500423) AM_NOP //dual port?
|
||||
// AM_RANGE(0x500500, 0x500503) AM_NOP // reads sound ROM in here, polled from m68k?
|
||||
AM_RANGE(0x580000, 0x580007) AM_READ(test_r)
|
||||
|
||||
AM_RANGE(0x600000, 0x60000f) AM_READ(test_r)
|
||||
|
@ -561,7 +561,7 @@ WRITE16_MEMBER( stepstag_state::stepstag_main2pc_w )
|
||||
|
||||
READ16_MEMBER(stepstag_state::unknown_read_0xc00000)
|
||||
{
|
||||
return machine().rand(); // 3
|
||||
return machine().rand(); // 3
|
||||
}
|
||||
|
||||
READ16_MEMBER(stepstag_state::unknown_read_0xffff00)
|
||||
@ -657,10 +657,10 @@ ADDRESS_MAP_START(stepstag_state::stepstag_map)
|
||||
AM_RANGE(0x600000, 0x60ffff) AM_RAM_WRITE(tetrisp2_vram_rot_w) AM_SHARE("vram_rot") // Rotation
|
||||
AM_RANGE(0x900000, 0x903fff) AM_READWRITE(rockn_nvram_r, tetrisp2_nvram_w) AM_SHARE("nvram") // NVRAM
|
||||
// AM_RANGE(0x904000, 0x907fff) AM_READWRITE(rockn_nvram_r, tetrisp2_nvram_w) // NVRAM (mirror)
|
||||
AM_RANGE(0xa00000, 0xa00001) AM_READNOP AM_WRITE(stepstag_neon_w) // Neon??
|
||||
AM_RANGE(0xa00000, 0xa00001) AM_READNOP AM_WRITE(stepstag_neon_w) // Neon??
|
||||
AM_RANGE(0xa10000, 0xa10001) AM_READ_PORT("RHYTHM") AM_WRITE(stepstag_step_leds_w) // I/O
|
||||
AM_RANGE(0xa20000, 0xa20001) AM_READNOP AM_WRITE(stepstag_button_leds_w) // I/O
|
||||
AM_RANGE(0xa30000, 0xa30001) AM_READWRITE(rockn_soundvolume_r, rockn_soundvolume_w) // Sound Volume
|
||||
AM_RANGE(0xa20000, 0xa20001) AM_READNOP AM_WRITE(stepstag_button_leds_w) // I/O
|
||||
AM_RANGE(0xa30000, 0xa30001) AM_READWRITE(rockn_soundvolume_r, rockn_soundvolume_w) // Sound Volume
|
||||
AM_RANGE(0xa42000, 0xa42001) AM_READ( stepstag_pc2main_r )
|
||||
AM_RANGE(0xa44000, 0xa44001) AM_READNOP // watchdog
|
||||
AM_RANGE(0xa48000, 0xa48001) AM_WRITE(stepstag_main2pc_w) // PC Comm
|
||||
@ -1331,71 +1331,71 @@ static INPUT_PORTS_START( vjdash )
|
||||
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1) // P1 up
|
||||
PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) // P1 down
|
||||
PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) // P1 left
|
||||
PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1) // P1 up
|
||||
PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) // P1 down
|
||||
PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) // P1 left
|
||||
PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) // P1 right
|
||||
PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
|
||||
/* PORT_DIPNAME( 0x0001, 0x0001, "DIPSW debug_2-0_INPUTS") // pour debug temperarement
|
||||
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0002, 0x0002, "DIPSW debug_2-1")
|
||||
PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0004, 0x0004, "DIPSW debug_2-2")
|
||||
PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0008, 0x0008, "DIPSW debug_2-3")
|
||||
PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0010, 0x0010, "DIPSW debug_2-4")
|
||||
PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0020, 0x0020, "DIPSW debug_2-5")
|
||||
PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0040, 0x0040, "DIPSW debug_2-6")
|
||||
PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0080, 0x0080, "DIPSW debug_2-7")
|
||||
PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
/* PORT_DIPNAME( 0x0001, 0x0001, "DIPSW debug_2-0_INPUTS") // pour debug temperarement
|
||||
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0002, 0x0002, "DIPSW debug_2-1")
|
||||
PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0004, 0x0004, "DIPSW debug_2-2")
|
||||
PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0008, 0x0008, "DIPSW debug_2-3")
|
||||
PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0010, 0x0010, "DIPSW debug_2-4")
|
||||
PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0020, 0x0020, "DIPSW debug_2-5")
|
||||
PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0040, 0x0040, "DIPSW debug_2-6")
|
||||
PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0080, 0x0080, "DIPSW debug_2-7")
|
||||
PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
|
||||
PORT_DIPNAME(0x0100, 0x0100, "DIPSW debug_2_8")
|
||||
PORT_DIPSETTING( 0x0100, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME(0x0200, 0x0200, "DIPSW debug_2_9")
|
||||
PORT_DIPSETTING( 0x0200, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0400, 0x0400, "DIPSW debug_2_a")
|
||||
PORT_DIPSETTING( 0x0400, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0800, 0x0800, "DIPSW debug_2_b")
|
||||
PORT_DIPSETTING( 0x0800, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x1000, 0x1000, "DIPSW debug_2_c")
|
||||
PORT_DIPSETTING( 0x1000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x2000, 0x2000, "DIPSW debug_2_d")
|
||||
PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x4000, 0x4000, "DIPSW debug_2_e")
|
||||
PORT_DIPSETTING( 0x4000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x8000, 0x8000, "DIPSW debug_2_f")
|
||||
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME(0x0100, 0x0100, "DIPSW debug_2_8")
|
||||
PORT_DIPSETTING( 0x0100, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME(0x0200, 0x0200, "DIPSW debug_2_9")
|
||||
PORT_DIPSETTING( 0x0200, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0400, 0x0400, "DIPSW debug_2_a")
|
||||
PORT_DIPSETTING( 0x0400, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0800, 0x0800, "DIPSW debug_2_b")
|
||||
PORT_DIPSETTING( 0x0800, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x1000, 0x1000, "DIPSW debug_2_c")
|
||||
PORT_DIPSETTING( 0x1000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x2000, 0x2000, "DIPSW debug_2_d")
|
||||
PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x4000, 0x4000, "DIPSW debug_2_e")
|
||||
PORT_DIPSETTING( 0x4000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x8000, 0x8000, "DIPSW debug_2_f")
|
||||
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
*/
|
||||
PORT_START("COINS") // $be0004.w
|
||||
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_SERVICE( 0x0010, IP_ACTIVE_LOW ) // service mode
|
||||
PORT_SERVICE( 0x0010, IP_ACTIVE_LOW ) // service mode
|
||||
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_SERVICE1 ) // service coin
|
||||
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_COIN1 ) // coin
|
||||
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
@ -1448,7 +1448,7 @@ static INPUT_PORTS_START( vjdash )
|
||||
PORT_DIPNAME( 0x0040, 0x0040, "DIPSW 1-7")
|
||||
PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0080, 0x0080, "DIPSW 1-8") //Free Play
|
||||
PORT_DIPNAME( 0x0080, 0x0080, "DIPSW 1-8") //Free Play
|
||||
PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
|
||||
@ -1464,13 +1464,13 @@ static INPUT_PORTS_START( vjdash )
|
||||
PORT_DIPNAME( 0x0800, 0x0800, "DIPSW 2-4")
|
||||
PORT_DIPSETTING( 0x0800, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x1000, 0x1000, "DIPSW 2-5") //Volume
|
||||
PORT_DIPNAME( 0x1000, 0x1000, "DIPSW 2-5") //Volume
|
||||
PORT_DIPSETTING( 0x1000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x2000, 0x2000, "DIPSW 2-6") //Volume
|
||||
PORT_DIPNAME( 0x2000, 0x2000, "DIPSW 2-6") //Volume
|
||||
PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x4000, 0x4000, "DIPSW 2-7") //Volume
|
||||
PORT_DIPNAME( 0x4000, 0x4000, "DIPSW 2-7") //Volume
|
||||
PORT_DIPSETTING( 0x4000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x8000, 0x8000, "DIPSW 2-8: ?")
|
||||
@ -1933,7 +1933,7 @@ MACHINE_CONFIG_START(stepstag_state::stepstag)
|
||||
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
MACHINE_CONFIG_START(stepstag_state::vjdash) // 4 Screens
|
||||
MACHINE_CONFIG_START(stepstag_state::vjdash) // 4 Screens
|
||||
MCFG_CPU_ADD("maincpu", M68000, 12000000 )
|
||||
MCFG_CPU_PROGRAM_MAP(vjdash_map)
|
||||
MCFG_CPU_VBLANK_INT_DRIVER("screen", tetrisp2_state, irq2_line_hold) // lev 4 triggered by system timer
|
||||
@ -2647,15 +2647,15 @@ ROM_START( vjdash )
|
||||
ROM_LOAD16_BYTE( "vjdash4_ver1.2.11", 0x00000, 0x80000, NO_DUMP )
|
||||
ROM_LOAD16_BYTE( "vjdash4_ver1.2.14", 0x00001, 0x80000, NO_DUMP )
|
||||
|
||||
ROM_REGION( 0x0c00000, "sprites_left", ROMREGION_ERASE ) // left screen sprites
|
||||
ROM_REGION( 0x0c00000, "sprites_left", ROMREGION_ERASE ) // left screen sprites
|
||||
ROM_LOAD( "vjdash-01", 0x000000, 0x400000, NO_DUMP )
|
||||
ROM_LOAD( "vjdash-02", 0x400000, 0x400000, NO_DUMP )
|
||||
|
||||
ROM_REGION( 0x1800000, "sprites_mid", ROMREGION_ERASE ) // middle screen sprites
|
||||
ROM_REGION( 0x1800000, "sprites_mid", ROMREGION_ERASE ) // middle screen sprites
|
||||
ROM_LOAD( "vjdash-03", 0x000000, 0x400000, NO_DUMP )
|
||||
ROM_LOAD( "vjdash-04", 0x400000, 0x400000, NO_DUMP )
|
||||
|
||||
ROM_REGION( 0x0c00000, "sprites_right", ROMREGION_ERASE ) // right screen sprites
|
||||
ROM_REGION( 0x0c00000, "sprites_right", ROMREGION_ERASE ) // right screen sprites
|
||||
ROM_LOAD( "vjdash-01", 0x000000, 0x400000, NO_DUMP )
|
||||
ROM_LOAD( "vjdash-02", 0x400000, 0x400000, NO_DUMP )
|
||||
|
||||
|
@ -283,7 +283,7 @@ static INPUT_PORTS_START( v100 )
|
||||
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CHAR('/') PORT_CHAR('?') PORT_CODE(KEYCODE_SLASH)
|
||||
|
||||
PORT_START("ROW3")
|
||||
PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CHAR('8') PORT_CHAR('*') PORT_CODE(KEYCODE_8)
|
||||
PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CHAR('8') PORT_CHAR('*') PORT_CODE(KEYCODE_8)
|
||||
PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CHAR('9') PORT_CHAR('(') PORT_CODE(KEYCODE_9)
|
||||
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CHAR('i') PORT_CHAR('I') PORT_CODE(KEYCODE_I)
|
||||
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CHAR('o') PORT_CHAR('O') PORT_CODE(KEYCODE_O)
|
||||
|
@ -100,7 +100,7 @@ public:
|
||||
optional_shared_ptr<uint16_t> m_wram;
|
||||
optional_shared_ptr<uint32_t> m_tiles32;
|
||||
optional_shared_ptr<uint32_t> m_wram32;
|
||||
|
||||
|
||||
optional_memory_region_array<2> m_okiregion;
|
||||
optional_memory_bank m_okibank;
|
||||
|
||||
@ -1866,7 +1866,7 @@ ROM_START( dtfamily )
|
||||
ROM_LOAD32_WORD( "romu02", 0x800002, 0x200000, CRC(80830961) SHA1(b318e9e3a4d1d7dca61d7d4c9ee01f605e2b2f4a) )
|
||||
/* roml03 empty */
|
||||
/* romu03 empty */
|
||||
|
||||
|
||||
/* $00000-$20000 stays the same in all sound banks, */
|
||||
/* the second half of the bank is what gets switched */
|
||||
ROM_REGION( 0x80000, "oki1", 0 ) /* Oki Samples */
|
||||
@ -2332,7 +2332,7 @@ ROM_START( finalgdr ) /* version 2.20.5915, Korea only */
|
||||
ROM_LOAD32_WORD( "romh00", 0x000002, 0x200000, CRC(f28578a5) SHA1(a5c7b17aff101f1f4f52657d0567a6c9d12a178d) )
|
||||
/* roml01 empty */
|
||||
/* romh01 empty */
|
||||
|
||||
|
||||
/* $00000-$20000 stays the same in all sound banks, */
|
||||
/* the second half of the bank is what gets switched */
|
||||
ROM_REGION( 0x80000, "oki1", 0 ) /* Oki Samples */
|
||||
@ -2440,7 +2440,7 @@ ROM_START( mrkickera )
|
||||
ROM_LOAD32_WORD( "romh00", 0x000002, 0x200000, CRC(b6337d4a) SHA1(2f46e2933af7fd0f71083900d5e6e4f602ab4c66) )
|
||||
/* roml01 empty */
|
||||
/* romh01 empty */
|
||||
|
||||
|
||||
/* $00000-$20000 stays the same in all sound banks, */
|
||||
/* the second half of the bank is what gets switched */
|
||||
ROM_REGION( 0x80000, "oki1", 0 ) /* Oki Samples */
|
||||
@ -2464,7 +2464,7 @@ ROM_START( mrkicker )
|
||||
/* romh02 empty */
|
||||
/* roml03 empty */
|
||||
/* romh03 empty */
|
||||
|
||||
|
||||
/* $00000-$20000 stays the same in all sound banks, */
|
||||
/* the second half of the bank is what gets switched */
|
||||
ROM_REGION( 0x80000, "oki1", 0 ) /* Oki Samples */
|
||||
@ -2532,7 +2532,7 @@ ROM_START( aoh )
|
||||
|
||||
ROM_REGION( 0x40000, "oki_1", 0 ) /* Oki Samples */
|
||||
ROM_LOAD( "rom3", 0x00000, 0x40000, CRC(db8cb455) SHA1(6723b4018208d554bd1bf1e0640b72d2f4f47302) )
|
||||
|
||||
|
||||
/* $00000-$20000 stays the same in all sound banks, */
|
||||
/* the second half of the bank is what gets switched */
|
||||
ROM_REGION( 0x80000, "oki2", 0 ) /* Oki Samples */
|
||||
@ -2574,7 +2574,7 @@ ROM_START( boonggab )
|
||||
/* romu04 empty */
|
||||
/* roml09 empty */
|
||||
/* romu09 empty */
|
||||
|
||||
|
||||
/* $00000-$20000 stays the same in all sound banks, */
|
||||
/* the second half of the bank is what gets switched */
|
||||
ROM_REGION( 0x100000, "oki1", 0 ) /* Oki Samples */
|
||||
|
@ -42,7 +42,7 @@ ADDRESS_MAP_END
|
||||
ADDRESS_MAP_START(vector06_state::vector06_io)
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
;
|
||||
;
|
||||
map(0x00, 0x03).lrw8("ppi8255_rw", [this](address_space &space, offs_t offset, u8 mem_mask) -> u8 { return m_ppi8255->read(space, offset^3, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_ppi8255->write(space, offset^3, data, mem_mask); });
|
||||
map(0x04, 0x07).lrw8("ppi8255_2_rw", [this](address_space &space, offs_t offset, u8 mem_mask) -> u8 { return m_ppi8255_2->read(space, offset^3, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_ppi8255_2->write(space, offset^3, data, mem_mask); });
|
||||
map(0x08, 0x0b).lrw8("pit8253_rw", [this](address_space &space, offs_t offset, u8 mem_mask) -> u8 { return m_pit8253->read(space, offset^3, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_pit8253->write(space, offset^3, data, mem_mask); });
|
||||
|
@ -27,7 +27,7 @@
|
||||
|
||||
Known u'nSP-Based Systems:
|
||||
|
||||
D - SPG240 - Radica Skateboarder (Sunplus QL8041C die)
|
||||
D - SPG240 - Radica Skateboarder (Sunplus QL8041C die)
|
||||
ND - SPG243 - Some form of Leapfrog "edutainment" system
|
||||
ND - SPG243 - Star Wars: Clone Wars
|
||||
ND - SPG243 - Toy Story
|
||||
@ -1105,14 +1105,14 @@ static INPUT_PORTS_START( rad_skat )
|
||||
|
||||
|
||||
PORT_START("P3") // PAL/NTSC flag
|
||||
PORT_BIT( 0xffff, IP_ACTIVE_LOW, IPT_SPECIAL )
|
||||
PORT_BIT( 0xffff, IP_ACTIVE_LOW, IPT_SPECIAL )
|
||||
INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( rad_skatp )
|
||||
PORT_INCLUDE(rad_skat)
|
||||
|
||||
|
||||
PORT_MODIFY("P3") // PAL/NTSC flag
|
||||
PORT_BIT( 0xffff, IP_ACTIVE_HIGH, IPT_SPECIAL )
|
||||
PORT_BIT( 0xffff, IP_ACTIVE_HIGH, IPT_SPECIAL )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
@ -1365,64 +1365,64 @@ DRIVER_INIT_MEMBER(spg2xx_game_state, wirels60)
|
||||
}
|
||||
|
||||
ROM_START( vii )
|
||||
ROM_REGION( 0x2000000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_REGION( 0x2000000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "vii.bin", 0x0000, 0x2000000, CRC(04627639) SHA1(f883a92d31b53c9a5b0cdb112d07cd793c95fc43))
|
||||
ROM_END
|
||||
|
||||
ROM_START( batmantv )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "batman.bin", 0x000000, 0x400000, CRC(46f848e5) SHA1(5875d57bb3fe0cac5d20e626e4f82a0e5f9bb94c) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( vsmile )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD( "vsmilebios.bin", 0x000000, 0x200000, CRC(11f1b416) SHA1(11f77c4973d29c962567390e41879c86a759c93b) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( vsmileg )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "bios german.bin", 0x000000, 0x200000, CRC(205c5296) SHA1(7fbcf761b5885c8b1524607aabaf364b4559c8cc) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( vsmilef )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "sysrom_france", 0x000000, 0x200000, CRC(0cd0bdf5) SHA1(5c8d1eada1b6b545555b8d2b09325d7127681af8) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( vsmileb )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD( "vbabybios.bin", 0x000000, 0x800000, CRC(ddc7f845) SHA1(2c17d0f54200070176d03d44a40c7923636e596a) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( walle )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "walle.bin", 0x000000, 0x400000, BAD_DUMP CRC(bd554cba) SHA1(6cd06a036ab12e7b0e1fd8003db873b0bb783868) )
|
||||
// Alternate dump, we need to decide which one is correct.
|
||||
//ROM_LOAD16_WORD_SWAP( "walle.bin", 0x000000, 0x400000, CRC(6bc90b16) SHA1(184d72de059057aae7800da510fcf05ed1da9ec9))
|
||||
ROM_END
|
||||
|
||||
ROM_START( zone40 )
|
||||
ROM_REGION( 0x4000000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_REGION( 0x4000000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "zone40.bin", 0x0000, 0x4000000, CRC(4ba1444f) SHA1(de83046ab93421486668a247972ad6d3cda19440) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( zone60 )
|
||||
ROM_REGION( 0x4000000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_REGION( 0x4000000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "zone60.bin", 0x0000, 0x4000000, CRC(4cb637d1) SHA1(1f97cbdb4299ac0fbafc2a3aa592066cb0727066))
|
||||
ROM_END
|
||||
|
||||
ROM_START( wirels60 )
|
||||
ROM_REGION( 0x4000000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_REGION( 0x4000000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "wirels60.bin", 0x0000, 0x4000000, CRC(b4df8b28) SHA1(00e3da542e4bc14baf4724ad436f66d4c0f65c84))
|
||||
ROM_END
|
||||
|
||||
ROM_START( rad_skat )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "skateboarder.bin", 0x000000, 0x400000, CRC(08b9ab91) SHA1(6665edc4740804956136c68065890925a144626b) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( rad_skatp ) // rom was dumped from the NTSC version, but region comes from an io port, so ROM is probably the same
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "skateboarder.bin", 0x000000, 0x400000, CRC(08b9ab91) SHA1(6665edc4740804956136c68065890925a144626b) )
|
||||
ROM_END
|
||||
|
||||
@ -1450,7 +1450,7 @@ http://www.lcis.com.tw/paper_store/paper_store/GPL162004A-507A_162005A-707AV10_c
|
||||
*/
|
||||
|
||||
ROM_START( wlsair60 )
|
||||
ROM_REGION( 0x8400000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_REGION( 0x8400000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "wlsair60.nand", 0x0000, 0x8400000, CRC(eec23b97) SHA1(1bb88290cf54579a5bb51c08a02d793cd4d79f7a) )
|
||||
ROM_END
|
||||
|
||||
@ -1531,7 +1531,7 @@ which is also found in the Wireless Air 60 ROM.
|
||||
*/
|
||||
|
||||
ROM_START( wireless )
|
||||
ROM_REGION( 0x8000000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_REGION( 0x8000000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD16_WORD_SWAP( "wireless.nand", 0x0000, 0x8000000, CRC(a6ecc20e) SHA1(3645f23ba2bb218e92d4560a8ae29dddbaabf796) )
|
||||
ROM_END
|
||||
|
||||
|
@ -1388,7 +1388,7 @@ ADDRESS_MAP_START(x1_state::x1turbo_io_banks)
|
||||
AM_RANGE(0x1000, 0x12ff) AM_WRITE(x1turboz_4096_palette_w)
|
||||
|
||||
AM_RANGE(0x1f80, 0x1f80) AM_MIRROR(0x000f) AM_DEVREADWRITE("dma", z80dma_device, read, write)
|
||||
AM_RANGE(0x1f90, 0x1f93) AM_DEVREADWRITE("sio", z80sio0_device, ba_cd_r, ba_cd_w)
|
||||
AM_RANGE(0x1f90, 0x1f93) AM_DEVREADWRITE("sio", z80sio0_device, ba_cd_r, ba_cd_w)
|
||||
AM_RANGE(0x1f98, 0x1f9f) AM_READWRITE(ext_sio_ctc_r, ext_sio_ctc_w)
|
||||
AM_RANGE(0x1fb0, 0x1fb0) AM_READWRITE(x1turbo_pal_r, x1turbo_pal_w) // Z only!
|
||||
AM_RANGE(0x1fb8, 0x1fbf) AM_READWRITE(x1turbo_txpal_r, x1turbo_txpal_w) // Z only!
|
||||
|
@ -7,7 +7,7 @@
|
||||
CPU is an M6502 derivative with added opcodes for far-call handling
|
||||
|
||||
Notes from http://www.videogameconsolelibrary.com/pg00-xavix.htm#page=reviews (thanks Guru!)
|
||||
(** this isn't entirely accurate, XaviX Tennis appears to be Super Xavix, see other notes in driver)
|
||||
(** this isn't entirely accurate, XaviX Tennis appears to be Super Xavix, see other notes in driver)
|
||||
|
||||
XaviXPORT arrived on the scene with 3 game titles (XaviX Tennis, XaviX Bowling and XaviX Baseball) using their
|
||||
original XaviX Multiprocessor. This proprietary chip is reported to contain an 8-bit high speed central processing
|
||||
@ -21,9 +21,9 @@
|
||||
SSD COMPANY LIMITED is already working on their next chip called "XaviX II" that is said to be a 32-bit RISC processor
|
||||
with 3D capabilities.
|
||||
|
||||
Important addresses
|
||||
Important addresses
|
||||
|
||||
0x18340 in Monster Truck is the self-test mode, shows me which registers need to retain their values etc.
|
||||
0x18340 in Monster Truck is the self-test mode, shows me which registers need to retain their values etc.
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
@ -220,7 +220,7 @@ private:
|
||||
required_shared_ptr<uint8_t> m_palram2;
|
||||
|
||||
required_shared_ptr<uint8_t> m_spr_attra;
|
||||
|
||||
|
||||
required_device<palette_device> m_palette;
|
||||
|
||||
required_ioport m_in0;
|
||||
@ -321,13 +321,13 @@ void xavix_state::handle_palette(screen_device &screen, bitmap_ind16 &bitmap, co
|
||||
int h_raw = (dat & 0x001f) >> 0;
|
||||
|
||||
//if (h_raw > 24)
|
||||
// logerror("hraw >24 (%02x)\n", h_raw);
|
||||
// logerror("hraw >24 (%02x)\n", h_raw);
|
||||
|
||||
//if (l_raw > 17)
|
||||
// logerror("lraw >17 (%02x)\n", l_raw);
|
||||
// logerror("lraw >17 (%02x)\n", l_raw);
|
||||
|
||||
//if (sl_raw > 7)
|
||||
// logerror("sl_raw >5 (%02x)\n", sl_raw);
|
||||
// logerror("sl_raw >5 (%02x)\n", sl_raw);
|
||||
|
||||
double l = (double)l_raw / 17.0f;
|
||||
double s = (double)sl_raw / 7.0f;
|
||||
@ -515,7 +515,7 @@ void xavix_state::draw_tilemap(screen_device &screen, bitmap_ind16 &bitmap, cons
|
||||
0x0e = boxing (instruction stuff) also needs palette settings.. also some bits on same layer using different bank? (0xd) or just disabled?
|
||||
|
||||
*/
|
||||
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -734,7 +734,7 @@ void xavix_state::draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, cons
|
||||
/*
|
||||
if ((m_spr_ypos[i] != 0x81) && (m_spr_ypos[i] != 0x80) && (m_spr_ypos[i] != 0x00))
|
||||
{
|
||||
logerror("sprite with enable? %02x attr0 %02x attr1 %02x attr3 %02x attr5 %02x attr6 %02x attr7 %02x\n", m_spr_ypos[i], m_spr_attr0[i], m_spr_attr1[i], m_spr_xpos[i], m_spr_addr_lo[i], m_spr_addr_md[i], m_spr_addr_hi[i] );
|
||||
logerror("sprite with enable? %02x attr0 %02x attr1 %02x attr3 %02x attr5 %02x attr6 %02x attr7 %02x\n", m_spr_ypos[i], m_spr_attr0[i], m_spr_attr1[i], m_spr_xpos[i], m_spr_addr_lo[i], m_spr_addr_md[i], m_spr_addr_hi[i] );
|
||||
}
|
||||
*/
|
||||
}
|
||||
@ -783,7 +783,7 @@ void xavix_state::draw_tile(screen_device &screen, bitmap_ind16 &bitmap, const r
|
||||
uint16_t* rowptr;
|
||||
|
||||
rowptr = &bitmap.pix16(row);
|
||||
|
||||
|
||||
if (opaque)
|
||||
{
|
||||
rowptr[col] = (dat + (pal << 4)) & 0xff;
|
||||
@ -929,20 +929,20 @@ WRITE8_MEMBER(xavix_state::xavix_7900_w)
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(xavix_state::scanline_cb)
|
||||
{
|
||||
/*
|
||||
int scanline = param;
|
||||
int scanline = param;
|
||||
|
||||
if (scanline == 200)
|
||||
{
|
||||
if (m_irq_enable_data != 0)
|
||||
m_maincpu->set_input_line(INPUT_LINE_IRQ0,HOLD_LINE);
|
||||
}
|
||||
if (scanline == 200)
|
||||
{
|
||||
if (m_irq_enable_data != 0)
|
||||
m_maincpu->set_input_line(INPUT_LINE_IRQ0,HOLD_LINE);
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
INTERRUPT_GEN_MEMBER(xavix_state::interrupt)
|
||||
{
|
||||
// if (m_irq_enable_data != 0)
|
||||
// m_maincpu->set_input_line(INPUT_LINE_IRQ0,HOLD_LINE);
|
||||
// if (m_irq_enable_data != 0)
|
||||
// m_maincpu->set_input_line(INPUT_LINE_IRQ0,HOLD_LINE);
|
||||
|
||||
// this logic is clearly VERY wrong
|
||||
|
||||
@ -1231,7 +1231,7 @@ WRITE8_MEMBER(xavix_state::tmap1_regs_w)
|
||||
/*
|
||||
0x0 pointer to address where tile data is
|
||||
it gets set to 0x40 in monster truck test mode, which is outside of ram but test mode requires a fixed 'column scan' layout
|
||||
so that might be special
|
||||
so that might be special
|
||||
|
||||
0x1 pointer to middle tile bits (if needed, depends on mode) (usually straight after the ram needed for above)
|
||||
|
||||
@ -1246,52 +1246,52 @@ WRITE8_MEMBER(xavix_state::tmap1_regs_w)
|
||||
0x7 could be mode (16x16, 8x8 etc.)
|
||||
0x00 is disabled?
|
||||
0x80 means 16x16 tiles
|
||||
0x81 might be 8x8 tiles
|
||||
0x93 course / mode select bg / ingame (weird addressing?)
|
||||
0x81 might be 8x8 tiles
|
||||
0x93 course / mode select bg / ingame (weird addressing?)
|
||||
|
||||
|
||||
*/
|
||||
|
||||
/*
|
||||
6aff base registers
|
||||
-- ingame
|
||||
-- ingame
|
||||
|
||||
ae 80
|
||||
02 80
|
||||
02 90
|
||||
02 a0
|
||||
02 b0
|
||||
02 c0
|
||||
02 d0
|
||||
02 e0
|
||||
ae 80
|
||||
02 80
|
||||
02 90
|
||||
02 a0
|
||||
02 b0
|
||||
02 c0
|
||||
02 d0
|
||||
02 e0
|
||||
|
||||
02 00
|
||||
04 80
|
||||
04 90
|
||||
04 a0
|
||||
04 b0
|
||||
04 c0
|
||||
04 d0
|
||||
04 e0
|
||||
02 00
|
||||
04 80
|
||||
04 90
|
||||
04 a0
|
||||
04 b0
|
||||
04 c0
|
||||
04 d0
|
||||
04 e0
|
||||
|
||||
-- menu
|
||||
af 80
|
||||
27 80
|
||||
27 90
|
||||
27 a0
|
||||
27 b0
|
||||
27 c0
|
||||
27 d0
|
||||
27 e0
|
||||
-- menu
|
||||
af 80
|
||||
27 80
|
||||
27 90
|
||||
27 a0
|
||||
27 b0
|
||||
27 c0
|
||||
27 d0
|
||||
27 e0
|
||||
|
||||
27 00
|
||||
00 80
|
||||
00 90
|
||||
00 a0
|
||||
00 b0
|
||||
00 c0
|
||||
00 d0
|
||||
00 e0
|
||||
27 00
|
||||
00 80
|
||||
00 90
|
||||
00 a0
|
||||
00 b0
|
||||
00 c0
|
||||
00 d0
|
||||
00 e0
|
||||
*/
|
||||
|
||||
|
||||
@ -1351,7 +1351,7 @@ ADDRESS_MAP_START(xavix_state::xavix_map)
|
||||
|
||||
// this might not be a real area, the tilemap base register gets set to 0x40 in monster truck service mode, and expects a fixed layout.
|
||||
// As that would point at this address maybe said layout is being read from here, or maybe it's just a magic tilemap register value that doesn't read address space at all.
|
||||
AM_RANGE(0x004000, 0x0041ff) AM_READ(xavix_4000_r)
|
||||
AM_RANGE(0x004000, 0x0041ff) AM_READ(xavix_4000_r)
|
||||
|
||||
// 6xxx ranges are the video hardware
|
||||
// appears to be 256 sprites (shares will be renamed once their purpose is known)
|
||||
@ -1367,14 +1367,14 @@ ADDRESS_MAP_START(xavix_state::xavix_map)
|
||||
AM_RANGE(0x006900, 0x0069ff) AM_RAM AM_SHARE("palram2") // startup (taitons1)
|
||||
AM_RANGE(0x006a00, 0x006a1f) AM_RAM AM_SHARE("spr_attra") // test mode, pass flag 0x20
|
||||
|
||||
|
||||
|
||||
AM_RANGE(0x006fc0, 0x006fc0) AM_WRITE(xavix_6fc0_w) // startup (maybe this is a mirror of tmap1_regs_w)
|
||||
|
||||
AM_RANGE(0x006fc8, 0x006fcf) AM_WRITE(tmap1_regs_w) // video registers
|
||||
|
||||
AM_RANGE(0x006fd0, 0x006fd7) AM_READWRITE(tmap2_regs_r, tmap2_regs_w)
|
||||
AM_RANGE(0x006fd8, 0x006fd8) AM_WRITE(xavix_6fd8_w) // startup (mirror of tmap2_regs_w?)
|
||||
|
||||
|
||||
AM_RANGE(0x006fe0, 0x006fe0) AM_READWRITE(vid_dma_trigger_r, vid_dma_trigger_w) // after writing to 6fe1/6fe2 and 6fe5/6fe6 rad_mtrk writes 0x43/0x44 here then polls on 0x40 (see function call at c273) write values are hardcoded, similar code at 18401
|
||||
AM_RANGE(0x006fe1, 0x006fe2) AM_WRITE(vid_dma_params_1_w)
|
||||
AM_RANGE(0x006fe5, 0x006fe6) AM_WRITE(vid_dma_params_2_w)
|
||||
@ -1382,7 +1382,7 @@ ADDRESS_MAP_START(xavix_state::xavix_map)
|
||||
// function in rad_mtrk at 0184b7 uses this
|
||||
AM_RANGE(0x006fe8, 0x006fe8) AM_RAM // r/w tested
|
||||
AM_RANGE(0x006fe9, 0x006fe9) AM_RAM // r/w tested
|
||||
//AM_RANGE(0x006fea, 0x006fea) AM_WRITENOP
|
||||
//AM_RANGE(0x006fea, 0x006fea) AM_WRITENOP
|
||||
|
||||
AM_RANGE(0x006ff0, 0x006ff0) AM_READWRITE(xavix_6ff0_r, xavix_6ff0_w) // r/w tested
|
||||
//AM_RANGE(0x006ff1, 0x006ff1) AM_WRITENOP // startup - cleared in interrupt 0
|
||||
@ -1400,10 +1400,10 @@ ADDRESS_MAP_START(xavix_state::xavix_map)
|
||||
AM_RANGE(0x0075f5, 0x0075f5) AM_READ(xavix_75f5_r) // related to 75f1 (read after writing there - rad_mtrk)
|
||||
|
||||
// taitons1 after 75f7/75f8
|
||||
AM_RANGE(0x0075f6, 0x0075f6) AM_READWRITE(xavix_75f6_r, xavix_75f6_w) // r/w tested
|
||||
AM_RANGE(0x0075f6, 0x0075f6) AM_READWRITE(xavix_75f6_r, xavix_75f6_w) // r/w tested
|
||||
// taitons1 written as a pair
|
||||
AM_RANGE(0x0075f7, 0x0075f7) AM_WRITE(xavix_75f7_w)
|
||||
AM_RANGE(0x0075f8, 0x0075f8) AM_READWRITE(xavix_75f8_r, xavix_75f8_w) // r/w tested
|
||||
AM_RANGE(0x0075f8, 0x0075f8) AM_READWRITE(xavix_75f8_r, xavix_75f8_w) // r/w tested
|
||||
// taitons1 written after 75f6, then read
|
||||
AM_RANGE(0x0075f9, 0x0075f9) AM_READWRITE(xavix_75f9_r, xavix_75f9_w)
|
||||
// at another time
|
||||
@ -1436,7 +1436,7 @@ ADDRESS_MAP_START(xavix_state::xavix_map)
|
||||
// GPIO stuff
|
||||
AM_RANGE(0x007a00, 0x007a00) AM_READ(xavix_io_0_r)
|
||||
AM_RANGE(0x007a01, 0x007a01) AM_READ(xavix_io_1_r) //AM_WRITENOP // startup (taitons1)
|
||||
//AM_RANGE(0x007a02, 0x007a02) AM_WRITENOP // startup, gets set to 20, 7a00 is then also written with 20
|
||||
//AM_RANGE(0x007a02, 0x007a02) AM_WRITENOP // startup, gets set to 20, 7a00 is then also written with 20
|
||||
//AM_RANGE(0x007a03, 0x007a03) AM_READNOP AM_WRITENOP // startup (gets set to 84 which is the same as the bits checked on 7a01, possible port direction register?)
|
||||
|
||||
//AM_RANGE(0x007a80, 0x007a80) AM_WRITENOP
|
||||
@ -1451,7 +1451,7 @@ ADDRESS_MAP_START(xavix_state::xavix_map)
|
||||
// this is a multiplication chip
|
||||
AM_RANGE(0x007ff2, 0x007ff4) AM_WRITE(mult_param_w)
|
||||
AM_RANGE(0x007ff5, 0x007ff6) AM_READ(mult_r)
|
||||
|
||||
|
||||
// maybe irq enable, written after below
|
||||
AM_RANGE(0x007ff9, 0x007ff9) AM_WRITE(irq_enable_w)
|
||||
// an IRQ vector (nmi?)
|
||||
@ -1462,7 +1462,7 @@ ADDRESS_MAP_START(xavix_state::xavix_map)
|
||||
AM_RANGE(0x007fff, 0x007fff) AM_WRITE(irq_vector1_hi_w)
|
||||
|
||||
// rom is installed in init due to different rom sizes and mirroring required
|
||||
// AM_RANGE(0x008000, 0x7fffff) AM_ROM AM_REGION("bios", 0x008000) AM_MIRROR(0x800000) // rad_mtrk relies on rom mirroring
|
||||
// AM_RANGE(0x008000, 0x7fffff) AM_ROM AM_REGION("bios", 0x008000) AM_MIRROR(0x800000) // rad_mtrk relies on rom mirroring
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static INPUT_PORTS_START( xavix )
|
||||
@ -1601,7 +1601,7 @@ static INPUT_PORTS_START( rad_boxp )
|
||||
PORT_INCLUDE(rad_box)
|
||||
|
||||
PORT_MODIFY("REGION") // PAL/NTSC flag
|
||||
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SPECIAL )
|
||||
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SPECIAL )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
@ -1718,7 +1718,7 @@ typedef device_delegate<uint8_t (int which, int half)> xavix_interrupt_vector_de
|
||||
|
||||
uint8_t xavix_state::get_vectors(int which, int half)
|
||||
{
|
||||
// logerror("get_vectors %d %d\n", which, half);
|
||||
// logerror("get_vectors %d %d\n", which, half);
|
||||
|
||||
if (which == 0) // irq?
|
||||
{
|
||||
@ -1895,7 +1895,7 @@ CONS (200?, eka_strt, 0, 0, xavix, xavix, xavix_state, xavix, "Ta
|
||||
|
||||
According to sources XaviX Tennis should be a standard XaviX CPU, but at the very least makes significantly more use of custom opcodes than the above titles
|
||||
which only appears to use the call far / return far for extended memory space.
|
||||
|
||||
|
||||
Furthermore it also seems to require some regular 6502 opcodes to be replaced with custom ones, yet the other games expect these to act normally. This
|
||||
leads me to believe that XaviX Tennis is almost certainly a Super XaviX title.
|
||||
|
||||
@ -1903,7 +1903,7 @@ CONS (200?, eka_strt, 0, 0, xavix, xavix, xavix_state, xavix, "Ta
|
||||
|
||||
Radica Monster truck die is marked SSD PL7351 with SSD98 also printed on the die
|
||||
Radia Ping Pong die is marked SSD PA7270 with SSD97 also printed on the die (otherwise looks identical to Monster Truck)
|
||||
|
||||
|
||||
Boxing, Baseball 2 and Card Night all have the SSD98 logo
|
||||
Boxing, Bass Fishin' and Card Night are all PA7351-107. Baseball 2 looks like PL7351-181.
|
||||
|
||||
|
@ -2127,7 +2127,7 @@ DRIVER_INIT_MEMBER(zn_state,nbajamex)
|
||||
{
|
||||
m_nbajamex_sram = std::make_unique<uint8_t[]>(0x8000);
|
||||
machine().device<nvram_device>("71256")->set_base(m_nbajamex_sram.get(), 0x8000);
|
||||
|
||||
|
||||
save_pointer(NAME(m_nbajamex_sram.get()), 0x8000);
|
||||
|
||||
save_item(NAME(m_nbajamex_rombank));
|
||||
|
@ -67,7 +67,7 @@ public:
|
||||
void badlands(machine_config &config);
|
||||
void audio_map(address_map &map);
|
||||
void main_map(address_map &map);
|
||||
|
||||
|
||||
private:
|
||||
uint8_t m_pedal_value[2];
|
||||
uint8_t m_playfield_tile_bank;
|
||||
@ -81,7 +81,7 @@ public:
|
||||
m_b_sharedram(*this, "b_sharedram"),
|
||||
m_spriteram(*this, "spriteram")
|
||||
{}
|
||||
|
||||
|
||||
DECLARE_READ8_MEMBER(bootleg_shared_r);
|
||||
DECLARE_WRITE8_MEMBER(bootleg_shared_w);
|
||||
DECLARE_WRITE8_MEMBER(bootleg_main_irq_w);
|
||||
@ -93,14 +93,14 @@ public:
|
||||
void bootleg_map(address_map &map);
|
||||
void bootleg_audio_map(address_map &map);
|
||||
uint32_t screen_update_badlandsbl(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
|
||||
|
||||
protected:
|
||||
virtual void machine_reset() override;
|
||||
|
||||
|
||||
private:
|
||||
required_shared_ptr<uint8_t> m_b_sharedram;
|
||||
required_shared_ptr<uint16_t> m_spriteram;
|
||||
|
||||
|
||||
uint8_t m_sound_response;
|
||||
};
|
||||
|
||||
|
@ -27,7 +27,7 @@ public:
|
||||
m_paletteram(*this, "palette"),
|
||||
m_paletteram_ext(*this, "palette_ext")
|
||||
{ }
|
||||
|
||||
|
||||
/* devices */
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<cpu_device> m_audiocpu;
|
||||
|
@ -86,14 +86,14 @@ public:
|
||||
// all but captaven
|
||||
DECLARE_WRITE32_MEMBER(buffered_palette_w);
|
||||
DECLARE_WRITE32_MEMBER(palette_dma_w);
|
||||
|
||||
|
||||
void h6280_sound_custom_latch_map(address_map &map);
|
||||
void h6280_sound_map(address_map &map);
|
||||
void z80_sound_io(address_map &map);
|
||||
void z80_sound_map(address_map &map);
|
||||
protected:
|
||||
virtual void video_start() override;
|
||||
|
||||
|
||||
void allocate_spriteram(int chip);
|
||||
void allocate_buffered_palette();
|
||||
void allocate_rowscroll(int size1, int size2, int size3, int size4);
|
||||
@ -207,7 +207,7 @@ public:
|
||||
m_vol_gun(*this, "vol_gun"),
|
||||
m_gun_speaker_disabled(true)
|
||||
{ }
|
||||
|
||||
|
||||
required_device<buffered_spriteram32_device> m_spriteram;
|
||||
|
||||
required_shared_ptr_array<uint32_t, 2> m_sprite_layout_ram;
|
||||
@ -233,7 +233,7 @@ public:
|
||||
DECLARE_WRITE32_MEMBER(speaker_switch_w);
|
||||
LC7535_VOLUME_CHANGED(volume_main_changed);
|
||||
LC7535_VOLUME_CHANGED(volume_gun_changed);
|
||||
|
||||
|
||||
DECLARE_WRITE8_MEMBER(lockload_okibank_lo_w);
|
||||
DECLARE_WRITE8_MEMBER(lockload_okibank_hi_w); // lockload
|
||||
|
||||
|
@ -26,7 +26,7 @@ public:
|
||||
m_vram(*this, "vram"),
|
||||
m_gfx2(*this,"gfx2")
|
||||
{ }
|
||||
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<eeprom_serial_93cxx_device> m_eeprom;
|
||||
required_device<ymz280b_device> m_ymz;
|
||||
|
@ -5,7 +5,7 @@
|
||||
* includes/galaxy.h
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
|
||||
#ifndef MAME_INCLUDES_GALAXY_H
|
||||
#define MAME_INCLUDES_GALAXY_H
|
||||
|
||||
|
@ -260,12 +260,12 @@ public:
|
||||
void geo_sharc_map(address_map &map);
|
||||
void model2_base_mem(address_map &map);
|
||||
void model2_snd(address_map &map);
|
||||
|
||||
|
||||
uint8_t m_gamma_table[256];
|
||||
|
||||
|
||||
protected:
|
||||
virtual void video_start() override;
|
||||
|
||||
|
||||
private:
|
||||
bool m_render_unk;
|
||||
bool m_render_mode;
|
||||
@ -276,7 +276,7 @@ private:
|
||||
* Model 2
|
||||
*
|
||||
*****************************/
|
||||
|
||||
|
||||
class model2o_state : public model2_state
|
||||
{
|
||||
public:
|
||||
@ -288,7 +288,7 @@ public:
|
||||
DECLARE_READ8_MEMBER(model2o_in_r);
|
||||
DECLARE_READ32_MEMBER(fifoctrl_r);
|
||||
|
||||
void daytona(machine_config &config);
|
||||
void daytona(machine_config &config);
|
||||
void model2o(machine_config &config);
|
||||
void model2o_mem(address_map &map);
|
||||
};
|
||||
@ -311,7 +311,7 @@ public:
|
||||
void model2o_maxx_mem(address_map &map);
|
||||
|
||||
private:
|
||||
int m_maxxstate;
|
||||
int m_maxxstate;
|
||||
};
|
||||
|
||||
/*****************************
|
||||
@ -326,7 +326,7 @@ public:
|
||||
model2a_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: model2_state(mconfig, type, tag)
|
||||
{}
|
||||
|
||||
|
||||
void manxtt(machine_config &config);
|
||||
void manxttdx(machine_config &config);
|
||||
void model2a(machine_config &config);
|
||||
@ -371,7 +371,7 @@ public:
|
||||
model2c_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: model2_state(mconfig, type, tag)
|
||||
{}
|
||||
|
||||
|
||||
void model2c(machine_config &config);
|
||||
void model2c_5881(machine_config &config);
|
||||
void overrev2c(machine_config &config);
|
||||
|
@ -30,7 +30,7 @@ public:
|
||||
m_bgram(*this, "bgram", 32),
|
||||
m_f1superb_extraram(*this, "f1sb_extraram", 32),
|
||||
m_z80bank(*this, "z80bank%u", 1) { }
|
||||
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<cpu_device> m_audiocpu;
|
||||
required_device<gfxdecode_device> m_gfxdecode;
|
||||
|
@ -71,7 +71,7 @@ public:
|
||||
DECLARE_DRIVER_INIT(exvania);
|
||||
DECLARE_DRIVER_INIT(emeraldj);
|
||||
DECLARE_DRIVER_INIT(swcourtb);
|
||||
|
||||
|
||||
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(interrupt);
|
||||
@ -170,12 +170,12 @@ public:
|
||||
namcona2_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: namcona1_state(mconfig, type, tag)
|
||||
{}
|
||||
|
||||
|
||||
DECLARE_DRIVER_INIT(knckhead);
|
||||
DECLARE_DRIVER_INIT(emeralda);
|
||||
DECLARE_DRIVER_INIT(numanath);
|
||||
DECLARE_DRIVER_INIT(quiztou);
|
||||
|
||||
|
||||
void namcona2(machine_config &config);
|
||||
};
|
||||
|
||||
@ -186,11 +186,11 @@ public:
|
||||
: namcona2_state(mconfig, type, tag),
|
||||
m_rtc(*this, "rtc")
|
||||
{}
|
||||
|
||||
|
||||
static constexpr feature_type unemulated_features() { return feature::PRINTER; }
|
||||
|
||||
required_device <msm6242_device> m_rtc;
|
||||
|
||||
|
||||
DECLARE_READ8_MEMBER(printer_r);
|
||||
DECLARE_WRITE8_MEMBER(printer_w);
|
||||
|
||||
|
@ -43,7 +43,7 @@ public:
|
||||
|
||||
/* memory pointers */
|
||||
required_shared_ptr<uint16_t> m_spriteram;
|
||||
|
||||
|
||||
/* memory regions */
|
||||
required_memory_bank m_z80bank;
|
||||
|
||||
|
@ -53,7 +53,7 @@ public:
|
||||
optional_shared_ptr<uint16_t> m_nmk_fgvideoram;
|
||||
optional_shared_ptr<uint16_t> m_gunnail_scrollramy;
|
||||
optional_shared_ptr_array<uint16_t, 2> m_afega_scroll;
|
||||
|
||||
|
||||
optional_region_ptr<uint16_t> m_tilemap_rom;
|
||||
optional_memory_bank m_audiobank;
|
||||
optional_memory_bank_array<2> m_okibank;
|
||||
|
@ -106,7 +106,7 @@ protected:
|
||||
inline void set_timer_divider(uint8_t data);
|
||||
inline void set_videoram_bank(uint32_t offs);
|
||||
inline void set_maincpu_irq_line(uint8_t vector_num);
|
||||
|
||||
|
||||
// video functions
|
||||
void draw_gfx_mode4(bitmap_ind16 &bitmap,const rectangle &cliprect,int attr);
|
||||
void draw_bitmap_2bpp(bitmap_ind16 &bitmap,const rectangle &cliprect, int attr);
|
||||
@ -191,10 +191,10 @@ protected:
|
||||
required_memory_bank m_bank7;
|
||||
required_memory_bank m_bank8;
|
||||
inline void refresh_crtc_params();
|
||||
|
||||
virtual void video_start() override;
|
||||
|
||||
virtual void video_start() override;
|
||||
virtual void machine_reset() override;
|
||||
|
||||
|
||||
private:
|
||||
uint8_t m_bank_r0;
|
||||
uint8_t m_bank_r1;
|
||||
@ -249,7 +249,7 @@ public:
|
||||
DECLARE_WRITE8_MEMBER(necsr_ppi8255_w);
|
||||
DECLARE_WRITE8_MEMBER(sr_bitmap_yoffs_w);
|
||||
DECLARE_WRITE8_MEMBER(sr_bitmap_xoffs_w);
|
||||
|
||||
|
||||
INTERRUPT_GEN_MEMBER(sr_vrtc_irq);
|
||||
|
||||
uint32_t screen_update_pc6001sr(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
@ -259,7 +259,7 @@ public:
|
||||
void pc6001sr_io(address_map &map);
|
||||
void pc6001sr_map(address_map &map);
|
||||
protected:
|
||||
virtual void video_start() override;
|
||||
virtual void video_start() override;
|
||||
virtual void machine_reset() override;
|
||||
|
||||
private:
|
||||
@ -270,7 +270,7 @@ private:
|
||||
uint8_t m_sr_text_rows;
|
||||
uint8_t *m_gvram;
|
||||
uint8_t m_bitmap_yoffs,m_bitmap_xoffs;
|
||||
|
||||
|
||||
enum{
|
||||
SUB_CPU_IRQ = 0,
|
||||
JOYSTICK_IRQ,
|
||||
@ -281,7 +281,7 @@ private:
|
||||
PRINTER_IRQ,
|
||||
EXT_IRQ
|
||||
};
|
||||
|
||||
|
||||
required_shared_ptr<uint8_t> m_sr_irq_vectors;
|
||||
};
|
||||
|
||||
|
@ -45,7 +45,7 @@ public:
|
||||
int m_irq_enable;
|
||||
int m_last_irq_level;
|
||||
int m_high;
|
||||
|
||||
|
||||
DECLARE_WRITE8_MEMBER(irq_adr_w);
|
||||
DECLARE_READ8_MEMBER(irq_adr_r);
|
||||
DECLARE_WRITE8_MEMBER(irq_enable_w);
|
||||
|
@ -45,7 +45,7 @@ public:
|
||||
|
||||
/* memory pointers */
|
||||
required_shared_ptr<uint16_t> m_spriteram;
|
||||
|
||||
|
||||
/* memory regions */
|
||||
required_memory_bank m_z80bank;
|
||||
|
||||
|
@ -2,13 +2,13 @@
|
||||
// copyright-holders:Aaron Giles
|
||||
/***************************************************************
|
||||
|
||||
Badlands
|
||||
|
||||
functions required by both badlands.cpp and
|
||||
badlandsbl.cpp drivers.
|
||||
Badlands
|
||||
|
||||
Eventually this file will be nuked once both i/o and
|
||||
gfx_layout systems are properly state-ized.
|
||||
functions required by both badlands.cpp and
|
||||
badlandsbl.cpp drivers.
|
||||
|
||||
Eventually this file will be nuked once both i/o and
|
||||
gfx_layout systems are properly state-ized.
|
||||
|
||||
***************************************************************/
|
||||
|
||||
@ -24,7 +24,7 @@
|
||||
*************************************/
|
||||
|
||||
// TODO: doesn't link?
|
||||
#ifdef UNUSED_FUNCTION
|
||||
#ifdef UNUSED_FUNCTION
|
||||
const gfx_layout badlands_molayout =
|
||||
{
|
||||
16,8,
|
||||
|
@ -31,7 +31,7 @@ public:
|
||||
// probably set by a register somewhere either on TMS side or 68k side
|
||||
void set_bpp(int bpp)
|
||||
{
|
||||
m_bpp_mode = bpp;
|
||||
m_bpp_mode = bpp;
|
||||
}
|
||||
|
||||
void megaphx_tms_map(address_map &map);
|
||||
|
@ -5,16 +5,16 @@
|
||||
m6502_vtscr.cpp
|
||||
|
||||
6502 with VRT VTxx instruction scrambling
|
||||
|
||||
|
||||
Scrambling in newer NES-based VTxx systems (FC pocket, etc) seems to be
|
||||
enabled with a write of 5 to 0x411E, then is activated at the next jump?
|
||||
When enabled, opcodes are to be XORed with 0xA1
|
||||
|
||||
Another form of scrambling is used in the VRT VT1682, this is not yet
|
||||
|
||||
Another form of scrambling is used in the VRT VT1682, this is not yet
|
||||
implemented at all in MAME (it's used for the MiWi2 and InterAct consoles).
|
||||
This is simpler, permanently activated and consists of swapping opcode bits
|
||||
7 and 2.
|
||||
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
#include "emu.h"
|
||||
@ -64,7 +64,7 @@ uint8_t m6502_vtscr::mi_decrypt::read_sync(uint16_t adr)
|
||||
{
|
||||
res = descramble(res);
|
||||
}
|
||||
|
||||
|
||||
if(toggle_scramble(res))
|
||||
{
|
||||
m_scramble_en = m_next_scramble;
|
||||
|
@ -5,7 +5,7 @@
|
||||
m6502_vtscr.h
|
||||
|
||||
6502 with VRT VTxx instruction scrambling
|
||||
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
#ifndef MAME_CPU_M6502_VTSCR_H
|
||||
@ -26,13 +26,13 @@ public:
|
||||
protected:
|
||||
class mi_decrypt : public mi_default_normal {
|
||||
public:
|
||||
|
||||
|
||||
bool m_scramble_en = false;
|
||||
bool m_next_scramble = false;
|
||||
|
||||
|
||||
virtual ~mi_decrypt() {}
|
||||
virtual uint8_t read_sync(uint16_t adr) override;
|
||||
|
||||
|
||||
uint8_t descramble(uint8_t op);
|
||||
bool toggle_scramble(uint8_t op);
|
||||
|
||||
|
@ -30206,7 +30206,7 @@ olibochu // M47 (c) 1981 + "GDI presents"
|
||||
olybossb // Olympia BOSS B
|
||||
olybossc // Olympia BOSS C
|
||||
olybossd // Olympia BOSS D
|
||||
bossa85 // Olympia BOSS A 8085
|
||||
bossa85 // Olympia BOSS A 8085
|
||||
bossb85 // Olympia BOSS B 8085
|
||||
|
||||
@source:omegrace.cpp
|
||||
@ -36528,7 +36528,7 @@ tb303 // Roland
|
||||
|
||||
@source:tbowl.cpp
|
||||
tbowl // 6206 - (c) 1987 Tecmo
|
||||
tbowla //
|
||||
tbowla //
|
||||
tbowlj // 6206 - (c) 1987 Tecmo
|
||||
tbowlp // Suspected proto of Japanese version for US Market
|
||||
|
||||
@ -38978,14 +38978,14 @@ xsleenaj // TA-0019 (c) 1986
|
||||
taitons1 //
|
||||
rad_ping //
|
||||
rad_mtrk //
|
||||
rad_mtrkp //
|
||||
rad_mtrkp //
|
||||
rad_bb2 //
|
||||
rad_box //
|
||||
rad_boxp //
|
||||
rad_boxp //
|
||||
rad_crdn //
|
||||
rad_crdnp //
|
||||
rad_bass //
|
||||
rad_bassp //
|
||||
rad_crdnp //
|
||||
rad_bass //
|
||||
rad_bassp //
|
||||
eka_strt //
|
||||
xavtenni //
|
||||
ttv_sw //
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user