mirror of
https://github.com/holub/mame
synced 2025-07-05 18:08:04 +03:00
srcclean and regenerate localisations (nw)
This commit is contained in:
parent
46af74afdf
commit
4e8bb7c7e5
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -126,35 +126,35 @@ WRITE32_MEMBER( nubus_quadralink_device::dev_w )
|
||||
//printf("write %x to QL space @ %x, mask %08x\n", data, offset, mem_mask);
|
||||
switch (offset)
|
||||
{
|
||||
case 0x0000: // SCC 2 A control
|
||||
case 0x0000: // SCC 2 A control
|
||||
m_scc2->ca_w(space, 0, data & 0xff);
|
||||
break;
|
||||
|
||||
case 0x0002: // SCC 2 A data
|
||||
case 0x0002: // SCC 2 A data
|
||||
m_scc2->da_w(space, 0, data & 0xff);
|
||||
break;
|
||||
|
||||
case 0x0004: // SCC 2 B control
|
||||
case 0x0004: // SCC 2 B control
|
||||
m_scc2->cb_w(space, 0, data & 0xff);
|
||||
break;
|
||||
|
||||
case 0x0006: // SCC 2 B data
|
||||
case 0x0006: // SCC 2 B data
|
||||
m_scc2->db_w(space, 0, data & 0xff);
|
||||
break;
|
||||
|
||||
case 0x10000: // SCC 1 A control
|
||||
case 0x10000: // SCC 1 A control
|
||||
m_scc1->ca_w(space, 0, data & 0xff);
|
||||
break;
|
||||
|
||||
case 0x10002: // SCC 1 A data
|
||||
case 0x10002: // SCC 1 A data
|
||||
m_scc1->da_w(space, 0, data & 0xff);
|
||||
break;
|
||||
|
||||
case 0x10004: // SCC 1 B control
|
||||
case 0x10004: // SCC 1 B control
|
||||
m_scc1->cb_w(space, 0, data & 0xff);
|
||||
break;
|
||||
|
||||
case 0x10006: // SCC 1 B data
|
||||
case 0x10006: // SCC 1 B data
|
||||
m_scc1->db_w(space, 0, data & 0xff);
|
||||
break;
|
||||
}
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
Datel Game Booster for Playstation 1
|
||||
|
||||
Gameboy emulator with Gameboy cartridge slot
|
||||
Gameboy emulator with Gameboy cartridge slot
|
||||
|
||||
**********************************************************************/
|
||||
|
||||
|
@ -47,7 +47,7 @@
|
||||
#define EHCMACD 0x04e
|
||||
#define EHCSUMD 0x086
|
||||
#define EHCFFTD 0x096
|
||||
#define EMUL_N 0x100
|
||||
#define EMUL_N 0x100
|
||||
#define EMUL 0x102
|
||||
#define EMULU 0x104
|
||||
#define EMULS 0x106
|
||||
|
@ -415,7 +415,7 @@ void hyperstone_device::dump_registers()
|
||||
{
|
||||
//if (m_core->global_regs[0] == 0x11094)
|
||||
//{
|
||||
// total_11094++;
|
||||
// total_11094++;
|
||||
//}
|
||||
return;
|
||||
} else if (total_ops == 0ULL) {
|
||||
|
@ -46,14 +46,14 @@
|
||||
#define EXECUTE_UNMAPPED_CODE 2
|
||||
#define EXECUTE_RESET_CACHE 3
|
||||
|
||||
#define E132XS_STRICT_VERIFY 0x0001 /* verify all instructions */
|
||||
#define E132XS_STRICT_VERIFY 0x0001 /* verify all instructions */
|
||||
|
||||
#define SINGLE_INSTRUCTION_MODE (1)
|
||||
|
||||
#define ENABLE_E132XS_DRC (1)
|
||||
#define ENABLE_E132XS_DRC (1)
|
||||
|
||||
#define E132XS_LOG_DRC_REGS (0)
|
||||
#define E132XS_LOG_INTERPRETER_REGS (0)
|
||||
#define E132XS_LOG_DRC_REGS (0)
|
||||
#define E132XS_LOG_INTERPRETER_REGS (0)
|
||||
#define E132XS_COUNT_INSTRUCTIONS (0)
|
||||
|
||||
//**************************************************************************
|
||||
@ -443,9 +443,9 @@ private:
|
||||
/* internal compiler state */
|
||||
struct compiler_state
|
||||
{
|
||||
uint32_t m_cycles; /* accumulated cycles */
|
||||
uint8_t m_checkints; /* need to check interrupts before next instruction */
|
||||
uml::code_label m_labelnum; /* index for local labels */
|
||||
uint32_t m_cycles; /* accumulated cycles */
|
||||
uint8_t m_checkints; /* need to check interrupts before next instruction */
|
||||
uml::code_label m_labelnum; /* index for local labels */
|
||||
};
|
||||
|
||||
void execute_run_drc();
|
||||
|
@ -4528,9 +4528,9 @@ void hyperstone_device::generate_lddp(drcuml_block *block, compiler_state *compi
|
||||
UML_ADD(block, I3, I0, 8);
|
||||
UML_AND(block, I0, I0, ~3);
|
||||
UML_CALLH(block, *m_mem_read32);
|
||||
UML_MOV(block, I2, I1); // I2: dreg[0]
|
||||
UML_MOV(block, I2, I1); // I2: dreg[0]
|
||||
UML_ADD(block, I0, I0, 4);
|
||||
UML_CALLH(block, *m_mem_read32); // I1: dreg[4]
|
||||
UML_CALLH(block, *m_mem_read32); // I1: dreg[4]
|
||||
|
||||
if (SRC_GLOBAL)
|
||||
{
|
||||
@ -4847,9 +4847,9 @@ void hyperstone_device::generate_frame(drcuml_block *block, compiler_state *comp
|
||||
|
||||
UML_ROLAND(block, I1, DRC_SR, 7, 0x7f);
|
||||
UML_SUB(block, I1, I1, op & 0xf);
|
||||
UML_ROLINS(block, DRC_SR, I1, 25, 0xfe000000); // SET_FP(GET_FP - SRC_CODE)
|
||||
UML_ROLINS(block, DRC_SR, op, 17, 0x01e00000); // SET_FL(DST_CODE)
|
||||
UML_AND(block, DRC_SR, DRC_SR, ~M_MASK); // SET_M(0)
|
||||
UML_ROLINS(block, DRC_SR, I1, 25, 0xfe000000); // SET_FP(GET_FP - SRC_CODE)
|
||||
UML_ROLINS(block, DRC_SR, op, 17, 0x01e00000); // SET_FL(DST_CODE)
|
||||
UML_AND(block, DRC_SR, DRC_SR, ~M_MASK); // SET_M(0)
|
||||
|
||||
UML_MOV(block, I0, mem(&SP));
|
||||
UML_MOV(block, I6, I0);
|
||||
@ -4859,7 +4859,7 @@ void hyperstone_device::generate_frame(drcuml_block *block, compiler_state *comp
|
||||
UML_ROLAND(block, I2, I0, 30, 0x7f);
|
||||
UML_ADD(block, I2, I2, (64 - 10));
|
||||
UML_SUB(block, I3, I2, I1);
|
||||
UML_SEXT(block, I3, I3, SIZE_BYTE); // difference = ((SP & 0x1fc) >> 2) + (64 - 10) - ((GET_FP - SRC_CODE) + GET_FL)
|
||||
UML_SEXT(block, I3, I3, SIZE_BYTE); // difference = ((SP & 0x1fc) >> 2) + (64 - 10) - ((GET_FP - SRC_CODE) + GET_FL)
|
||||
|
||||
int diff_in_range, done;
|
||||
UML_CMP(block, I3, -64);
|
||||
|
@ -14,9 +14,9 @@
|
||||
|
||||
#define FE_FP ((m_cpu->m_core->global_regs[1] & 0xfe000000) >> 25)
|
||||
#define FE_FL (m_cpu->m_core->fl_lut[((m_cpu->m_core->global_regs[1] >> 21) & 0xf)])
|
||||
#define FE_DST_CODE ((op & 0xf0) >> 4)
|
||||
#define FE_SRC_CODE (op & 0x0f)
|
||||
#define SR_CODE (1 << 1)
|
||||
#define FE_DST_CODE ((op & 0xf0) >> 4)
|
||||
#define FE_SRC_CODE (op & 0x0f)
|
||||
#define SR_CODE (1 << 1)
|
||||
|
||||
/***************************************************************************
|
||||
INSTRUCTION PARSERS
|
||||
|
@ -336,7 +336,7 @@ void hyperstone_device::hyperstone_mov()
|
||||
|
||||
check_delay_PC();
|
||||
|
||||
const bool h = (SR & H_MASK) != 0;
|
||||
const bool h = (SR & H_MASK) != 0;
|
||||
SR &= ~H_MASK;
|
||||
if (DST_GLOBAL && h && !(SR & S_MASK))
|
||||
{
|
||||
|
@ -271,7 +271,7 @@ INPUT_PORTS_START( myb3k_common_ports )
|
||||
PORT_START("MYB3K_TB")
|
||||
PORT_BIT( 0x0001U, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_5_PAD) PORT_NAME("KP 5") // 87
|
||||
PORT_BIT( 0x0002U, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_6_PAD) PORT_NAME("KP 6") // 88
|
||||
// PORT_BIT( 0x0004U, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_COMMA_PAD) PORT_NAME("KP ,") // 89
|
||||
// PORT_BIT( 0x0004U, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_COMMA_PAD) PORT_NAME("KP ,") // 89
|
||||
PORT_BIT( 0x0008U, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_1_PAD) PORT_NAME("KP 1") // 90
|
||||
PORT_BIT( 0x0010U, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_2_PAD) PORT_NAME("KP 2") // 91
|
||||
PORT_BIT( 0x0020U, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_3_PAD) PORT_NAME("KP 3") // 92
|
||||
@ -284,13 +284,13 @@ INPUT_PORTS_START( myb3k_keyboard )
|
||||
PORT_INCLUDE( myb3k_common_ports )
|
||||
|
||||
PORT_MODIFY("MYB3K_T2")
|
||||
PORT_BIT( 0x0008U, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_F12) PORT_NAME("Kanji") PORT_CHAR(UCHAR_MAMEKEY(F12)) // 12
|
||||
PORT_BIT( 0x0008U, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_F12) PORT_NAME("Kanji") PORT_CHAR(UCHAR_MAMEKEY(F12)) // 12
|
||||
|
||||
PORT_MODIFY("MYB3K_T3")
|
||||
PORT_BIT( 0x0080U, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_1) PORT_NAME("1 !") PORT_CHAR('1') PORT_CHAR('!') PORT_CHAR_IGNORE PORT_CHAR(0x30AA) // 16 オ
|
||||
PORT_BIT( 0x0080U, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_1) PORT_NAME("1 !") PORT_CHAR('1') PORT_CHAR('!') PORT_CHAR_IGNORE PORT_CHAR(0x30AA) // 16 オ
|
||||
|
||||
PORT_MODIFY("MYB3K_T4")
|
||||
PORT_BIT( 0x0002U, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_3) PORT_NAME("3 #") PORT_CHAR('3') PORT_CHAR('#') PORT_CHAR_IGNORE PORT_CHAR(0x30E7) // 18 ョ
|
||||
PORT_BIT( 0x0002U, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_3) PORT_NAME("3 #") PORT_CHAR('3') PORT_CHAR('#') PORT_CHAR_IGNORE PORT_CHAR(0x30E7) // 18 ョ
|
||||
|
||||
PORT_MODIFY("MYB3K_T5")
|
||||
PORT_BIT( 0x0080U, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_W) PORT_NAME("w W") PORT_CHAR('w') PORT_CHAR('W') PORT_CHAR_IGNORE PORT_CHAR(0x30E8) // 32 ヨ
|
||||
|
@ -72,7 +72,7 @@ protected:
|
||||
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
|
||||
|
||||
output_delegate m_keyboard_cb;
|
||||
required_ioport_array<12> m_io_kbd_t;
|
||||
required_ioport_array<12> m_io_kbd_t;
|
||||
u8 m_io_kbd_state[12][8];
|
||||
|
||||
int m_x, m_y;
|
||||
@ -84,7 +84,7 @@ protected:
|
||||
class jb3000_keyboard_device : public myb3k_keyboard_device
|
||||
{
|
||||
public:
|
||||
jb3000_keyboard_device(
|
||||
jb3000_keyboard_device(
|
||||
const machine_config &mconfig,
|
||||
char const *tag,
|
||||
device_t *owner,
|
||||
@ -96,7 +96,7 @@ private:
|
||||
class stepone_keyboard_device : public myb3k_keyboard_device
|
||||
{
|
||||
public:
|
||||
stepone_keyboard_device(
|
||||
stepone_keyboard_device(
|
||||
const machine_config &mconfig,
|
||||
char const *tag,
|
||||
device_t *owner,
|
||||
|
@ -17,7 +17,7 @@ Implements WD2010 / WD1010 controller basics for a single hard disk.
|
||||
|
||||
UNIMPLEMENTED FEATURES :
|
||||
- more than 1 drive (untested)
|
||||
- multi sector transfers (M = 1)
|
||||
- multi sector transfers (M = 1)
|
||||
- seek and index timers / ID not found.
|
||||
- implied seeks / implied writes / retries
|
||||
- edge or level triggered seek complete (SC)
|
||||
|
@ -6,11 +6,11 @@
|
||||
|
||||
Direct current.
|
||||
|
||||
TODO:
|
||||
- If we continue having this device in MAME, add support for default voltage other
|
||||
than (currently hardcoded) 5.0
|
||||
- When used in combination with a DAC, vreg device 1st stream update is skipped,
|
||||
causing the DAC to fetch invalid input data. Why does this happen?
|
||||
TODO:
|
||||
- If we continue having this device in MAME, add support for default voltage other
|
||||
than (currently hardcoded) 5.0
|
||||
- When used in combination with a DAC, vreg device 1st stream update is skipped,
|
||||
causing the DAC to fetch invalid input data. Why does this happen?
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
|
@ -898,7 +898,7 @@ void saturn_state::drawpixel_4bpp_trans(int x, int y, int patterndata, int offse
|
||||
void saturn_state::drawpixel_generic(int x, int y, int patterndata, int offsetcnt)
|
||||
{
|
||||
int pix,transmask, spd = stv2_current_sprite.CMDPMOD & 0x40;
|
||||
// int mode;
|
||||
// int mode;
|
||||
int mesh = stv2_current_sprite.CMDPMOD & 0x100;
|
||||
int pix2;
|
||||
|
||||
@ -1063,7 +1063,7 @@ void saturn_state::drawpixel_generic(int x, int y, int patterndata, int offsetcn
|
||||
m_vdp1.framebuffer_draw_lines[y][x] = stv_vdp1_apply_gouraud_shading( x, y, pix );
|
||||
break;
|
||||
default:
|
||||
// TODO: mode 5: prohibited, mode 6: gouraud shading + half-luminance, mode 7: gouraud-shading + half-transparent
|
||||
// TODO: mode 5: prohibited, mode 6: gouraud shading + half-luminance, mode 7: gouraud-shading + half-transparent
|
||||
popmessage("VDP1 PMOD = %02x, contact MAMEdev",stv2_current_sprite.CMDPMOD & 0x7);
|
||||
m_vdp1.framebuffer_draw_lines[y][x] = pix;
|
||||
break;
|
||||
|
@ -35,7 +35,7 @@
|
||||
and readability reasons we tend to write the closest integer
|
||||
value. For example, 3.579545_MHz_XTAL should actually be
|
||||
3.579545454545...MHz (315/88). This is no problem though: see above
|
||||
note about tolerance.
|
||||
note about tolerance.
|
||||
|
||||
In the "Examples" column, please don't add 1000 examples, this is just
|
||||
for interest, so two or three examples is enough.
|
||||
@ -54,15 +54,15 @@ const double XTAL::known_xtals[] = {
|
||||
/*
|
||||
Frequency Sugarvassed Examples
|
||||
----------- ---------------------- ---------------------------------------- */
|
||||
32'768, /* 32.768_kHz_XTAL Used to drive RTC chips */
|
||||
384'000, /* 384_kHz_XTAL Resonator - Commonly used for driving OKI MSM5205 */
|
||||
400'000, /* 400_kHz_XTAL Resonator - OKI MSM5205 on Great Swordman h/w */
|
||||
430'000, /* 430_kHz_XTAL Resonator */
|
||||
455'000, /* 455_kHz_XTAL Resonator - OKI MSM5205 on Gladiator h/w */
|
||||
512'000, /* 512_kHz_XTAL Resonator - Toshiba TC8830F */
|
||||
600'000, /* 600_kHz_XTAL - */
|
||||
640'000, /* 640_kHz_XTAL Resonator - NEC UPD7759, Texas Instruments Speech Chips @ 8khz */
|
||||
960'000, /* 960_kHz_XTAL Resonator - Xerox Notetaker Keyboard UART */
|
||||
32'768, /* 32.768_kHz_XTAL Used to drive RTC chips */
|
||||
384'000, /* 384_kHz_XTAL Resonator - Commonly used for driving OKI MSM5205 */
|
||||
400'000, /* 400_kHz_XTAL Resonator - OKI MSM5205 on Great Swordman h/w */
|
||||
430'000, /* 430_kHz_XTAL Resonator */
|
||||
455'000, /* 455_kHz_XTAL Resonator - OKI MSM5205 on Gladiator h/w */
|
||||
512'000, /* 512_kHz_XTAL Resonator - Toshiba TC8830F */
|
||||
600'000, /* 600_kHz_XTAL - */
|
||||
640'000, /* 640_kHz_XTAL Resonator - NEC UPD7759, Texas Instruments Speech Chips @ 8khz */
|
||||
960'000, /* 960_kHz_XTAL Resonator - Xerox Notetaker Keyboard UART */
|
||||
1'000'000, /* 1_MHz_XTAL Used to drive OKI M6295 chips */
|
||||
1'056'000, /* 1.056_MHz_XTAL Resonator - OKI M6295 on Trio The Punch h/w */
|
||||
1'294'400, /* 1.2944_MHz_XTAL BBN BitGraph PSG */
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#define M1AUDIO_TAG "m1audio"
|
||||
#define M1AUDIO_TAG "m1audio"
|
||||
#define M1AUDIO_CPU_REGION "m1audio:sndcpu"
|
||||
#define M1AUDIO_MPCM1_REGION "m1audio:pcm1"
|
||||
#define M1AUDIO_MPCM2_REGION "m1audio:pcm2"
|
||||
|
@ -83,7 +83,7 @@ private:
|
||||
|
||||
DECLARE_READ8_MEMBER(dsp_io_r);
|
||||
DECLARE_WRITE8_MEMBER(dsp_io_w);
|
||||
// TIMER_CALLBACK_MEMBER(spc_timer);
|
||||
// TIMER_CALLBACK_MEMBER(spc_timer);
|
||||
void dsp_reset();
|
||||
void dsp_update(short *sound_ptr);
|
||||
int advance_envelope(int v);
|
||||
@ -116,17 +116,17 @@ private:
|
||||
TIMER_TICK_ID = 1
|
||||
};
|
||||
/* timers */
|
||||
emu_timer *m_tick_timer;
|
||||
emu_timer *m_tick_timer;
|
||||
bool m_timer_enabled[3];
|
||||
uint16_t m_counter[3];
|
||||
uint8_t m_subcounter[3];
|
||||
uint8_t m_subcounter[3];
|
||||
inline void update_timer_tick(uint8_t which);
|
||||
|
||||
/* IO ports */
|
||||
uint8_t m_port_in[4]; /* SPC input ports */
|
||||
uint8_t m_port_out[4]; /* SPC output ports */
|
||||
|
||||
uint16_t m_TnDIV[3]; /**< Timer N Divider */
|
||||
uint16_t m_TnDIV[3]; /**< Timer N Divider */
|
||||
};
|
||||
|
||||
DECLARE_DEVICE_TYPE(SNES, snes_sound_device)
|
||||
|
@ -412,7 +412,7 @@ READ8_MEMBER(blackt96_state::blackt96_soundio_port_c_r)
|
||||
|
||||
WRITE8_MEMBER(blackt96_state::blackt96_soundio_port_c_w)
|
||||
{
|
||||
// logerror("%s: blackt96_soundio_port_c_w (PREV DATA %02x CURR DATA %02x)\n", machine().describe_context().c_str(), m_port_c_data, data);
|
||||
// logerror("%s: blackt96_soundio_port_c_w (PREV DATA %02x CURR DATA %02x)\n", machine().describe_context().c_str(), m_port_c_data, data);
|
||||
// data & 0x80 unuused?
|
||||
// data & 0x40 is read - see above
|
||||
|
||||
|
@ -226,8 +226,8 @@ static INPUT_PORTS_START( blockoutj )
|
||||
/* these can still be used on the difficutly select even if they can't be used for rotating pieces in this version */
|
||||
PORT_DIPUNUSED_DIPLOC( 0x40, 0x40, "SW2:7" ) /* Listed as "Unused" */
|
||||
PORT_DIPUNUSED_DIPLOC( 0x80, 0x80, "SW2:8" ) /* Listed as "Unused" */
|
||||
// PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_DIPLOCATION("SW2:7")
|
||||
// PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) PORT_DIPLOCATION("SW2:8")
|
||||
// PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_DIPLOCATION("SW2:7")
|
||||
// PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) PORT_DIPLOCATION("SW2:8")
|
||||
INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( agress )
|
||||
@ -447,7 +447,7 @@ DRIVER_INIT_MEMBER(blockout_state,agress)
|
||||
* For now let's use D and just patch the TRACE exception that causes the bogus mirror check
|
||||
*/
|
||||
|
||||
uint16_t *rom = (uint16_t *)memregion("maincpu")->base();
|
||||
uint16_t *rom = (uint16_t *)memregion("maincpu")->base();
|
||||
|
||||
rom[0x82/2] = 0x2700;
|
||||
}
|
||||
|
@ -53,7 +53,7 @@
|
||||
|
||||
Driver by Bryan McPhail and David Haywood.
|
||||
|
||||
DECO 99 "ACE" Chip hooked up by cam900.
|
||||
DECO 99 "ACE" Chip hooked up by cam900.
|
||||
|
||||
Todo:
|
||||
* Sprite priorities aren't verified to be 100% accurate.
|
||||
|
@ -395,7 +395,7 @@ static ADDRESS_MAP_START( calchase_map, AS_PROGRAM, 32, calchase_state )
|
||||
AM_RANGE(0x000d0024, 0x000d0027) AM_DEVWRITE16("ldac", dac_word_interface, write, 0x0000ffff)
|
||||
AM_RANGE(0x000d0028, 0x000d002b) AM_DEVWRITE16("rdac", dac_word_interface, write, 0x0000ffff)
|
||||
AM_RANGE(0x000d0800, 0x000d0fff) AM_ROM AM_REGION("nvram",0) //
|
||||
// AM_RANGE(0x000d0800, 0x000d0fff) AM_RAM // GAME_CMOS
|
||||
// AM_RANGE(0x000d0800, 0x000d0fff) AM_RAM // GAME_CMOS
|
||||
|
||||
//GRULL AM_RANGE(0x000e0000, 0x000effff) AM_RAM
|
||||
//GRULL-AM_RANGE(0x000f0000, 0x000fffff) AM_ROMBANK("bank1")
|
||||
@ -460,7 +460,7 @@ ADDRESS_MAP_END
|
||||
static INPUT_PORTS_START( calchase )
|
||||
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( 0x0002, "Esc", KEYCODE_Q ) /* Esc 01 81 */
|
||||
// 0x0004, KEYCODE_0
|
||||
// 0x0008, KEYCODE_1
|
||||
// 0x0010, KEYCODE_2
|
||||
@ -499,7 +499,7 @@ static INPUT_PORTS_START( calchase )
|
||||
PORT_START("pc_keyboard_3")
|
||||
AT_KEYB_HELPER( 0x0001, "B", KEYCODE_B ) /* B 30 B0 */
|
||||
AT_KEYB_HELPER( 0x0002, "N", KEYCODE_N ) /* N 31 B1 */
|
||||
AT_KEYB_HELPER( 0x0200, "SPACE", KEYCODE_SPACE ) /* N 31 B1 */
|
||||
AT_KEYB_HELPER( 0x0200, "SPACE", KEYCODE_SPACE ) /* N 31 B1 */
|
||||
AT_KEYB_HELPER( 0x0800, "F1", KEYCODE_F1 ) /* F1 3B BB */
|
||||
// AT_KEYB_HELPER( 0x8000, "F5", KEYCODE_F5 )
|
||||
|
||||
|
44
src/mame/drivers/cybstorm.cpp
Executable file → Normal file
44
src/mame/drivers/cybstorm.cpp
Executable file → Normal file
@ -2,15 +2,15 @@
|
||||
// copyright-holders:Aaron Giles, Phil Bennett
|
||||
/***************************************************************************
|
||||
|
||||
Atari Cyberstorm hardware
|
||||
Atari Cyberstorm hardware
|
||||
|
||||
driver by Aaron Giles and Phil Bennett
|
||||
driver by Aaron Giles and Phil Bennett
|
||||
|
||||
Games supported:
|
||||
* Cyberstorm (prototype) (1993)
|
||||
Games supported:
|
||||
* Cyberstorm (prototype) (1993)
|
||||
|
||||
Known bugs:
|
||||
* STAIN effect not 100% correct
|
||||
Known bugs:
|
||||
* STAIN effect not 100% correct
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
@ -25,7 +25,7 @@
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Initialization
|
||||
* Initialization
|
||||
*
|
||||
*************************************/
|
||||
|
||||
@ -52,7 +52,7 @@ MACHINE_RESET_MEMBER(cybstorm_state,cybstorm)
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* I/O handling
|
||||
* I/O handling
|
||||
*
|
||||
*************************************/
|
||||
|
||||
@ -82,14 +82,14 @@ WRITE32_MEMBER(cybstorm_state::latch_w)
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Main CPU memory handlers
|
||||
* Main CPU memory handlers
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Memory maps
|
||||
* Memory maps
|
||||
*
|
||||
*************************************/
|
||||
|
||||
@ -124,7 +124,7 @@ ADDRESS_MAP_END
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Port definitions
|
||||
* Port definitions
|
||||
*
|
||||
*************************************/
|
||||
|
||||
@ -178,7 +178,7 @@ INPUT_PORTS_END
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Graphics definitions
|
||||
* Graphics definitions
|
||||
*
|
||||
*************************************/
|
||||
|
||||
@ -219,16 +219,16 @@ static const gfx_layout molayout =
|
||||
|
||||
|
||||
static GFXDECODE_START( cybstorm )
|
||||
GFXDECODE_ENTRY( "gfx2", 0, pflayout, 0, 16 ) /* sprites & playfield */
|
||||
GFXDECODE_ENTRY( "gfx3", 0, molayout, 4096, 64 ) /* sprites & playfield */
|
||||
GFXDECODE_ENTRY( "gfx1", 0, anlayout, 16384, 64 ) /* characters 8x8 */
|
||||
GFXDECODE_ENTRY( "gfx2", 0, pflayout, 0, 16 ) /* sprites & playfield */
|
||||
GFXDECODE_ENTRY( "gfx3", 0, molayout, 4096, 64 ) /* sprites & playfield */
|
||||
GFXDECODE_ENTRY( "gfx1", 0, anlayout, 16384, 64 ) /* characters 8x8 */
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Machine driver
|
||||
* Machine driver
|
||||
*
|
||||
*************************************/
|
||||
|
||||
@ -289,18 +289,18 @@ MACHINE_CONFIG_END
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* ROM definition(s)
|
||||
* ROM definition(s)
|
||||
*
|
||||
*************************************/
|
||||
|
||||
ROM_START( cybstorm )
|
||||
ROM_REGION( 0x200000, "maincpu", 0 ) /* 6*128k for 68020 code */
|
||||
ROM_REGION( 0x200000, "maincpu", 0 ) /* 6*128k for 68020 code */
|
||||
ROM_LOAD32_BYTE( "st_11.22.prog.6a", 0x000000, 0x080000, CRC(8b112ee9) SHA1(cd8367c47c653b8a1ba236c354f009f4297d521d) )
|
||||
ROM_LOAD32_BYTE( "st_11.22.prog.8a", 0x000001, 0x080000, CRC(36b7cec9) SHA1(c9c2ba6df1fc849200e0c66a7cbc292e8b0b22f3) )
|
||||
ROM_LOAD32_BYTE( "st_11.22.prog2.13a", 0x000002, 0x080000, CRC(1318f2c5) SHA1(929fbe96621852a10b7072490e1e554cdb2f20d8) )
|
||||
ROM_LOAD32_BYTE( "st_11.22.prog.16a", 0x000003, 0x080000, CRC(4ae586a8) SHA1(daa803ed38f6582677b397e744dd8f5f60cfb508) )
|
||||
|
||||
ROM_REGION( 0x14000, "jsa:cpu", 0 ) /* 64k + 16k for 6502 code */
|
||||
ROM_REGION( 0x14000, "jsa:cpu", 0 ) /* 64k + 16k for 6502 code */
|
||||
ROM_LOAD( "st_11.22.6502", 0x010000, 0x004000, CRC(947421b2) SHA1(72b2b66122e779135f1f5af794e4d8513ccbbef6) )
|
||||
ROM_CONTINUE( 0x004000, 0x00c000 )
|
||||
|
||||
@ -343,7 +343,7 @@ ROM_START( cybstorm )
|
||||
ROM_LOAD( "st_11.22.mo34",0x980000, 0x080000, CRC(b8b0c8b6) SHA1(f47218a4d94aa151964687a6e4c02f2b3065fdd3) )
|
||||
ROM_LOAD( "st_11.22.mo35",0xb80000, 0x080000, CRC(f0b9cf9d) SHA1(7ce30b05c1ee02346e8f568f36274b46d1ed99c4) )
|
||||
|
||||
ROM_REGION( 0x100000, "jsa:oki1", 0 ) /* 1MB for ADPCM */
|
||||
ROM_REGION( 0x100000, "jsa:oki1", 0 ) /* 1MB for ADPCM */
|
||||
ROM_LOAD( "st_11.22.5a", 0x000000, 0x080000, CRC(d469692c) SHA1(b7d94c042cf9f28ea65d44f5305d56459562d209) )
|
||||
|
||||
ROM_REGION( 0x100000, "jsa:oki2", 0 ) /* 1MB for ADPCM */
|
||||
@ -354,7 +354,7 @@ ROM_END
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Driver initialization
|
||||
* Driver initialization
|
||||
*
|
||||
*************************************/
|
||||
|
||||
@ -367,7 +367,7 @@ DRIVER_INIT_MEMBER(cybstorm_state, cybstorm)
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Game driver(s)
|
||||
* Game driver(s)
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
@ -205,7 +205,7 @@ Stephh's notes (based on the games M68000 code and some tests) :
|
||||
Dip locations verified with US conversion kit manual.
|
||||
|
||||
TODO:
|
||||
Blend function aren't fully emulated.
|
||||
Blend function aren't fully emulated.
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
@ -547,7 +547,7 @@ MACHINE_CONFIG_START(dassault_state::dassault)
|
||||
|
||||
/* video hardware */
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
MCFG_SCREEN_RAW_PARAMS(XTAL(28'000'000) / 4, 442, 0, 320, 274, 8, 248) // same as robocop2(cninja.cpp)? verify this from real pcb.
|
||||
MCFG_SCREEN_RAW_PARAMS(XTAL(28'000'000) / 4, 442, 0, 320, 274, 8, 248) // same as robocop2(cninja.cpp)? verify this from real pcb.
|
||||
MCFG_SCREEN_UPDATE_DRIVER(dassault_state, screen_update_dassault)
|
||||
|
||||
MCFG_GFXDECODE_ADD("gfxdecode", "palette", dassault)
|
||||
|
@ -131,7 +131,7 @@ class e100_state : public driver_device // public didact_state
|
||||
{
|
||||
public:
|
||||
e100_state(const machine_config &mconfig, device_type type, const char * tag)
|
||||
// : didact_state(mconfig, type, tag)
|
||||
// : didact_state(mconfig, type, tag)
|
||||
: driver_device(mconfig, type, tag)
|
||||
,m_maincpu(*this, "maincpu")
|
||||
,m_kbd_74145(*this, "kbd_74145")
|
||||
|
@ -1532,8 +1532,8 @@ void towns_state::towns_cdrom_read(cdrom_image_device* device)
|
||||
|
||||
// parameter 7 = sector count?
|
||||
// lemmings 2 sets this to 4 but hates 4 extra sectors being read
|
||||
// if(m_towns_cd.parameter[1] != 0)
|
||||
// m_towns_cd.lba_last += m_towns_cd.parameter[1];
|
||||
// if(m_towns_cd.parameter[1] != 0)
|
||||
// m_towns_cd.lba_last += m_towns_cd.parameter[1];
|
||||
|
||||
if(LOG_CD) logerror("CD: Mode 1 read from LBA next:%i last:%i track:%i\n",m_towns_cd.lba_current,m_towns_cd.lba_last,track);
|
||||
|
||||
|
@ -363,9 +363,9 @@ MACHINE_CONFIG_START(homerun_state::dynashot)
|
||||
|
||||
/* video hardware */
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
// MCFG_SCREEN_REFRESH_RATE(60)
|
||||
// MCFG_SCREEN_SIZE(256, 256)
|
||||
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
|
||||
// MCFG_SCREEN_REFRESH_RATE(60)
|
||||
// MCFG_SCREEN_SIZE(256, 256)
|
||||
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
|
||||
MCFG_SCREEN_RAW_PARAMS(XTAL(20'000'000)/4,328,0,256,253,0,240)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(homerun_state, screen_update_homerun)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
@ -359,9 +359,9 @@ ADDRESS_MAP_END
|
||||
/*
|
||||
;*********** PPI 8255 *******
|
||||
PORTCN EQU C0H ;80H C
|
||||
P_AUDIO EQU C0H ;Port A ---> DAC
|
||||
P_AUDIO EQU C0H ;Port A ---> DAC
|
||||
PORTIN EQU C2H ;Port C (High nibble) Inputs. (4=EE, 5=PLATE, 6=KEY, 7=DIP)
|
||||
PORT_EE EQU C2H ;Port C (Low nibble) EEPROM. (0=DI, 1=CS, 2=SK)
|
||||
PORT_EE EQU C2H ;Port C (Low nibble) EEPROM. (0=DI, 1=CS, 2=SK)
|
||||
PORTIO EQU C1H ;Port B I/O 4099 (0=A0, 1=A1, 2=A2, 3=WJ, 4=WC, 5=WP, 6=D, 7=LED)
|
||||
PPI_CTRL EQU C3H ;Mode.
|
||||
|
||||
|
@ -880,8 +880,8 @@ static SLOT_INTERFACE_START(mac_nubus_cards)
|
||||
SLOT_INTERFACE("asmc3nb", NUBUS_ASNTMC3NB) /* Asante MC3NB Ethernet card */
|
||||
SLOT_INTERFACE("portrait", NUBUS_WSPORTRAIT) /* Apple Macintosh II Portrait video card */
|
||||
SLOT_INTERFACE("enetnb", NUBUS_APPLEENET) /* Apple NuBus Ethernet */
|
||||
SLOT_INTERFACE("bootbug", NUBUS_BOOTBUG) /* Brigent BootBug debugger card */
|
||||
SLOT_INTERFACE("quadralink", NUBUS_QUADRALINK) /* AE Quadralink serial card */
|
||||
SLOT_INTERFACE("bootbug", NUBUS_BOOTBUG) /* Brigent BootBug debugger card */
|
||||
SLOT_INTERFACE("quadralink", NUBUS_QUADRALINK) /* AE Quadralink serial card */
|
||||
SLOT_INTERFACE_END
|
||||
|
||||
static SLOT_INTERFACE_START(mac_pds030_cards)
|
||||
|
@ -2,20 +2,20 @@
|
||||
// copyright-holders:David Haywood
|
||||
|
||||
/*
|
||||
Radica 'Mega Drive' and 'Genesis' clones
|
||||
these were mini battery operated "TV Game" consoles with wired in controller and no cartslot
|
||||
fully licensed by Sega
|
||||
Radica 'Mega Drive' and 'Genesis' clones
|
||||
these were mini battery operated "TV Game" consoles with wired in controller and no cartslot
|
||||
fully licensed by Sega
|
||||
|
||||
reproduction 'System on a Chip' hardware, not perfect, flaws will need emulating eventually.
|
||||
reproduction 'System on a Chip' hardware, not perfect, flaws will need emulating eventually.
|
||||
|
||||
not dumped
|
||||
not dumped
|
||||
|
||||
Genesis Volume 2
|
||||
Genesis SF2 / GnG (PAL one is locked to PAL)
|
||||
Genesis Volume 2
|
||||
Genesis SF2 / GnG (PAL one is locked to PAL)
|
||||
|
||||
Outrun 2019 (probably identical ROM to MD version, just custom controller)
|
||||
Outrun 2019 (probably identical ROM to MD version, just custom controller)
|
||||
|
||||
more?
|
||||
more?
|
||||
|
||||
*/
|
||||
|
||||
|
@ -345,7 +345,7 @@ MC6845_UPDATE_ROW( myb3k_state::crtc_update_row )
|
||||
pdat = 0x00; // This gets wrong when background color is not black
|
||||
}
|
||||
else
|
||||
{ // 320x200, 40x25 char, 8 color
|
||||
{ // 320x200, 40x25 char, 8 color
|
||||
uint32_t rowstart = (((x_pos + ma) * 32 + ra) & 0x7fff) + page;
|
||||
pdat = ((m_vram[rowstart + 0] & 0xff) << 16); // Green 8 bits
|
||||
pdat |= ((m_vram[rowstart + 8] & 0xf0) << 8); // Red upper 4 bits
|
||||
@ -449,7 +449,7 @@ WRITE8_MEMBER( myb3k_state::myb3k_video_mode_w )
|
||||
switch (data & 7)
|
||||
{
|
||||
case 0: // Disambiguity between reality and the service manual. Reality is 640x200 in 8 color or tones!
|
||||
{
|
||||
{
|
||||
LOGVMOD(" - 640x200 on 80x25 \n");
|
||||
rectangle rect(0, 640 - 1, 0, 200 - 1);
|
||||
m_screen->configure(640, 200, rect, HZ_TO_ATTOSECONDS(50));
|
||||
|
@ -21,11 +21,11 @@
|
||||
VT16 - ?
|
||||
VT18 - ?
|
||||
|
||||
VT3x - 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
|
||||
VT3x - 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
|
||||
|
||||
(more)
|
||||
|
||||
@ -35,8 +35,8 @@
|
||||
|
||||
todo (VT03):
|
||||
|
||||
Super Mario Bros 3 crashes after title screen, some kind of memory map issue
|
||||
possibly with MMC3 emulation mode
|
||||
Super Mario Bros 3 crashes after title screen, some kind of memory map issue
|
||||
possibly with MMC3 emulation mode
|
||||
|
||||
APU refactoring to allow for mostly doubled up functionality + PCM channel
|
||||
*more*
|
||||
@ -1371,6 +1371,6 @@ CONS( 200?, mc_8x6ss, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "<unk
|
||||
CONS( 2004, mc_dcat8, 0, 0, nes_vt, nes_vt, nes_vt_state, 0, "<unknown>", "100 in 1 (D-CAT8 8bit Console, set 1) (v5.01.11-frd, BL 20041217)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
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_NOT_WORKING )
|
||||
CONS( 2017, sy889, 0, 0, nes_vt_hh, nes_vt, nes_vt_state, 0, "SY Corp", "SY-889 300 in 1 Handheld", MACHINE_NOT_WORKING )
|
||||
// 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_NOT_WORKING )
|
||||
CONS( 2017, bittboy, 0, 0, nes_vt_bt, nes_vt, nes_vt_state, 0, "BittBoy", "BittBoy Mini FC 300 in 1", MACHINE_NOT_WORKING )
|
||||
|
@ -6,7 +6,7 @@
|
||||
Silicon Gaming.
|
||||
PC based hardware.
|
||||
|
||||
Preliminary driver by Roberto Fresca.
|
||||
Preliminary driver by Roberto Fresca.
|
||||
|
||||
******************************************************************
|
||||
|
||||
@ -151,24 +151,24 @@ MACHINE_CONFIG_END
|
||||
|
||||
/*
|
||||
#define ODYSSEY_BIOS \
|
||||
ROM_REGION( 0x80000, "maincpu", 0 ) \
|
||||
ROM_SYSTEM_BIOS( 0, "bios0", "SGI BIOS 76" ) \
|
||||
ROM_LOAD_BIOS( 0, "sgi_bios_76.bin", 0x000000, 0x80000, CRC(00592222) SHA1(29281d25aaf2051e0794dece8be146bb63d5c488) ) \
|
||||
ROM_SYSTEM_BIOS( 1, "bios1", "SGI BIOS 65" ) \
|
||||
ROM_LOAD_BIOS( 1, "sgi_bios_65.bin", 0x000000, 0x80000, CRC(00592222) SHA1(29281d25aaf2051e0794dece8be146bb63d5c488) ) \
|
||||
ROM_SYSTEM_BIOS( 2, "bios2", "SGI BIOS 55" ) \
|
||||
ROM_LOAD_BIOS( 2, "sgi_bios_55.bin", 0x000000, 0x80000, CRC(00592222) SHA1(29281d25aaf2051e0794dece8be146bb63d5c488) ) \
|
||||
ROM_SYSTEM_BIOS( 3, "bios3", "SGI BIOS 46" ) \
|
||||
ROM_LOAD_BIOS( 3, "sgi_bios_46.bin", 0x000000, 0x80000, CRC(00592222) SHA1(29281d25aaf2051e0794dece8be146bb63d5c488) ) \
|
||||
ROM_SYSTEM_BIOS( 4, "bios4", "SGI BIOS 31" ) \
|
||||
ROM_LOAD_BIOS( 4, "sgi_bios_31.bin", 0x000000, 0x80000, CRC(00592222) SHA1(29281d25aaf2051e0794dece8be146bb63d5c488) ) \
|
||||
ROM_SYSTEM_BIOS( 5, "bios5", "SGI BIOS 00" ) \
|
||||
ROM_LOAD_BIOS( 5, "sgi_bios_00.bin", 0x000000, 0x80000, CRC(00592222) SHA1(29281d25aaf2051e0794dece8be146bb63d5c488) )
|
||||
ROM_REGION( 0x80000, "maincpu", 0 ) \
|
||||
ROM_SYSTEM_BIOS( 0, "bios0", "SGI BIOS 76" ) \
|
||||
ROM_LOAD_BIOS( 0, "sgi_bios_76.bin", 0x000000, 0x80000, CRC(00592222) SHA1(29281d25aaf2051e0794dece8be146bb63d5c488) ) \
|
||||
ROM_SYSTEM_BIOS( 1, "bios1", "SGI BIOS 65" ) \
|
||||
ROM_LOAD_BIOS( 1, "sgi_bios_65.bin", 0x000000, 0x80000, CRC(00592222) SHA1(29281d25aaf2051e0794dece8be146bb63d5c488) ) \
|
||||
ROM_SYSTEM_BIOS( 2, "bios2", "SGI BIOS 55" ) \
|
||||
ROM_LOAD_BIOS( 2, "sgi_bios_55.bin", 0x000000, 0x80000, CRC(00592222) SHA1(29281d25aaf2051e0794dece8be146bb63d5c488) ) \
|
||||
ROM_SYSTEM_BIOS( 3, "bios3", "SGI BIOS 46" ) \
|
||||
ROM_LOAD_BIOS( 3, "sgi_bios_46.bin", 0x000000, 0x80000, CRC(00592222) SHA1(29281d25aaf2051e0794dece8be146bb63d5c488) ) \
|
||||
ROM_SYSTEM_BIOS( 4, "bios4", "SGI BIOS 31" ) \
|
||||
ROM_LOAD_BIOS( 4, "sgi_bios_31.bin", 0x000000, 0x80000, CRC(00592222) SHA1(29281d25aaf2051e0794dece8be146bb63d5c488) ) \
|
||||
ROM_SYSTEM_BIOS( 5, "bios5", "SGI BIOS 00" ) \
|
||||
ROM_LOAD_BIOS( 5, "sgi_bios_00.bin", 0x000000, 0x80000, CRC(00592222) SHA1(29281d25aaf2051e0794dece8be146bb63d5c488) )
|
||||
*/
|
||||
|
||||
ROM_START( odyssey )
|
||||
|
||||
// ODYSSEY_BIOS
|
||||
// ODYSSEY_BIOS
|
||||
|
||||
ROM_REGION( 0x80000, "maincpu", 0 ) // main BIOS
|
||||
ROM_LOAD( "sgi_bios_76.bin", 0x000000, 0x80000, CRC(00592222) SHA1(29281d25aaf2051e0794dece8be146bb63d5c488) )
|
||||
|
@ -48,8 +48,8 @@
|
||||
properly implement RTC (integrated into the CPU)
|
||||
Verify Sprite Zoom (check exactly which pixels are doubled / missed on hardware for flipped , non-flipped cases etc.)
|
||||
Fix Save States (is this a driver problem or an ARM core problem, they don't work unless you get through the startup tests)
|
||||
Determine motherboard card reader MCU internal ROM size and add as NO_DUMP to the sets
|
||||
See if kov2nl needs another idle skip, after Game Over there is a period where the current one is ineffective
|
||||
Determine motherboard card reader MCU internal ROM size and add as NO_DUMP to the sets
|
||||
See if kov2nl needs another idle skip, after Game Over there is a period where the current one is ineffective
|
||||
|
||||
Debug features (require DIP SW1:8 On and SW1:1 Off):
|
||||
- QC TEST mode: hold P1 A+B during boot
|
||||
|
@ -2,152 +2,152 @@
|
||||
// copyright-holders:David Haywood, R.Belmont
|
||||
|
||||
/*
|
||||
Radica Games 6502 based 'TV Game' hardware
|
||||
Radica Games 6502 based 'TV Game' hardware
|
||||
|
||||
These use a 6502 derived CPU under a glob
|
||||
The CPU die is marked 'ELAN EU3A05'
|
||||
These use a 6502 derived CPU under a glob
|
||||
The CPU die is marked 'ELAN EU3A05'
|
||||
|
||||
There is a second glob surrounded by TSOP48 pads
|
||||
this contains the ROM
|
||||
There is a second glob surrounded by TSOP48 pads
|
||||
this contains the ROM
|
||||
|
||||
Space Invaders uses a 3rd glob marked
|
||||
AMIC (C) (M) 1998-1 AM3122A
|
||||
this is presumably for the bitmap layer on Qix
|
||||
Space Invaders uses a 3rd glob marked
|
||||
AMIC (C) (M) 1998-1 AM3122A
|
||||
this is presumably for the bitmap layer on Qix
|
||||
|
||||
--
|
||||
Known games on this hardare
|
||||
--
|
||||
Known games on this hardare
|
||||
|
||||
Tetris
|
||||
Space Invaders
|
||||
Tetris
|
||||
Space Invaders
|
||||
|
||||
---
|
||||
Other games that might be on this hardware
|
||||
---
|
||||
Other games that might be on this hardware
|
||||
|
||||
Skateboarding
|
||||
+ some of the earlier PlayTV games (not Soccer, that's XaviX, see xavix.cpp)
|
||||
Skateboarding
|
||||
+ some of the earlier PlayTV games (not Soccer, that's XaviX, see xavix.cpp)
|
||||
|
||||
---
|
||||
The XaviX ones seem to have a XaviX logo on the external packaging while the
|
||||
ones for this driver don't seem to have any specific marking.
|
||||
---
|
||||
The XaviX ones seem to have a XaviX logo on the external packaging while the
|
||||
ones for this driver don't seem to have any specific marking.
|
||||
|
||||
|
||||
Notes:
|
||||
Notes:
|
||||
|
||||
To access internal test on Tetris hold P1 Down + P1 Anticlockwise (Button 2) on boot
|
||||
There appears to be a similar mode for Invaders but I don't know if it's accessible
|
||||
To access internal test on Tetris hold P1 Down + P1 Anticlockwise (Button 2) on boot
|
||||
There appears to be a similar mode for Invaders but I don't know if it's accessible
|
||||
|
||||
|
||||
RAM 0xa0 and 0xa1 contain the ACD0 and AD1 values and player 2 controls if between
|
||||
certain values? probably read via serial??
|
||||
RAM 0xa0 and 0xa1 contain the ACD0 and AD1 values and player 2 controls if between
|
||||
certain values? probably read via serial??
|
||||
|
||||
Custom Interrupt purposes
|
||||
Custom Interrupt purposes
|
||||
|
||||
TETRIS
|
||||
TETRIS
|
||||
|
||||
ffb0
|
||||
nothing of note?
|
||||
ffb0
|
||||
nothing of note?
|
||||
|
||||
ffb4
|
||||
stuff with 500e, 500c and 500d
|
||||
ffb4
|
||||
stuff with 500e, 500c and 500d
|
||||
|
||||
ffb8
|
||||
stuff with 50a4 / 50a5 / 50a6 and memory address e2
|
||||
ffb8
|
||||
stuff with 50a4 / 50a5 / 50a6 and memory address e2
|
||||
|
||||
ffbc
|
||||
stuff with 50a4 / 50a5 / 50a6 and memory address e2 (similar to above, different bits)
|
||||
ffbc
|
||||
stuff with 50a4 / 50a5 / 50a6 and memory address e2 (similar to above, different bits)
|
||||
|
||||
ffc0 - doesn't exist
|
||||
ffc4 - doesn't exist
|
||||
ffc8 - doesn't exist
|
||||
ffd0 - doesn't exist
|
||||
ffc0 - doesn't exist
|
||||
ffc4 - doesn't exist
|
||||
ffc8 - doesn't exist
|
||||
ffd0 - doesn't exist
|
||||
|
||||
ffd4
|
||||
main irq?
|
||||
ffd4
|
||||
main irq?
|
||||
|
||||
ffd8
|
||||
jumps straight to an rti
|
||||
ffd8
|
||||
jumps straight to an rti
|
||||
|
||||
ffdc
|
||||
accesses 501d / 501b
|
||||
ffdc
|
||||
accesses 501d / 501b
|
||||
|
||||
SPACE INVADERS
|
||||
SPACE INVADERS
|
||||
|
||||
ffb0
|
||||
rti
|
||||
ffb0
|
||||
rti
|
||||
|
||||
ffb4
|
||||
rti
|
||||
ffb4
|
||||
rti
|
||||
|
||||
ffb8
|
||||
rti
|
||||
ffb8
|
||||
rti
|
||||
|
||||
ffbc
|
||||
decreases 301 bit 02
|
||||
stuff wit 50a5
|
||||
ffbc
|
||||
decreases 301 bit 02
|
||||
stuff wit 50a5
|
||||
|
||||
ffc0
|
||||
decreases 302
|
||||
stuff with 50a5 bit 04
|
||||
ffc0
|
||||
decreases 302
|
||||
stuff with 50a5 bit 04
|
||||
|
||||
ffc4
|
||||
decreases 303
|
||||
stuff with 50a5 bit 08
|
||||
ffc4
|
||||
decreases 303
|
||||
stuff with 50a5 bit 08
|
||||
|
||||
ffc8
|
||||
decreases 304
|
||||
stuff with 50a5 bit 10
|
||||
ffc8
|
||||
decreases 304
|
||||
stuff with 50a5 bit 10
|
||||
|
||||
ffcc
|
||||
uses 307
|
||||
stuff with 50a5 bit 20
|
||||
ffcc
|
||||
uses 307
|
||||
stuff with 50a5 bit 20
|
||||
|
||||
ffd0
|
||||
dead loop
|
||||
ffd0
|
||||
dead loop
|
||||
|
||||
ffd4
|
||||
main interrupt
|
||||
ffd4
|
||||
main interrupt
|
||||
|
||||
ffd8
|
||||
dead loop
|
||||
ffd8
|
||||
dead loop
|
||||
|
||||
ffdc
|
||||
dead loop
|
||||
ffdc
|
||||
dead loop
|
||||
|
||||
ffe0
|
||||
dead loop
|
||||
ffe0
|
||||
dead loop
|
||||
|
||||
ffe4
|
||||
rti
|
||||
ffe4
|
||||
rti
|
||||
|
||||
ffe8
|
||||
dead loop
|
||||
ffe8
|
||||
dead loop
|
||||
|
||||
ffec
|
||||
dead loop
|
||||
ffec
|
||||
dead loop
|
||||
|
||||
|
||||
Flaws (NOT emulation bugs, happen on hardware):
|
||||
--
|
||||
Flaws (NOT emulation bugs, happen on hardware):
|
||||
--
|
||||
|
||||
In QIX the sprites lag behind the line drawing, so you see the line infront of your player until you stop moving
|
||||
In QIX the sprites lag behind the line drawing, so you see the line infront of your player until you stop moving
|
||||
|
||||
In Space Invaders the UFO can sometimes glitch for a frame when appearing, and wraps around at the edges
|
||||
(even if the hardware supports having higher priority tiles to prevent this, as used by Lunar Rescue, it isn't
|
||||
used here)
|
||||
In Space Invaders the UFO can sometimes glitch for a frame when appearing, and wraps around at the edges
|
||||
(even if the hardware supports having higher priority tiles to prevent this, as used by Lunar Rescue, it isn't
|
||||
used here)
|
||||
|
||||
Colony 7 has a typo in the instructions
|
||||
Colony 7 has a typo in the instructions
|
||||
|
||||
The fake 'colour band' effect does not apply to the thruster (and several other elements) in Lunar Rescue
|
||||
The fake 'colour band' effect does not apply to the thruster (and several other elements) in Lunar Rescue
|
||||
|
||||
Enemies in Phoenix are rendered above the score panel
|
||||
Enemies in Phoenix are rendered above the score panel
|
||||
|
||||
The 200pt right facing bird on the Phoenix score table is corrupt
|
||||
The 200pt right facing bird on the Phoenix score table is corrupt
|
||||
|
||||
Uncertain (to check)
|
||||
Uncertain (to check)
|
||||
|
||||
Space Invaders seems to be using a darker than expected palette, there are lighter colours in the palette but
|
||||
they don't seem to be used. It's difficult to judge from hardware videos, although it definitely isn't as
|
||||
white as the menu, so this might also be a non-bug.
|
||||
Space Invaders seems to be using a darker than expected palette, there are lighter colours in the palette but
|
||||
they don't seem to be used. It's difficult to judge from hardware videos, although it definitely isn't as
|
||||
white as the menu, so this might also be a non-bug.
|
||||
|
||||
|
||||
*/
|
||||
@ -301,24 +301,24 @@ void radica_eu3a05_state::draw_sprites(screen_device &screen, bitmap_ind16 &bitm
|
||||
address_space& fullbankspace = m_bank->space(AS_PROGRAM);
|
||||
|
||||
/*
|
||||
Sprites
|
||||
AA yy xx cc XX YY aa bb
|
||||
Sprites
|
||||
AA yy xx cc XX YY aa bb
|
||||
|
||||
yy = y position
|
||||
xx = x position
|
||||
XX = texture x start
|
||||
YY = texture y start
|
||||
aa = same as unk2 on tiles
|
||||
bb = sometimes set in invaders
|
||||
cc = same as attr on tiles (colour / priority?)
|
||||
yy = y position
|
||||
xx = x position
|
||||
XX = texture x start
|
||||
YY = texture y start
|
||||
aa = same as unk2 on tiles
|
||||
bb = sometimes set in invaders
|
||||
cc = same as attr on tiles (colour / priority?)
|
||||
|
||||
AA = attributes
|
||||
e--- fFsS
|
||||
e = enable
|
||||
S = SizeX
|
||||
s = SizeY
|
||||
F = FlipX
|
||||
f = FlipY (assumed, not seen)
|
||||
AA = attributes
|
||||
e--- fFsS
|
||||
e = enable
|
||||
S = SizeX
|
||||
s = SizeY
|
||||
F = FlipX
|
||||
f = FlipY (assumed, not seen)
|
||||
|
||||
*/
|
||||
|
||||
@ -605,7 +605,7 @@ uint32_t radica_eu3a05_state::screen_update(screen_device &screen, bitmap_ind16
|
||||
double s = (double)sl_raw / 7.0f;
|
||||
double h = (double)h_raw / 24.0f;
|
||||
|
||||
double r, g, b;
|
||||
double r, g, b;
|
||||
|
||||
if (s == 0) {
|
||||
r = g = b = l; // greyscale
|
||||
@ -751,10 +751,10 @@ WRITE8_MEMBER(radica_eu3a05_state::radicasi_vidctrl_w)
|
||||
{
|
||||
logerror("%s: radicasi_vidctrl_w %02x (video control?)\n", machine().describe_context(), data);
|
||||
/*
|
||||
c3 8bpp 16x16 1100 0011
|
||||
e3 4bpp 16x16 1110 0011
|
||||
83 8bpp 8x8 1000 0011
|
||||
02 8bpp 8x8 (phoenix) 0000 0010
|
||||
c3 8bpp 16x16 1100 0011
|
||||
e3 4bpp 16x16 1110 0011
|
||||
83 8bpp 8x8 1000 0011
|
||||
02 8bpp 8x8 (phoenix) 0000 0010
|
||||
*/
|
||||
m_vidctrl = data;
|
||||
}
|
||||
@ -1008,10 +1008,10 @@ static INPUT_PORTS_START( rad_tetr )
|
||||
INPUT_PORTS_END
|
||||
|
||||
/* both NMI and IRQ vectors just point to RTI
|
||||
there is a table of jumps just before that, those appear to be the real interrupt functions?
|
||||
there is a table of jumps just before that, those appear to be the real interrupt functions?
|
||||
|
||||
patch the main IRQ to be the one that decreases an address the code is waiting for
|
||||
the others look like they might be timer service routines
|
||||
patch the main IRQ to be the one that decreases an address the code is waiting for
|
||||
the others look like they might be timer service routines
|
||||
*/
|
||||
|
||||
READ8_MEMBER(radica_eu3a05_state::radicasi_nmi_vector_r)
|
||||
|
@ -2,24 +2,24 @@
|
||||
// copyright-holders:David Haywood, R.Belmont
|
||||
|
||||
/*
|
||||
These use a 6502 derived CPU under a glob
|
||||
The CPU die is marked 'ELAN EU3A14'
|
||||
These use a 6502 derived CPU under a glob
|
||||
The CPU die is marked 'ELAN EU3A14'
|
||||
|
||||
There is a second glob surrounded by TSOP48 pads
|
||||
this contains the ROM
|
||||
There is a second glob surrounded by TSOP48 pads
|
||||
this contains the ROM
|
||||
|
||||
Known to be on this hardware
|
||||
Known to be on this hardware
|
||||
|
||||
Golden Tee Golf Home Edition (developed by FarSight Studios)
|
||||
Golden Tee Golf Home Edition (developed by FarSight Studios)
|
||||
|
||||
Maybe on this hardware
|
||||
Maybe on this hardware
|
||||
|
||||
PlayTV Real Swing Golf (also developed by FarSight, looks similar but with different controls)
|
||||
PlayTV Real Swing Golf (also developed by FarSight, looks similar but with different controls)
|
||||
|
||||
|
||||
In many ways this is similar to the rad_eu3a05.cpp hardware
|
||||
but the video system has changed, here the sprites are more traditional non-tile based, rather
|
||||
than coming from 'pages'
|
||||
In many ways this is similar to the rad_eu3a05.cpp hardware
|
||||
but the video system has changed, here the sprites are more traditional non-tile based, rather
|
||||
than coming from 'pages'
|
||||
|
||||
*/
|
||||
|
||||
@ -299,7 +299,7 @@ void radica_eu3a14_state::draw_sprites(screen_device &screen, bitmap_ind16 &bitm
|
||||
x -= 8;
|
||||
y -= 4;
|
||||
|
||||
// int base = 0x18000;
|
||||
// int base = 0x18000;
|
||||
int offset = ((m_mainram[i + 5] << 8) + (m_mainram[i + 4] << 0));
|
||||
int extra = m_mainram[i + 6];
|
||||
gfx_element *gfx;
|
||||
|
@ -105,8 +105,8 @@
|
||||
JN-00 : Fujitsu MB7116 PROM
|
||||
VSync : 58kHz
|
||||
|
||||
TODO:
|
||||
nitrobal : blending, priority function wrong
|
||||
TODO:
|
||||
nitrobal : blending, priority function wrong
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
|
@ -118,7 +118,7 @@ void sagitta180_state::machine_reset()
|
||||
static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8, sagitta180_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xffff)
|
||||
AM_RANGE(0x0000, 0x07ff) AM_ROM
|
||||
// AM_RANGE(0x0800, 0x17ff) AM_ROM
|
||||
// AM_RANGE(0x0800, 0x17ff) AM_ROM
|
||||
AM_RANGE(0x1800, 0xffff) AM_RAM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -193,10 +193,10 @@ MACHINE_CONFIG_START(sagitta180_state::sagitta180)
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE("uart", i8251_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("uart", i8251_device, write_rxc))
|
||||
|
||||
// MCFG_DEVICE_ADD("intlatch", I8212, 0)
|
||||
// MCFG_I8212_MD_CALLBACK(GND) // guessed !
|
||||
// MCFG_I8212_DI_CALLBACK(DEVREAD8("picu", i8214_device, vector_r))
|
||||
// MCFG_I8212_INT_CALLBACK(INPUTLINE("maincpu", I8085_INTR_LINE)) // guessed !
|
||||
// MCFG_DEVICE_ADD("intlatch", I8212, 0)
|
||||
// MCFG_I8212_MD_CALLBACK(GND) // guessed !
|
||||
// MCFG_I8212_DI_CALLBACK(DEVREAD8("picu", i8214_device, vector_r))
|
||||
// MCFG_I8212_INT_CALLBACK(INPUTLINE("maincpu", I8085_INTR_LINE)) // guessed !
|
||||
|
||||
/* video hardware */
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
|
@ -2083,7 +2083,7 @@ MACHINE_CONFIG_END
|
||||
static MACHINE_CONFIG_DERIVED( system16a_i8751_no7751, system16a_i8751 )
|
||||
MCFG_DEVICE_REMOVE("n7751")
|
||||
MCFG_DEVICE_REMOVE("dac")
|
||||
MCFG_DEVICE_REMOVE("vref")
|
||||
MCFG_DEVICE_REMOVE("vref")
|
||||
|
||||
MCFG_SOUND_REPLACE("ymsnd", YM2151, 4000000)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
|
||||
|
@ -666,7 +666,7 @@ READ8_MEMBER(sigmab98_state::d013_r)
|
||||
{
|
||||
// bit 5 must go 0->1 (vblank?)
|
||||
// bit 2 must be set (sprite buffered? triggered by pulsing bit 3 of port C6?)
|
||||
// return (m_screen->vblank() ? 0x20 : 0x00) | 0x04;
|
||||
// return (m_screen->vblank() ? 0x20 : 0x00) | 0x04;
|
||||
return (m_screen->vblank() ? 0x20 : 0x01) | 0x04;
|
||||
// return machine().rand();
|
||||
}
|
||||
@ -1164,7 +1164,7 @@ WRITE8_MEMBER(lufykzku_state::lufykzku_watchdog_w)
|
||||
WRITE8_MEMBER(lufykzku_state::lufykzku_c4_w)
|
||||
{
|
||||
machine().bookkeeping().coin_lockout_w(1, (~data) & 0x20); // 100 yen lockout
|
||||
// machine().bookkeeping().coin_lockout_w(2, (~data) & 0x40); // (unused coin lockout)
|
||||
// machine().bookkeeping().coin_lockout_w(2, (~data) & 0x40); // (unused coin lockout)
|
||||
machine().bookkeeping().coin_lockout_w(0, (~data) & 0x80); // medal lockout
|
||||
|
||||
m_c4 = data;
|
||||
@ -1175,13 +1175,13 @@ WRITE8_MEMBER(lufykzku_state::lufykzku_c4_w)
|
||||
WRITE8_MEMBER(lufykzku_state::lufykzku_c6_w)
|
||||
{
|
||||
machine().bookkeeping().coin_counter_w(1, data & 0x01); // 100 yen in
|
||||
// machine().bookkeeping().coin_counter_w(2, data & 0x02); // (unused coin in)
|
||||
// machine().bookkeeping().coin_counter_w(2, data & 0x02); // (unused coin in)
|
||||
machine().bookkeeping().coin_counter_w(0, data & 0x04); // medal in
|
||||
machine().bookkeeping().coin_counter_w(3, data & 0x08); // medal out
|
||||
output().set_led_value(0, data & 0x10); // button led
|
||||
// output().set_led_value(1, data & 0x20); // (unused button led)
|
||||
// output().set_led_value(2, data & 0x40); // (unused button led)
|
||||
// output().set_led_value(3, data & 0x80); // (unused button led)
|
||||
// output().set_led_value(1, data & 0x20); // (unused button led)
|
||||
// output().set_led_value(2, data & 0x40); // (unused button led)
|
||||
// output().set_led_value(3, data & 0x80); // (unused button led)
|
||||
|
||||
m_c6 = data;
|
||||
show_outputs();
|
||||
@ -2913,7 +2913,7 @@ MACHINE_CONFIG_START(lufykzku_state::lufykzku)
|
||||
MCFG_PALETTE_FORMAT(xRRRRRGGGGGBBBBB)
|
||||
MCFG_PALETTE_ENDIANNESS(ENDIANNESS_BIG)
|
||||
|
||||
// MCFG_BUFFERED_SPRITERAM8_ADD("spriteram") // same as sammymdl?
|
||||
// MCFG_BUFFERED_SPRITERAM8_ADD("spriteram") // same as sammymdl?
|
||||
|
||||
// sound hardware
|
||||
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
||||
@ -3476,7 +3476,7 @@ DRIVER_INIT_MEMBER(lufykzku_state,lufykzku)
|
||||
|
||||
Xilinx XC9536 VM1212F01 (@U5) - In-System Programmable CPLD
|
||||
MX29F0??C (@U3) - Empty 32 Pin ROM Socket
|
||||
M5295A (@U8) - Watchdog Timer (Near CUT-DEBUG MODE Jumper)
|
||||
M5295A (@U8) - Watchdog Timer (Near CUT-DEBUG MODE Jumper)
|
||||
M93C46MN6T (@U11?) - Serial EEPROM
|
||||
Cell Battery (@BAT)
|
||||
25 Pin Edge Connector
|
||||
|
@ -221,8 +221,8 @@ static ADDRESS_MAP_START( kongambl_map, AS_PROGRAM, 32, kongambl_state )
|
||||
|
||||
//0x400000 0x400001 "13M" even addresses
|
||||
//0x400002,0x400003 "13J" odd addresses
|
||||
// AM_RANGE(0x400000, 0x401fff) AM_DEVREAD("k056832", k056832_device, rom_long_r)
|
||||
// AM_RANGE(0x420000, 0x43ffff) AM_DEVREADWRITE("k056832", k056832_device, unpaged_ram_long_r, unpaged_ram_long_w)
|
||||
// AM_RANGE(0x400000, 0x401fff) AM_DEVREAD("k056832", k056832_device, rom_long_r)
|
||||
// AM_RANGE(0x420000, 0x43ffff) AM_DEVREADWRITE("k056832", k056832_device, unpaged_ram_long_r, unpaged_ram_long_w)
|
||||
AM_RANGE(0x480000, 0x48003f) AM_DEVWRITE("k056832", k056832_device, long_w)
|
||||
|
||||
|
||||
|
@ -241,7 +241,7 @@ static ADDRESS_MAP_START( voyager_map, AS_PROGRAM, 32, voyager_state )
|
||||
//AM_RANGE(0x000d0000, 0x000d0003) AM_RAM // XYLINX - Sincronus serial communication
|
||||
AM_RANGE(0x000d0008, 0x000d000b) AM_WRITENOP // ???
|
||||
AM_RANGE(0x000d0800, 0x000d0fff) AM_ROM AM_REGION("nvram",0) //
|
||||
// AM_RANGE(0x000d0800, 0x000d0fff) AM_RAM // GAME_CMOS
|
||||
// AM_RANGE(0x000d0800, 0x000d0fff) AM_RAM // GAME_CMOS
|
||||
|
||||
//GRULL AM_RANGE(0x000e0000, 0x000effff) AM_RAM
|
||||
//GRULL-AM_RANGE(0x000f0000, 0x000fffff) AM_ROMBANK("bank1")
|
||||
|
2
src/mame/includes/cybstorm.h
Executable file → Normal file
2
src/mame/includes/cybstorm.h
Executable file → Normal file
@ -2,7 +2,7 @@
|
||||
// copyright-holders:Aaron Giles, Phil Bennett
|
||||
/*************************************************************************
|
||||
|
||||
Atari Cyberstorm hardware
|
||||
Atari Cyberstorm hardware
|
||||
|
||||
*************************************************************************/
|
||||
|
||||
|
@ -2,9 +2,9 @@
|
||||
// copyright-holders:Sergey Svishchev
|
||||
/***************************************************************************
|
||||
|
||||
Toshiba 1000 Backup RAM
|
||||
Toshiba 1000 Backup RAM
|
||||
|
||||
Simulation of interface provided by 80C50 keyboard controller.
|
||||
Simulation of interface provided by 80C50 keyboard controller.
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
|
@ -2,9 +2,9 @@
|
||||
// copyright-holders:Sergey Svishchev
|
||||
/***************************************************************************
|
||||
|
||||
Toshiba 1000 Backup RAM
|
||||
Toshiba 1000 Backup RAM
|
||||
|
||||
Simulation of interface provided by 80C50 keyboard controller.
|
||||
Simulation of interface provided by 80C50 keyboard controller.
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
|
@ -927,7 +927,7 @@ spinlbrkj // (c) 1990 V-System Co. (Japan)
|
||||
spinlbrku // (c) 1990 V-System Co. (US)
|
||||
svolly91 // (c) 1991 Video System Co. (Japan)
|
||||
turbofrc // (c) 1991 Video System Co.
|
||||
turbofrco // (c) 1991 Video System Co.
|
||||
turbofrco // (c) 1991 Video System Co.
|
||||
turbofrcu // (c) 1991 Video System Co. (US)
|
||||
wbbc97 // (c) 1997 Comad
|
||||
kickball // (c) 1998 Seoung Youn
|
||||
@ -20509,9 +20509,9 @@ ssf2mdb // MegaDrive-based hack
|
||||
topshoot // (c) 1995 Sun Mixing
|
||||
|
||||
@source:megadriv_rad.cpp
|
||||
rad_sf // (c)2004 Radica
|
||||
rad_gen1 // (c)2004 Radica
|
||||
rad_ssoc // (c)2004 Radica
|
||||
rad_sf // (c)2004 Radica
|
||||
rad_gen1 // (c)2004 Radica
|
||||
rad_ssoc // (c)2004 Radica
|
||||
|
||||
@source:megaphx.cpp
|
||||
megaphx // (c) 1991 Dinamic / Inder
|
||||
|
62
src/mame/video/cybstorm.cpp
Executable file → Normal file
62
src/mame/video/cybstorm.cpp
Executable file → Normal file
@ -2,7 +2,7 @@
|
||||
// copyright-holders:Aaron Giles, Phil Bennett
|
||||
/***************************************************************************
|
||||
|
||||
Atari Cyberstorm hardware
|
||||
Atari Cyberstorm hardware
|
||||
|
||||
****************************************************************************/
|
||||
|
||||
@ -13,7 +13,7 @@
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Tilemap callbacks
|
||||
* Tilemap callbacks
|
||||
*
|
||||
*************************************/
|
||||
|
||||
@ -58,42 +58,42 @@ TILEMAP_MAPPER_MEMBER(cybstorm_state::playfield_scan)
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Video system start
|
||||
* Video system start
|
||||
*
|
||||
*************************************/
|
||||
|
||||
const atari_motion_objects_config cybstorm_state::s_mob_config =
|
||||
{
|
||||
1, /* index to which gfx system */
|
||||
1, /* number of motion object banks */
|
||||
1, /* are the entries linked? */
|
||||
0, /* are the entries split? */
|
||||
1, /* render in reverse order? */
|
||||
0, /* render in swapped X/Y order? */
|
||||
0, /* does the neighbor bit affect the next object? */
|
||||
8, /* pixels per SLIP entry (0 for no-slip) */
|
||||
0, /* pixel offset for SLIPs */
|
||||
0, /* maximum number of links to visit/scanline (0=all) */
|
||||
1, /* index to which gfx system */
|
||||
1, /* number of motion object banks */
|
||||
1, /* are the entries linked? */
|
||||
0, /* are the entries split? */
|
||||
1, /* render in reverse order? */
|
||||
0, /* render in swapped X/Y order? */
|
||||
0, /* does the neighbor bit affect the next object? */
|
||||
8, /* pixels per SLIP entry (0 for no-slip) */
|
||||
0, /* pixel offset for SLIPs */
|
||||
0, /* maximum number of links to visit/scanline (0=all) */
|
||||
|
||||
0x1000, /* base palette entry */
|
||||
0x1000, /* maximum number of colors */
|
||||
0, /* transparent pen index */
|
||||
0x1000, /* base palette entry */
|
||||
0x1000, /* maximum number of colors */
|
||||
0, /* transparent pen index */
|
||||
|
||||
{{ 0x03ff,0,0,0 }}, /* mask for the link */
|
||||
{{ 0,0x7fff,0,0 }, { 0x3c00,0,0,0 }}, /* mask for the code index */
|
||||
{{ 0,0,0x000f,0 }}, /* mask for the color */
|
||||
{{ 0,0,0xff80,0 }}, /* mask for the X position */
|
||||
{{ 0,0,0,0xff80 }}, /* mask for the Y position */
|
||||
{{ 0,0,0,0x0070 }}, /* mask for the width, in tiles*/
|
||||
{{ 0,0,0,0x0007 }}, /* mask for the height, in tiles */
|
||||
{{ 0,0x8000,0,0 }}, /* mask for the horizontal flip */
|
||||
{{ 0 }}, /* mask for the vertical flip */
|
||||
{{ 0,0,0x0070,0 }}, /* mask for the priority */
|
||||
{{ 0 }}, /* mask for the neighbor */
|
||||
{{ 0 }}, /* mask for absolute coordinates */
|
||||
{{ 0x03ff,0,0,0 }}, /* mask for the link */
|
||||
{{ 0,0x7fff,0,0 }, { 0x3c00,0,0,0 }}, /* mask for the code index */
|
||||
{{ 0,0,0x000f,0 }}, /* mask for the color */
|
||||
{{ 0,0,0xff80,0 }}, /* mask for the X position */
|
||||
{{ 0,0,0,0xff80 }}, /* mask for the Y position */
|
||||
{{ 0,0,0,0x0070 }}, /* mask for the width, in tiles*/
|
||||
{{ 0,0,0,0x0007 }}, /* mask for the height, in tiles */
|
||||
{{ 0,0x8000,0,0 }}, /* mask for the horizontal flip */
|
||||
{{ 0 }}, /* mask for the vertical flip */
|
||||
{{ 0,0,0x0070,0 }}, /* mask for the priority */
|
||||
{{ 0 }}, /* mask for the neighbor */
|
||||
{{ 0 }}, /* mask for absolute coordinates */
|
||||
|
||||
{{ 0 }}, /* mask for the special value */
|
||||
0, /* resulting value to indicate "special" */
|
||||
{{ 0 }}, /* mask for the special value */
|
||||
0, /* resulting value to indicate "special" */
|
||||
};
|
||||
|
||||
VIDEO_START_MEMBER(cybstorm_state,cybstorm)
|
||||
@ -106,7 +106,7 @@ VIDEO_START_MEMBER(cybstorm_state,cybstorm)
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Main refresh
|
||||
* Main refresh
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
@ -14,10 +14,10 @@
|
||||
#pragma once
|
||||
|
||||
|
||||
#define DECO_32x32 0
|
||||
#define DECO_64x32 1
|
||||
#define DECO_32x64 2
|
||||
#define DECO_64x64 3
|
||||
#define DECO_32x32 0
|
||||
#define DECO_64x32 1
|
||||
#define DECO_32x64 2
|
||||
#define DECO_64x64 3
|
||||
|
||||
/***************************************************************************
|
||||
TYPE DEFINITIONS
|
||||
|
@ -2,25 +2,25 @@
|
||||
// copyright-holders:Bryan McPhail
|
||||
/*************************************************************************
|
||||
|
||||
deco_ace.cpp
|
||||
deco_ace.cpp
|
||||
|
||||
Data East 99 "ACE" Chip Emulation
|
||||
Data East 99 "ACE" Chip Emulation
|
||||
|
||||
Original source (from deco32.cpp) by Bryan McPhail, Splited by cam900.
|
||||
Original source (from deco32.cpp) by Bryan McPhail, Splited by cam900.
|
||||
|
||||
**************************************************************************/
|
||||
/*Some notes pieced together from Tattoo Assassins info(from deco32.cpp):
|
||||
|
||||
Bytes 0 to 0x1f : Alpha Control
|
||||
Tattoo Assassins :
|
||||
Bytes 0x00 to 0x16(0x58) - object alpha control?
|
||||
Bytes 0x17(0x5c) to 0x1f(0x7c) - tilemap alpha control
|
||||
Tattoo Assassins :
|
||||
Bytes 0x00 to 0x16(0x58) - object alpha control?
|
||||
Bytes 0x17(0x5c) to 0x1f(0x7c) - tilemap alpha control
|
||||
|
||||
Boogie Wings:
|
||||
Bytes 0x00 to 0x0f(0x1f) - object alpha control (if ((pix & 0x100) == 0))
|
||||
Bytes 0x10(0x20) to 0x13(0x26) - another object alpha control?
|
||||
Bytes 0x14(0x28) to 0x19(0x32) - fixed value 0x1c 0x18 0x14 0x10 0x0c 0x08. it controls explosion object's alpha?
|
||||
Bytes 0x1a(0x34) to 0x1f(0x3f) - tilemap alpha control?
|
||||
Boogie Wings:
|
||||
Bytes 0x00 to 0x0f(0x1f) - object alpha control (if ((pix & 0x100) == 0))
|
||||
Bytes 0x10(0x20) to 0x13(0x26) - another object alpha control?
|
||||
Bytes 0x14(0x28) to 0x19(0x32) - fixed value 0x1c 0x18 0x14 0x10 0x0c 0x08. it controls explosion object's alpha?
|
||||
Bytes 0x1a(0x34) to 0x1f(0x3f) - tilemap alpha control?
|
||||
|
||||
0 = opaque, 0x10 = 50% transparent, 0x20 = fully transparent
|
||||
|
||||
@ -41,7 +41,7 @@
|
||||
Byte 0x24(0x90): fadestgreen
|
||||
Byte 0x25(0x94): fadestblue
|
||||
Byte 0x26(0x98): fadetype
|
||||
Byte 0x27(0x9c): unused/unknown
|
||||
Byte 0x27(0x9c): unused/unknown
|
||||
|
||||
The 'ST' value lerps between the 'PT' value and the palette entries. So, if PT==0,
|
||||
then ST ranging from 0 to 255 will cause a fade to black (when ST==255 the palette
|
||||
@ -49,8 +49,8 @@
|
||||
|
||||
'fadetype' - 1100 for multiplicative fade, 1000 for additive
|
||||
|
||||
TODO:
|
||||
additive fade is correct? verify additive fading from real pcb.
|
||||
TODO:
|
||||
additive fade is correct? verify additive fading from real pcb.
|
||||
*/
|
||||
|
||||
|
||||
|
@ -4,9 +4,9 @@
|
||||
|
||||
deco_ace.h
|
||||
|
||||
Data East 99 "ACE" Chip Emulation
|
||||
Data East 99 "ACE" Chip Emulation
|
||||
|
||||
Original source (from deco32.cpp) by Bryan McPhail, Splited by cam900.
|
||||
Original source (from deco32.cpp) by Bryan McPhail, Splited by cam900.
|
||||
|
||||
**************************************************************************/
|
||||
#ifndef MAME_VIDEO_DECO_ACE_H
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user