Hi mamedev,

More deprecat.h cleanup in the core, notably changing the apis for
poly_alloc. I also made cpu_get_index_slow fatalerror on failure 
since no one is checking the return value.

deprecat.h -= 14, Machine -= ~55

~aa
This commit is contained in:
Aaron Giles 2008-12-16 16:32:05 +00:00
parent 5630547540
commit 4f266b6da4
41 changed files with 299 additions and 329 deletions

View File

@ -1,7 +1,6 @@
/* LSI Logic LSI53C810A PCI to SCSI I/O Processor */ /* LSI Logic LSI53C810A PCI to SCSI I/O Processor */
#include "driver.h" #include "driver.h"
#include "deprecat.h"
#include "53c810.h" #include "53c810.h"
#define DMA_MAX_ICOUNT 512 /* Maximum number of DMA Scripts opcodes to run */ #define DMA_MAX_ICOUNT 512 /* Maximum number of DMA Scripts opcodes to run */
@ -46,8 +45,9 @@ static struct {
void (* dma_callback)(UINT32, UINT32, int, int); void (* dma_callback)(UINT32, UINT32, int, int);
} lsi810; } lsi810;
static void (* dma_opcode[256])(void); typedef void (*opcode_handler)(running_machine *machine);
#define OPCODE_HANDLER(name) void name(running_machine *machine)
static opcode_handler dma_opcode[256];
INLINE UINT32 FETCH(void) INLINE UINT32 FETCH(void)
{ {
@ -67,12 +67,12 @@ static UINT32 sign_extend24(UINT32 val)
} }
#endif #endif
static void dmaop_invalid(void) static OPCODE_HANDLER( dmaop_invalid )
{ {
fatalerror("LSI53C810: Invalid SCRIPTS DMA opcode %08X at %08X", lsi810.dcmd, lsi810.dsp); fatalerror("LSI53C810: Invalid SCRIPTS DMA opcode %08X at %08X", lsi810.dcmd, lsi810.dsp);
} }
static void dmaop_move_memory(void) static OPCODE_HANDLER( dmaop_move_memory )
{ {
UINT32 src = FETCH(); UINT32 src = FETCH();
UINT32 dst = FETCH(); UINT32 dst = FETCH();
@ -84,7 +84,7 @@ static void dmaop_move_memory(void)
} }
} }
static void dmaop_interrupt(void) static OPCODE_HANDLER( dmaop_interrupt )
{ {
if(lsi810.dcmd & 0x100000) { if(lsi810.dcmd & 0x100000) {
fatalerror("LSI53C810: INTFLY opcode not implemented"); fatalerror("LSI53C810: INTFLY opcode not implemented");
@ -95,13 +95,13 @@ static void dmaop_interrupt(void)
lsi810.dstat |= 0x4; /* SIR (SCRIPTS Interrupt Instruction Received) */ lsi810.dstat |= 0x4; /* SIR (SCRIPTS Interrupt Instruction Received) */
if(intf->irq_callback != NULL) { if(intf->irq_callback != NULL) {
intf->irq_callback(Machine, 1); intf->irq_callback(machine, 1);
} }
lsi810.dma_icount = 0; lsi810.dma_icount = 0;
lsi810.halted = 1; lsi810.halted = 1;
} }
static void dmaop_block_move(void) static OPCODE_HANDLER( dmaop_block_move )
{ {
UINT32 address; UINT32 address;
UINT32 count; UINT32 count;
@ -145,7 +145,7 @@ static void dmaop_block_move(void)
} }
} }
static void dmaop_select(void) static OPCODE_HANDLER( dmaop_select )
{ {
UINT32 operand; UINT32 operand;
@ -170,7 +170,7 @@ static void dmaop_select(void)
} }
} }
static void dmaop_wait_disconnect(void) static OPCODE_HANDLER( dmaop_wait_disconnect )
{ {
UINT32 operand; UINT32 operand;
@ -188,7 +188,7 @@ static void dmaop_wait_disconnect(void)
} }
} }
static void dmaop_wait_reselect(void) static OPCODE_HANDLER( dmaop_wait_reselect )
{ {
UINT32 operand; UINT32 operand;
@ -206,7 +206,7 @@ static void dmaop_wait_reselect(void)
} }
} }
static void dmaop_set(void) static OPCODE_HANDLER( dmaop_set )
{ {
UINT32 operand; UINT32 operand;
@ -235,7 +235,7 @@ static void dmaop_set(void)
} }
} }
static void dmaop_clear(void) static OPCODE_HANDLER( dmaop_clear )
{ {
UINT32 operand; UINT32 operand;
@ -264,17 +264,17 @@ static void dmaop_clear(void)
} }
} }
static void dmaop_move_from_sfbr(void) static OPCODE_HANDLER( dmaop_move_from_sfbr )
{ {
fatalerror("LSI53C810: dmaop_move_from_sfbr not implemented in target mode"); fatalerror("LSI53C810: dmaop_move_from_sfbr not implemented in target mode");
} }
static void dmaop_move_to_sfbr(void) static OPCODE_HANDLER( dmaop_move_to_sfbr )
{ {
fatalerror("LSI53C810: dmaop_move_to_sfbr not implemented"); fatalerror("LSI53C810: dmaop_move_to_sfbr not implemented");
} }
static void dmaop_read_modify_write(void) static OPCODE_HANDLER( dmaop_read_modify_write )
{ {
fatalerror("LSI53C810: dmaop_read_modify_write not implemented"); fatalerror("LSI53C810: dmaop_read_modify_write not implemented");
} }
@ -366,7 +366,7 @@ static UINT32 scripts_get_jump_dest(void)
return dest; return dest;
} }
static void dmaop_jump(void) static OPCODE_HANDLER( dmaop_jump )
{ {
if (scripts_compute_branch()) if (scripts_compute_branch())
{ {
@ -378,7 +378,7 @@ static void dmaop_jump(void)
} }
} }
static void dmaop_call(void) static OPCODE_HANDLER( dmaop_call )
{ {
if (scripts_compute_branch()) if (scripts_compute_branch())
{ {
@ -394,7 +394,7 @@ static void dmaop_call(void)
} }
} }
static void dmaop_return(void) static OPCODE_HANDLER( dmaop_return )
{ {
// is this correct? return only happens if the condition is true? // is this correct? return only happens if the condition is true?
if (scripts_compute_branch()) if (scripts_compute_branch())
@ -408,19 +408,19 @@ static void dmaop_return(void)
} }
} }
static void dmaop_store(void) static OPCODE_HANDLER( dmaop_store )
{ {
fatalerror("LSI53C810: dmaop_store not implemented"); fatalerror("LSI53C810: dmaop_store not implemented");
} }
static void dmaop_load(void) static OPCODE_HANDLER( dmaop_load )
{ {
fatalerror("LSI53C810: dmaop_load not implemented"); fatalerror("LSI53C810: dmaop_load not implemented");
} }
static void dma_exec(void) static void dma_exec(running_machine *machine)
{ {
lsi810.dma_icount = DMA_MAX_ICOUNT; lsi810.dma_icount = DMA_MAX_ICOUNT;
@ -438,7 +438,7 @@ static void dma_exec(void)
lsi810.dcmd = FETCH(); lsi810.dcmd = FETCH();
op = (lsi810.dcmd >> 24) & 0xff; op = (lsi810.dcmd >> 24) & 0xff;
dma_opcode[op](); dma_opcode[op](machine);
lsi810.dma_icount--; lsi810.dma_icount--;
} }
@ -593,7 +593,7 @@ WRITE8_HANDLER( lsi53c810_reg_w )
lsi810.dsp |= data << 24; lsi810.dsp |= data << 24;
lsi810.halted = 0; lsi810.halted = 0;
if((lsi810.dmode & 0x1) == 0 && !lsi810.halted) { if((lsi810.dmode & 0x1) == 0 && !lsi810.halted) {
dma_exec(); dma_exec(space->machine);
} }
break; break;
case 0x34: /* SCRATCH A */ case 0x34: /* SCRATCH A */
@ -616,7 +616,7 @@ WRITE8_HANDLER( lsi53c810_reg_w )
int op; int op;
lsi810.dcmd = FETCH(); lsi810.dcmd = FETCH();
op = (lsi810.dcmd >> 24) & 0xff; op = (lsi810.dcmd >> 24) & 0xff;
dma_opcode[op](); dma_opcode[op](space->machine);
lsi810.istat |= 0x3; /* DMA interrupt pending */ lsi810.istat |= 0x3; /* DMA interrupt pending */
lsi810.dstat |= 0x8; /* SSI (Single Step Interrupt) */ lsi810.dstat |= 0x8; /* SSI (Single Step Interrupt) */
@ -626,7 +626,7 @@ WRITE8_HANDLER( lsi53c810_reg_w )
} }
else if(lsi810.dcntl & 0x04 && !lsi810.halted) /* manual start DMA */ else if(lsi810.dcntl & 0x04 && !lsi810.halted) /* manual start DMA */
{ {
dma_exec(); dma_exec(space->machine);
} }
break; break;
case 0x40: /* SIEN0 */ case 0x40: /* SIEN0 */
@ -656,7 +656,7 @@ WRITE8_HANDLER( lsi53c810_reg_w )
} }
} }
static void add_opcode(UINT8 op, UINT8 mask, void (* handler)(void)) static void add_opcode(UINT8 op, UINT8 mask, opcode_handler handler)
{ {
int i; int i;
for(i=0; i < 256; i++) { for(i=0; i < 256; i++) {
@ -666,7 +666,7 @@ static void add_opcode(UINT8 op, UINT8 mask, void (* handler)(void))
} }
} }
extern void lsi53c810_init(const struct LSI53C810interface *interface) void lsi53c810_init(const struct LSI53C810interface *interface)
{ {
int i; int i;
@ -705,7 +705,7 @@ extern void lsi53c810_init(const struct LSI53C810interface *interface)
} }
} }
extern void lsi53c810_exit(const struct LSI53C810interface *interface) void lsi53c810_exit(const struct LSI53C810interface *interface)
{ {
int i; int i;

View File

@ -7,7 +7,6 @@
#include <stdarg.h> #include <stdarg.h>
#include "driver.h" #include "driver.h"
#include "deprecat.h"
#include "machine/adc083x.h" #include "machine/adc083x.h"
#define VERBOSE_LEVEL ( 0 ) #define VERBOSE_LEVEL ( 0 )
@ -28,7 +27,7 @@ INLINE void ATTR_PRINTF(3,4) verboselog( running_machine *machine, int n_level,
struct adc083x_chip struct adc083x_chip
{ {
int type; int type;
double (*input_callback)(int input); double (*input_callback)(running_machine *machine, int input);
INT32 CS; INT32 CS;
INT32 CLK; INT32 CLK;
INT32 DI; INT32 DI;
@ -56,7 +55,7 @@ struct adc083x_chip
static struct adc083x_chip adc083x[ MAX_ADC083X_CHIPS ]; static struct adc083x_chip adc083x[ MAX_ADC083X_CHIPS ];
void adc083x_init( running_machine *machine, int chip, int type, double (*input_callback)(int input) ) void adc083x_init( running_machine *machine, int chip, int type, double (*input_callback)(running_machine *machine, int input) )
{ {
struct adc083x_chip *c; struct adc083x_chip *c;
@ -122,9 +121,8 @@ void adc083x_init( running_machine *machine, int chip, int type, double (*input_
state_save_register_item( machine, "adc083x", NULL, chip, c->output ); state_save_register_item( machine, "adc083x", NULL, chip, c->output );
} }
void adc083x_cs_write( int chip, int cs ) void adc083x_cs_write( running_machine *machine, int chip, int cs )
{ {
running_machine *machine = Machine;
struct adc083x_chip *c; struct adc083x_chip *c;
if( chip >= MAX_ADC083X_CHIPS ) if( chip >= MAX_ADC083X_CHIPS )
@ -169,7 +167,7 @@ void adc083x_cs_write( int chip, int cs )
c->CS = cs; c->CS = cs;
} }
static int adc083x_conversion( int chip ) static int adc083x_conversion( running_machine *machine, int chip )
{ {
struct adc083x_chip *c = &adc083x[ chip ]; struct adc083x_chip *c = &adc083x[ chip ];
int result; int result;
@ -177,8 +175,8 @@ static int adc083x_conversion( int chip )
int negative_channel = ADC083X_AGND; int negative_channel = ADC083X_AGND;
double positive = 0; double positive = 0;
double negative = 0; double negative = 0;
double gnd = c->input_callback( ADC083X_AGND ); double gnd = c->input_callback( machine, ADC083X_AGND );
double vref = c->input_callback( ADC083X_VREF ); double vref = c->input_callback( machine, ADC083X_VREF );
switch( c->type ) switch( c->type )
{ {
@ -223,11 +221,11 @@ static int adc083x_conversion( int chip )
if( positive_channel != ADC083X_AGND ) if( positive_channel != ADC083X_AGND )
{ {
positive = c->input_callback( positive_channel ) - gnd; positive = c->input_callback( machine, positive_channel ) - gnd;
} }
if( negative_channel != ADC083X_AGND ) if( negative_channel != ADC083X_AGND )
{ {
negative = c->input_callback( negative_channel ) - gnd; negative = c->input_callback( machine, negative_channel ) - gnd;
} }
result = (int)( ( ( positive - negative ) * 255 ) / vref ); result = (int)( ( ( positive - negative ) * 255 ) / vref );
@ -243,9 +241,8 @@ static int adc083x_conversion( int chip )
return result; return result;
} }
void adc083x_clk_write( int chip, int clk ) void adc083x_clk_write( running_machine *machine, int chip, int clk )
{ {
running_machine *machine = Machine;
struct adc083x_chip *c; struct adc083x_chip *c;
if( chip >= MAX_ADC083X_CHIPS ) if( chip >= MAX_ADC083X_CHIPS )
@ -343,7 +340,7 @@ void adc083x_clk_write( int chip, int clk )
{ {
case STATE_MUX_SETTLE: case STATE_MUX_SETTLE:
verboselog( machine, 1, "adc083x %d mux settle\n", chip ); verboselog( machine, 1, "adc083x %d mux settle\n", chip );
c->output = adc083x_conversion( chip ); c->output = adc083x_conversion( machine, chip );
c->state = STATE_OUTPUT_MSB_FIRST; c->state = STATE_OUTPUT_MSB_FIRST;
c->bit = 7; c->bit = 7;
if( c->type == ADC0834 || c->type == ADC0838 ) if( c->type == ADC0834 || c->type == ADC0838 )
@ -388,9 +385,8 @@ void adc083x_clk_write( int chip, int clk )
c->CLK = clk; c->CLK = clk;
} }
void adc083x_di_write( int chip, int di ) void adc083x_di_write( running_machine *machine, int chip, int di )
{ {
running_machine *machine = Machine;
struct adc083x_chip *c; struct adc083x_chip *c;
if( chip >= MAX_ADC083X_CHIPS ) if( chip >= MAX_ADC083X_CHIPS )
@ -409,9 +405,8 @@ void adc083x_di_write( int chip, int di )
c->DI = di; c->DI = di;
} }
void adc083x_se_write( int chip, int se ) void adc083x_se_write( running_machine *machine, int chip, int se )
{ {
running_machine *machine = Machine;
struct adc083x_chip *c; struct adc083x_chip *c;
if( chip >= MAX_ADC083X_CHIPS ) if( chip >= MAX_ADC083X_CHIPS )
@ -430,9 +425,8 @@ void adc083x_se_write( int chip, int se )
c->SE = se; c->SE = se;
} }
int adc083x_sars_read( int chip ) int adc083x_sars_read( running_machine *machine, int chip )
{ {
running_machine *machine = Machine;
struct adc083x_chip *c; struct adc083x_chip *c;
if( chip >= MAX_ADC083X_CHIPS ) if( chip >= MAX_ADC083X_CHIPS )
@ -447,9 +441,8 @@ int adc083x_sars_read( int chip )
return c->SARS; return c->SARS;
} }
int adc083x_do_read( int chip ) int adc083x_do_read( running_machine *machine, int chip )
{ {
running_machine *machine = Machine;
struct adc083x_chip *c; struct adc083x_chip *c;
if( chip >= MAX_ADC083X_CHIPS ) if( chip >= MAX_ADC083X_CHIPS )

View File

@ -27,12 +27,12 @@
#define ADC0834 ( 2 ) #define ADC0834 ( 2 )
#define ADC0838 ( 3 ) #define ADC0838 ( 3 )
void adc083x_init( running_machine *machine, int chip, int type, double (*input_callback)( int input ) ); void adc083x_init( running_machine *machine, int chip, int type, double (*input_callback)( running_machine *machine, int input ) );
extern void adc083x_cs_write( int chip, int cs ); extern void adc083x_cs_write( running_machine *machine, int chip, int cs );
extern void adc083x_clk_write( int chip, int clk ); extern void adc083x_clk_write( running_machine *machine, int chip, int clk );
extern void adc083x_di_write( int chip, int di ); extern void adc083x_di_write( running_machine *machine, int chip, int di );
extern void adc083x_se_write( int chip, int se ); extern void adc083x_se_write( running_machine *machine, int chip, int se );
extern int adc083x_sars_read( int chip ); extern int adc083x_sars_read( running_machine *machine, int chip );
extern int adc083x_do_read( int chip ); extern int adc083x_do_read( running_machine *machine, int chip );
#endif #endif

View File

@ -8,7 +8,6 @@
#include <stdarg.h> #include <stdarg.h>
#include "driver.h" #include "driver.h"
#include "deprecat.h"
#include "state.h" #include "state.h"
#include "machine/ds2401.h" #include "machine/ds2401.h"
@ -160,9 +159,8 @@ void ds2401_init( running_machine *machine, int which, const UINT8 *data )
c->reset_timer = timer_alloc(machine, ds2401_reset , NULL); c->reset_timer = timer_alloc(machine, ds2401_reset , NULL);
} }
void ds2401_write( int which, int data ) void ds2401_write( running_machine *machine, int which, int data )
{ {
running_machine *machine = Machine;
struct ds2401_chip *c = &ds2401[ which ]; struct ds2401_chip *c = &ds2401[ which ];
verboselog( machine, 1, "ds2401_write( %d, %d )\n", which, data ); verboselog( machine, 1, "ds2401_write( %d, %d )\n", which, data );
@ -214,11 +212,11 @@ void ds2401_write( int which, int data )
c->rx = data; c->rx = data;
} }
int ds2401_read( int which ) int ds2401_read( running_machine *machine, int which )
{ {
struct ds2401_chip *c = &ds2401[ which ]; struct ds2401_chip *c = &ds2401[ which ];
verboselog( Machine, 2, "ds2401_read( %d ) %d\n", which, c->tx & c->rx ); verboselog( machine, 2, "ds2401_read( %d ) %d\n", which, c->tx & c->rx );
return c->tx & c->rx; return c->tx & c->rx;
} }

View File

@ -12,7 +12,7 @@
#define DS2401_MAXCHIP ( 3 ) #define DS2401_MAXCHIP ( 3 )
extern void ds2401_init( running_machine *machine, int which, const UINT8 *data ); extern void ds2401_init( running_machine *machine, int which, const UINT8 *data );
extern void ds2401_write( int which, int data ); extern void ds2401_write( running_machine *machine, int which, int data );
extern int ds2401_read( int which ); extern int ds2401_read( running_machine *machine, int which );
#endif #endif

View File

@ -21,7 +21,6 @@ Up to 4096 bytes can be addressed.
*/ */
#include "driver.h" #include "driver.h"
#include "deprecat.h"
#include "machine/i2cmem.h" #include "machine/i2cmem.h"
#define VERBOSE_LEVEL ( 0 ) #define VERBOSE_LEVEL ( 0 )
@ -147,9 +146,8 @@ static int data_offset( struct i2cmem_chip *c )
return ( ( ( c->devsel << 7 ) & 0xff00 ) | ( c->byteaddr & 0xff ) ) & ( c->data_size - 1 ); return ( ( ( c->devsel << 7 ) & 0xff00 ) | ( c->byteaddr & 0xff ) ) & ( c->data_size - 1 );
} }
void i2cmem_write( int chip, int line, int data ) void i2cmem_write( running_machine *machine, int chip, int line, int data )
{ {
running_machine *machine = Machine;
struct i2cmem_chip *c; struct i2cmem_chip *c;
if( chip >= I2CMEM_MAXCHIP ) if( chip >= I2CMEM_MAXCHIP )
@ -382,9 +380,8 @@ void i2cmem_write( int chip, int line, int data )
} }
} }
int i2cmem_read( int chip, int line ) int i2cmem_read( running_machine *machine, int chip, int line )
{ {
running_machine *machine = Machine;
struct i2cmem_chip *c; struct i2cmem_chip *c;
if( chip >= I2CMEM_MAXCHIP ) if( chip >= I2CMEM_MAXCHIP )

View File

@ -20,8 +20,8 @@ I2C Memory
#define I2CMEM_SLAVE_ADDRESS_ALT ( 0xb0 ) #define I2CMEM_SLAVE_ADDRESS_ALT ( 0xb0 )
extern void i2cmem_init( running_machine *machine, int chip, int slave_address, int page_size, int data_size, unsigned char *data ); extern void i2cmem_init( running_machine *machine, int chip, int slave_address, int page_size, int data_size, unsigned char *data );
extern void i2cmem_write( int chip, int line, int data ); extern void i2cmem_write( running_machine *machine, int chip, int line, int data );
extern int i2cmem_read( int chip, int line ); extern int i2cmem_read( running_machine *machine, int chip, int line );
extern NVRAM_HANDLER( i2cmem_0 ); extern NVRAM_HANDLER( i2cmem_0 );
#endif #endif

View File

@ -12,7 +12,6 @@
*/ */
#include "driver.h" #include "driver.h"
#include "deprecat.h"
#include "state.h" #include "state.h"
#include "wd33c93.h" #include "wd33c93.h"
@ -170,7 +169,8 @@ static const struct WD33C93interface *intf;
#define SRCID_ER 0x80 #define SRCID_ER 0x80
/* command handler definition */ /* command handler definition */
typedef void (*cmd_handler)(void); typedef void (*cmd_handler)(running_machine *machine);
#define CMD_HANDLER(name) void name(running_machine *machine)
#define TEMP_INPUT_LEN 65536 #define TEMP_INPUT_LEN 65536
#define FIFO_SIZE 12 #define FIFO_SIZE 12
@ -292,15 +292,15 @@ static void wd33c93_complete_cmd( UINT8 status )
} }
/* command handlers */ /* command handlers */
static void wd33c93_invalid_cmd( void ) static CMD_HANDLER( wd33c93_invalid_cmd )
{ {
logerror( "%s:Unknown/Unimplemented SCSI controller command: %02x\n", cpuexec_describe_context(Machine), scsi_data.regs[WD_COMMAND] ); logerror( "%s:Unknown/Unimplemented SCSI controller command: %02x\n", cpuexec_describe_context(machine), scsi_data.regs[WD_COMMAND] );
/* complete the command */ /* complete the command */
wd33c93_complete_cmd( CSR_INVALID ); wd33c93_complete_cmd( CSR_INVALID );
} }
static void wd33c93_reset_cmd( void ) static CMD_HANDLER( wd33c93_reset_cmd )
{ {
int advanced = 0; int advanced = 0;
@ -317,19 +317,19 @@ static void wd33c93_reset_cmd( void )
wd33c93_complete_cmd(advanced ? CSR_RESET_AF : CSR_RESET); wd33c93_complete_cmd(advanced ? CSR_RESET_AF : CSR_RESET);
} }
static void wd33c93_abort_cmd( void ) static CMD_HANDLER( wd33c93_abort_cmd )
{ {
/* complete the command */ /* complete the command */
wd33c93_complete_cmd(CSR_ABORT); wd33c93_complete_cmd(CSR_ABORT);
} }
static void wd33c93_disconnect_cmd( void ) static CMD_HANDLER( wd33c93_disconnect_cmd )
{ {
/* complete the command */ /* complete the command */
scsi_data.regs[WD_AUXILIARY_STATUS] &= ~(ASR_CIP | ASR_BSY); scsi_data.regs[WD_AUXILIARY_STATUS] &= ~(ASR_CIP | ASR_BSY);
} }
static void wd33c93_select_cmd( void ) static CMD_HANDLER( wd33c93_select_cmd )
{ {
UINT8 unit = wd33c93_getunit(); UINT8 unit = wd33c93_getunit();
UINT8 newstatus; UINT8 newstatus;
@ -353,7 +353,7 @@ static void wd33c93_select_cmd( void )
} }
/* queue up a service request out in the future */ /* queue up a service request out in the future */
timer_set( Machine, ATTOTIME_IN_USEC(50), NULL, 0, wd33c93_service_request ); timer_set( machine, ATTOTIME_IN_USEC(50), NULL, 0, wd33c93_service_request );
} }
else else
{ {
@ -365,7 +365,7 @@ static void wd33c93_select_cmd( void )
wd33c93_complete_cmd(newstatus); wd33c93_complete_cmd(newstatus);
} }
static void wd33c93_selectxfer_cmd( void ) static CMD_HANDLER( wd33c93_selectxfer_cmd )
{ {
UINT8 unit = wd33c93_getunit(); UINT8 unit = wd33c93_getunit();
UINT8 newstatus; UINT8 newstatus;
@ -425,7 +425,7 @@ static void wd33c93_selectxfer_cmd( void )
scsi_data.busphase = PHS_MESS_IN; scsi_data.busphase = PHS_MESS_IN;
/* queue up a service request out in the future */ /* queue up a service request out in the future */
timer_set( Machine, ATTOTIME_IN_MSEC(50), NULL, 0, wd33c93_service_request ); timer_set( machine, ATTOTIME_IN_MSEC(50), NULL, 0, wd33c93_service_request );
} }
} }
else else
@ -440,7 +440,7 @@ static void wd33c93_selectxfer_cmd( void )
wd33c93_complete_cmd(newstatus); wd33c93_complete_cmd(newstatus);
} }
static void wd33c93_negate_ack( void ) static CMD_HANDLER( wd33c93_negate_ack )
{ {
logerror( "WD33C93: ACK Negated\n" ); logerror( "WD33C93: ACK Negated\n" );
@ -448,14 +448,14 @@ static void wd33c93_negate_ack( void )
scsi_data.regs[WD_AUXILIARY_STATUS] &= ~(ASR_CIP | ASR_BSY); scsi_data.regs[WD_AUXILIARY_STATUS] &= ~(ASR_CIP | ASR_BSY);
} }
static void wd33c93_xferinfo_cmd( void ) static CMD_HANDLER( wd33c93_xferinfo_cmd )
{ {
/* make the buffer available right away */ /* make the buffer available right away */
scsi_data.regs[WD_AUXILIARY_STATUS] |= ASR_DBR; scsi_data.regs[WD_AUXILIARY_STATUS] |= ASR_DBR;
scsi_data.regs[WD_AUXILIARY_STATUS] |= ASR_CIP; scsi_data.regs[WD_AUXILIARY_STATUS] |= ASR_CIP;
/* the command will be completed once the data is transferred */ /* the command will be completed once the data is transferred */
timer_set( Machine, ATTOTIME_IN_MSEC(1), NULL, 0, wd33c93_deassert_cip ); timer_set( machine, ATTOTIME_IN_MSEC(1), NULL, 0, wd33c93_deassert_cip );
} }
/* Command handlers */ /* Command handlers */
@ -498,7 +498,7 @@ static const cmd_handler wd33c93_cmds[0x22] =
}; };
/* Handle pending commands */ /* Handle pending commands */
static void wd33c93_command( void ) static void wd33c93_command( running_machine *machine )
{ {
/* get the command */ /* get the command */
UINT8 cmd = scsi_data.regs[WD_COMMAND]; UINT8 cmd = scsi_data.regs[WD_COMMAND];
@ -506,12 +506,12 @@ static void wd33c93_command( void )
/* check if its within valid bounds */ /* check if its within valid bounds */
if ( (cmd & 0x7F) > WD_CMD_TRANSFER_PAD ) if ( (cmd & 0x7F) > WD_CMD_TRANSFER_PAD )
{ {
wd33c93_invalid_cmd(); wd33c93_invalid_cmd(machine);
return; return;
} }
/* call the command handler */ /* call the command handler */
(*wd33c93_cmds[cmd & 0x7F])(); (*wd33c93_cmds[cmd & 0x7F])(machine);
} }
WRITE8_HANDLER(wd33c93_w) WRITE8_HANDLER(wd33c93_w)
@ -541,7 +541,7 @@ WRITE8_HANDLER(wd33c93_w)
scsi_data.regs[WD_AUXILIARY_STATUS] |= ASR_CIP; scsi_data.regs[WD_AUXILIARY_STATUS] |= ASR_CIP;
/* process the command */ /* process the command */
wd33c93_command(); wd33c93_command(space->machine);
} }
else if ( scsi_data.sasr == WD_CDB_1 ) else if ( scsi_data.sasr == WD_CDB_1 )
{ {

View File

@ -12,7 +12,6 @@
*/ */
#include "driver.h" #include "driver.h"
#include "deprecat.h"
#include "machine/x76f041.h" #include "machine/x76f041.h"
#define VERBOSE_LEVEL ( 0 ) #define VERBOSE_LEVEL ( 0 )
@ -166,9 +165,8 @@ void x76f041_init( running_machine *machine, int chip, UINT8 *data )
state_save_register_item_pointer( machine, "x76f041", NULL, chip, c->data, SIZE_DATA ); state_save_register_item_pointer( machine, "x76f041", NULL, chip, c->data, SIZE_DATA );
} }
void x76f041_cs_write( int chip, int cs ) void x76f041_cs_write( running_machine *machine, int chip, int cs )
{ {
running_machine *machine = Machine;
struct x76f041_chip *c; struct x76f041_chip *c;
if( chip >= X76F041_MAXCHIP ) if( chip >= X76F041_MAXCHIP )
@ -198,9 +196,8 @@ void x76f041_cs_write( int chip, int cs )
c->cs = cs; c->cs = cs;
} }
void x76f041_rst_write( int chip, int rst ) void x76f041_rst_write( running_machine *machine, int chip, int rst )
{ {
running_machine *machine = Machine;
struct x76f041_chip *c; struct x76f041_chip *c;
if( chip >= X76F041_MAXCHIP ) if( chip >= X76F041_MAXCHIP )
@ -285,9 +282,8 @@ static void x76f041_password_ok( struct x76f041_chip *c )
} }
} }
static void x76f041_load_address( int chip ) static void x76f041_load_address( running_machine *machine, int chip )
{ {
running_machine *machine = Machine;
/* todo: handle other bcr bits */ /* todo: handle other bcr bits */
struct x76f041_chip *c = &x76f041[ chip ]; struct x76f041_chip *c = &x76f041[ chip ];
int bcr; int bcr;
@ -340,9 +336,8 @@ static int x76f041_data_offset( struct x76f041_chip *c )
return ( block_offset & 0x180 ) | ( ( block_offset + c->byte ) & 0x7f ); return ( block_offset & 0x180 ) | ( ( block_offset + c->byte ) & 0x7f );
} }
void x76f041_scl_write( int chip, int scl ) void x76f041_scl_write( running_machine *machine, int chip, int scl )
{ {
running_machine *machine = Machine;
struct x76f041_chip *c; struct x76f041_chip *c;
if( chip >= X76F041_MAXCHIP ) if( chip >= X76F041_MAXCHIP )
@ -411,7 +406,7 @@ void x76f041_scl_write( int chip, int scl )
c->state = STATE_LOAD_ADDRESS; c->state = STATE_LOAD_ADDRESS;
break; break;
case STATE_LOAD_ADDRESS: case STATE_LOAD_ADDRESS:
x76f041_load_address( chip ); x76f041_load_address( machine, chip );
break; break;
case STATE_LOAD_PASSWORD: case STATE_LOAD_PASSWORD:
verboselog( machine, 1, "x76f041(%d) -> password: %02x\n", chip, c->shift ); verboselog( machine, 1, "x76f041(%d) -> password: %02x\n", chip, c->shift );
@ -512,9 +507,8 @@ void x76f041_scl_write( int chip, int scl )
c->scl = scl; c->scl = scl;
} }
void x76f041_sda_write( int chip, int sda ) void x76f041_sda_write( running_machine *machine, int chip, int sda )
{ {
running_machine *machine = Machine;
struct x76f041_chip *c; struct x76f041_chip *c;
if( chip >= X76F041_MAXCHIP ) if( chip >= X76F041_MAXCHIP )
@ -567,9 +561,8 @@ void x76f041_sda_write( int chip, int sda )
c->sdaw = sda; c->sdaw = sda;
} }
int x76f041_sda_read( int chip ) int x76f041_sda_read( running_machine *machine, int chip )
{ {
running_machine *machine = Machine;
struct x76f041_chip *c; struct x76f041_chip *c;
if( chip >= X76F041_MAXCHIP ) if( chip >= X76F041_MAXCHIP )
@ -589,7 +582,7 @@ int x76f041_sda_read( int chip )
return c->sdar; return c->sdar;
} }
static void nvram_handler_x76f041( int chip, running_machine *machine, mame_file *file, int read_or_write ) static void nvram_handler_x76f041( running_machine *machine, mame_file *file, int read_or_write, int chip )
{ {
struct x76f041_chip *c; struct x76f041_chip *c;
@ -619,5 +612,5 @@ static void nvram_handler_x76f041( int chip, running_machine *machine, mame_file
} }
} }
NVRAM_HANDLER( x76f041_0 ) { nvram_handler_x76f041( 0, machine, file, read_or_write ); } NVRAM_HANDLER( x76f041_0 ) { nvram_handler_x76f041( machine, file, read_or_write, 0 ); }
NVRAM_HANDLER( x76f041_1 ) { nvram_handler_x76f041( 1, machine, file, read_or_write ); } NVRAM_HANDLER( x76f041_1 ) { nvram_handler_x76f041( machine, file, read_or_write, 1 ); }

View File

@ -10,11 +10,11 @@
#define X76F041_MAXCHIP ( 2 ) #define X76F041_MAXCHIP ( 2 )
extern void x76f041_init( running_machine *machine, int chip, UINT8 *data ); extern void x76f041_init( running_machine *machine, int chip, UINT8 *data );
extern void x76f041_cs_write( int chip, int cs ); extern void x76f041_cs_write( running_machine *machine, int chip, int cs );
extern void x76f041_rst_write( int chip, int rst ); extern void x76f041_rst_write( running_machine *machine, int chip, int rst );
extern void x76f041_scl_write( int chip, int scl ); extern void x76f041_scl_write( running_machine *machine, int chip, int scl );
extern void x76f041_sda_write( int chip, int sda ); extern void x76f041_sda_write( running_machine *machine, int chip, int sda );
extern int x76f041_sda_read( int chip ); extern int x76f041_sda_read( running_machine *machine, int chip );
extern NVRAM_HANDLER( x76f041_0 ); extern NVRAM_HANDLER( x76f041_0 );
extern NVRAM_HANDLER( x76f041_1 ); extern NVRAM_HANDLER( x76f041_1 );

View File

@ -10,7 +10,6 @@
*/ */
#include "driver.h" #include "driver.h"
#include "deprecat.h"
#include "machine/x76f100.h" #include "machine/x76f100.h"
#define VERBOSE_LEVEL ( 0 ) #define VERBOSE_LEVEL ( 0 )
@ -127,9 +126,8 @@ void x76f100_init( running_machine *machine, int chip, UINT8 *data )
state_save_register_item_pointer( machine, "x76f100", NULL, chip, c->data, SIZE_DATA ); state_save_register_item_pointer( machine, "x76f100", NULL, chip, c->data, SIZE_DATA );
} }
void x76f100_cs_write( int chip, int cs ) void x76f100_cs_write( running_machine *machine, int chip, int cs )
{ {
running_machine *machine = Machine;
struct x76f100_chip *c; struct x76f100_chip *c;
if( chip >= X76F100_MAXCHIP ) if( chip >= X76F100_MAXCHIP )
@ -159,9 +157,8 @@ void x76f100_cs_write( int chip, int cs )
c->cs = cs; c->cs = cs;
} }
void x76f100_rst_write( int chip, int rst ) void x76f100_rst_write( running_machine *machine, int chip, int rst )
{ {
running_machine *machine = Machine;
struct x76f100_chip *c; struct x76f100_chip *c;
if( chip >= X76F100_MAXCHIP ) if( chip >= X76F100_MAXCHIP )
@ -219,9 +216,8 @@ static int x76f100_data_offset( struct x76f100_chip *c )
return ( block_offset * SIZE_WRITE_BUFFER ) + c->byte; return ( block_offset * SIZE_WRITE_BUFFER ) + c->byte;
} }
void x76f100_scl_write( int chip, int scl ) void x76f100_scl_write( running_machine *machine, int chip, int scl )
{ {
running_machine *machine = Machine;
struct x76f100_chip *c; struct x76f100_chip *c;
if( chip >= X76F100_MAXCHIP ) if( chip >= X76F100_MAXCHIP )
@ -385,9 +381,8 @@ void x76f100_scl_write( int chip, int scl )
c->scl = scl; c->scl = scl;
} }
void x76f100_sda_write( int chip, int sda ) void x76f100_sda_write( running_machine *machine, int chip, int sda )
{ {
running_machine *machine = Machine;
struct x76f100_chip *c; struct x76f100_chip *c;
if( chip >= X76F100_MAXCHIP ) if( chip >= X76F100_MAXCHIP )
@ -444,9 +439,8 @@ void x76f100_sda_write( int chip, int sda )
c->sdaw = sda; c->sdaw = sda;
} }
int x76f100_sda_read( int chip ) int x76f100_sda_read( running_machine *machine, int chip )
{ {
running_machine *machine = Machine;
struct x76f100_chip *c; struct x76f100_chip *c;
if( chip >= X76F100_MAXCHIP ) if( chip >= X76F100_MAXCHIP )
@ -466,7 +460,7 @@ int x76f100_sda_read( int chip )
return c->sdar; return c->sdar;
} }
static void nvram_handler_x76f100( int chip, running_machine *machine, mame_file *file, int read_or_write ) static void nvram_handler_x76f100( running_machine *machine, mame_file *file, int read_or_write, int chip )
{ {
struct x76f100_chip *c; struct x76f100_chip *c;
@ -492,5 +486,5 @@ static void nvram_handler_x76f100( int chip, running_machine *machine, mame_file
} }
} }
NVRAM_HANDLER( x76f100_0 ) { nvram_handler_x76f100( 0, machine, file, read_or_write ); } NVRAM_HANDLER( x76f100_0 ) { nvram_handler_x76f100( machine, file, read_or_write, 0 ); }
NVRAM_HANDLER( x76f100_1 ) { nvram_handler_x76f100( 1, machine, file, read_or_write ); } NVRAM_HANDLER( x76f100_1 ) { nvram_handler_x76f100( machine, file, read_or_write, 1 ); }

View File

@ -10,11 +10,11 @@
#define X76F100_MAXCHIP ( 2 ) #define X76F100_MAXCHIP ( 2 )
extern void x76f100_init( running_machine *machine, int chip, UINT8 *data ); extern void x76f100_init( running_machine *machine, int chip, UINT8 *data );
extern void x76f100_cs_write( int chip, int cs ); extern void x76f100_cs_write( running_machine *machine, int chip, int cs );
extern void x76f100_rst_write( int chip, int rst ); extern void x76f100_rst_write( running_machine *machine, int chip, int rst );
extern void x76f100_scl_write( int chip, int scl ); extern void x76f100_scl_write( running_machine *machine, int chip, int scl );
extern void x76f100_sda_write( int chip, int sda ); extern void x76f100_sda_write( running_machine *machine, int chip, int sda );
extern int x76f100_sda_read( int chip ); extern int x76f100_sda_read( running_machine *machine, int chip );
extern NVRAM_HANDLER( x76f100_0 ); extern NVRAM_HANDLER( x76f100_0 );
extern NVRAM_HANDLER( x76f100_1 ); extern NVRAM_HANDLER( x76f100_1 );

View File

@ -7,7 +7,6 @@
***************************************************************************/ ***************************************************************************/
#include "poly.h" #include "poly.h"
#include "deprecat.h"
#include "eminline.h" #include "eminline.h"
#include "mame.h" #include "mame.h"
#include "state.h" #include "state.h"
@ -329,7 +328,7 @@ INLINE polygon_info *allocate_polygon(poly_manager *poly, int miny, int maxy)
manager manager
-------------------------------------------------*/ -------------------------------------------------*/
poly_manager *poly_alloc(int max_polys, size_t extra_data_size, UINT8 flags) poly_manager *poly_alloc(running_machine *machine, int max_polys, size_t extra_data_size, UINT8 flags)
{ {
poly_manager *poly; poly_manager *poly;
@ -361,7 +360,7 @@ poly_manager *poly_alloc(int max_polys, size_t extra_data_size, UINT8 flags)
poly->queue = osd_work_queue_alloc(WORK_QUEUE_FLAG_MULTI | WORK_QUEUE_FLAG_HIGH_FREQ); poly->queue = osd_work_queue_alloc(WORK_QUEUE_FLAG_MULTI | WORK_QUEUE_FLAG_HIGH_FREQ);
/* request a pre-save callback for synchronization */ /* request a pre-save callback for synchronization */
state_save_register_presave(Machine, poly_state_presave, poly); state_save_register_presave(machine, poly_state_presave, poly);
return poly; return poly;
} }

View File

@ -102,7 +102,7 @@ typedef void (*poly_draw_scanline_func)(void *dest, INT32 scanline, const poly_e
/* ----- initialization/teardown ----- */ /* ----- initialization/teardown ----- */
/* allocate a new poly manager that can render triangles */ /* allocate a new poly manager that can render triangles */
poly_manager *poly_alloc(int max_polys, size_t extra_data_size, UINT8 flags); poly_manager *poly_alloc(running_machine *machine, int max_polys, size_t extra_data_size, UINT8 flags);
/* free a poly manager */ /* free a poly manager */
void poly_free(poly_manager *poly); void poly_free(poly_manager *poly);

View File

@ -15,7 +15,6 @@
*/ */
#include "driver.h" #include "driver.h"
#include "deprecat.h"
#include "v9938.h" #include "v9938.h"
#define VERBOSE 0 #define VERBOSE 0
@ -94,13 +93,13 @@ static const char *const v9938_modes[] = {
"GRAPHIC 4", "GRAPHIC 5", "GRAPHIC 6", "GRAPHIC 7", "TEXT 2", "GRAPHIC 4", "GRAPHIC 5", "GRAPHIC 6", "GRAPHIC 7", "TEXT 2",
"UNKNOWN" }; "UNKNOWN" };
static void v9938_register_write (int reg, int data); static void v9938_register_write (running_machine *machine, int reg, int data);
static void v9938_update_command (void); static void v9938_update_command (void);
static void v9938_cpu_to_vdp (UINT8 V); static void v9938_cpu_to_vdp (UINT8 V);
static UINT8 v9938_command_unit_w (UINT8 Op); static UINT8 v9938_command_unit_w (UINT8 Op);
static UINT8 v9938_vdp_to_cpu (void); static UINT8 v9938_vdp_to_cpu (void);
static void v9938_set_mode (void); static void v9938_set_mode (void);
static void v9938_refresh_line (bitmap_t *bmp, int line); static void v9938_refresh_line (running_machine *machine, bitmap_t *bmp, int line);
/*************************************************************************** /***************************************************************************
@ -435,14 +434,14 @@ READ8_HANDLER (v9938_1_vram_r)
return v9938_vram_r(); return v9938_vram_r();
} }
static void v9938_command_w(UINT8 data) static void v9938_command_w(running_machine *machine, UINT8 data)
{ {
if (vdp->cmd_write_first) if (vdp->cmd_write_first)
{ {
if (data & 0x80) if (data & 0x80)
{ {
if (!(data & 0x40)) if (!(data & 0x40))
v9938_register_write (data & 0x3f, vdp->cmd_write); v9938_register_write (machine, data & 0x3f, vdp->cmd_write);
} }
else else
{ {
@ -463,13 +462,13 @@ static void v9938_command_w(UINT8 data)
WRITE8_HANDLER (v9938_0_command_w) WRITE8_HANDLER (v9938_0_command_w)
{ {
vdp = &vdps[0]; vdp = &vdps[0];
v9938_command_w(data); v9938_command_w(space->machine, data);
} }
WRITE8_HANDLER (v9938_1_command_w) WRITE8_HANDLER (v9938_1_command_w)
{ {
vdp = &vdps[1]; vdp = &vdps[1];
v9938_command_w(data); v9938_command_w(space->machine, data);
} }
/*************************************************************************** /***************************************************************************
@ -582,7 +581,7 @@ void v9938_reset (int which)
vdp->scanline = 0; vdp->scanline = 0;
} }
static void v9938_check_int (void) static void v9938_check_int (running_machine *machine)
{ {
UINT8 n; UINT8 n;
@ -605,7 +604,7 @@ static void v9938_check_int (void)
** called; because of this Mr. Ghost, Xevious and SD Snatcher don't ** called; because of this Mr. Ghost, Xevious and SD Snatcher don't
** run. As a patch it's called every scanline ** run. As a patch it's called every scanline
*/ */
vdp->INTCallback (Machine, n); vdp->INTCallback (machine, n);
} }
void v9938_set_sprite_limit (int which, int i) void v9938_set_sprite_limit (int which, int i)
@ -634,13 +633,13 @@ void v9938_set_resolution (int which, int i)
***************************************************************************/ ***************************************************************************/
static void v9938_register_w(UINT8 data) static void v9938_register_w(running_machine *machine, UINT8 data)
{ {
int reg; int reg;
reg = vdp->contReg[17] & 0x3f; reg = vdp->contReg[17] & 0x3f;
if (reg != 17) if (reg != 17)
v9938_register_write (reg, data); /* true ? */ v9938_register_write (machine, reg, data); /* true ? */
if (!(vdp->contReg[17] & 0x80)) if (!(vdp->contReg[17] & 0x80))
vdp->contReg[17] = (vdp->contReg[17] + 1) & 0x3f; vdp->contReg[17] = (vdp->contReg[17] + 1) & 0x3f;
@ -649,16 +648,16 @@ static void v9938_register_w(UINT8 data)
WRITE8_HANDLER (v9938_0_register_w) WRITE8_HANDLER (v9938_0_register_w)
{ {
vdp = &vdps[0]; vdp = &vdps[0];
v9938_register_w(data); v9938_register_w(space->machine, data);
} }
WRITE8_HANDLER (v9938_1_register_w) WRITE8_HANDLER (v9938_1_register_w)
{ {
vdp = &vdps[1]; vdp = &vdps[1];
v9938_register_w(data); v9938_register_w(space->machine, data);
} }
static void v9938_register_write (int reg, int data) static void v9938_register_write (running_machine *machine, int reg, int data)
{ {
static UINT8 const reg_mask[] = static UINT8 const reg_mask[] =
{ {
@ -689,7 +688,7 @@ static void v9938_register_write (int reg, int data)
case 1: case 1:
vdp->contReg[reg] = data; vdp->contReg[reg] = data;
v9938_set_mode (); v9938_set_mode ();
v9938_check_int (); v9938_check_int (machine);
LOG(("V9938: mode = %s\n", v9938_modes[vdp->mode])); LOG(("V9938: mode = %s\n", v9938_modes[vdp->mode]));
break; break;
@ -812,7 +811,7 @@ static void v9938_register_write (int reg, int data)
} }
LOG(("V9938: Read %02x from S#%d\n", ret, reg)); LOG(("V9938: Read %02x from S#%d\n", ret, reg));
v9938_check_int (); v9938_check_int (machine);
return ret; return ret;
} }
@ -1212,9 +1211,9 @@ static void v9938_set_mode (void)
vdp->mode = i; vdp->mode = i;
} }
static void v9938_refresh_16 (bitmap_t *bmp, int line) static void v9938_refresh_16 (running_machine *machine, bitmap_t *bmp, int line)
{ {
const pen_t *pens = Machine->pens; const pen_t *pens = machine->pens;
int i, double_lines; int i, double_lines;
UINT8 col[256]; UINT8 col[256];
UINT16 *ln, *ln2 = NULL; UINT16 *ln, *ln2 = NULL;
@ -1272,7 +1271,7 @@ static void v9938_refresh_16 (bitmap_t *bmp, int line)
memcpy (ln2, ln, (512 + 32) * 2); memcpy (ln2, ln, (512 + 32) * 2);
} }
static void v9938_refresh_line (bitmap_t *bmp, int line) static void v9938_refresh_line (running_machine *machine, bitmap_t *bmp, int line)
{ {
int ind16, ind256; int ind16, ind256;
@ -1285,7 +1284,7 @@ static void v9938_refresh_line (bitmap_t *bmp, int line)
vdp->pal_ind256[0] = vdp->pal_ind256[vdp->contReg[7]]; vdp->pal_ind256[0] = vdp->pal_ind256[vdp->contReg[7]];
} }
v9938_refresh_16 (bmp, line); v9938_refresh_16 (machine, bmp, line);
if ( !(vdp->contReg[8] & 0x20) && (vdp->mode != V9938_MODE_GRAPHIC5) ) if ( !(vdp->contReg[8] & 0x20) && (vdp->mode != V9938_MODE_GRAPHIC5) )
{ {
@ -1459,7 +1458,7 @@ static void v9938_interrupt_start_vblank (void)
vdp->size_now = -1; vdp->size_now = -1;
} }
int v9938_interrupt (int which) int v9938_interrupt (running_machine *machine, int which)
{ {
int scanline, max, pal, scanline_start; int scanline, max, pal, scanline_start;
@ -1492,7 +1491,7 @@ int v9938_interrupt (int which)
else else
if ( !(vdp->contReg[0] & 0x10) ) vdp->statReg[1] &= 0xfe; if ( !(vdp->contReg[0] & 0x10) ) vdp->statReg[1] &= 0xfe;
v9938_check_int (); v9938_check_int (machine);
/* check for start of vblank */ /* check for start of vblank */
if ((pal && (vdp->scanline == 310)) || if ((pal && (vdp->scanline == 310)) ||
@ -1504,7 +1503,7 @@ int v9938_interrupt (int which)
{ {
scanline = (vdp->scanline - scanline_start) & 255; scanline = (vdp->scanline - scanline_start) & 255;
v9938_refresh_line (vdp->bitmap, scanline); v9938_refresh_line (machine, vdp->bitmap, scanline);
} }
max = (vdp->contReg[9] & 2) ? 313 : 262; max = (vdp->contReg[9] & 2) ? 313 : 262;

View File

@ -16,7 +16,7 @@
void v9938_init (running_machine *machine, int which, const device_config *screen, bitmap_t *bitmap, int model, int vram_size, void (*callback)(running_machine *, int) ); void v9938_init (running_machine *machine, int which, const device_config *screen, bitmap_t *bitmap, int model, int vram_size, void (*callback)(running_machine *, int) );
void v9938_reset (int which); void v9938_reset (int which);
int v9938_interrupt (int which); int v9938_interrupt (running_machine *machine, int which);
void v9938_set_sprite_limit (int which, int); void v9938_set_sprite_limit (int which, int);
void v9938_set_resolution (int which, int); void v9938_set_resolution (int which, int);
int v9938_get_transpen(int which); int v9938_get_transpen(int which);

View File

@ -4470,7 +4470,7 @@ static DEVICE_START( voodoo )
v->pci.stall_callback = config->stall; v->pci.stall_callback = config->stall;
/* create a multiprocessor work queue */ /* create a multiprocessor work queue */
v->poly = poly_alloc(64, sizeof(poly_extra_data), 0); v->poly = poly_alloc(device->machine, 64, sizeof(poly_extra_data), 0);
v->thread_stats = auto_malloc(sizeof(v->thread_stats[0]) * WORK_MAX_THREADS); v->thread_stats = auto_malloc(sizeof(v->thread_stats[0]) * WORK_MAX_THREADS);
/* create a table of precomputed 1/n and log2(n) values */ /* create a table of precomputed 1/n and log2(n) values */

View File

@ -242,7 +242,7 @@ static MACHINE_RESET( gaelco3d2 )
static INTERRUPT_GEN( vblank_gen ) static INTERRUPT_GEN( vblank_gen )
{ {
gaelco3d_render(); gaelco3d_render(device->machine->primary_screen);
cpu_set_input_line(device, 2, ASSERT_LINE); cpu_set_input_line(device, 2, ASSERT_LINE);
} }

View File

@ -224,7 +224,6 @@ Hang Pilot (uses an unknown but similar video board) 12W
#include "cpu/sharc/sharc.h" #include "cpu/sharc/sharc.h"
#include "machine/konppc.h" #include "machine/konppc.h"
#include "machine/konamiic.h" #include "machine/konamiic.h"
#include "machine/adc083x.h"
#include "sound/rf5c400.h" #include "sound/rf5c400.h"
#include "video/voodoo.h" #include "video/voodoo.h"
#include "video/gticlub.h" #include "video/gticlub.h"

View File

@ -847,24 +847,25 @@ static WRITE32_HANDLER( sound020_w )
static READ32_HANDLER( adc0834_r ) static READ32_HANDLER( adc0834_r )
{ {
return adc083x_do_read( 0 ) << 24; return adc083x_do_read( space->machine, 0 ) << 24;
} }
static WRITE32_HANDLER( adc0834_w ) static WRITE32_HANDLER( adc0834_w )
{ {
adc083x_clk_write( 0, ( data >> 24 ) & 1 ); running_machine *machine = space->machine;
adc083x_di_write( 0, ( data >> 25 ) & 1 ); adc083x_clk_write( machine, 0, ( data >> 24 ) & 1 );
adc083x_cs_write( 0, ( data >> 26 ) & 1 ); adc083x_di_write( machine, 0, ( data >> 25 ) & 1 );
adc083x_cs_write( machine, 0, ( data >> 26 ) & 1 );
} }
static double adc0834_callback( int input ) static double adc0834_callback( running_machine *machine, int input )
{ {
switch( input ) switch( input )
{ {
case ADC083X_CH0: case ADC083X_CH0:
return ( (double)5 * input_port_read(Machine, "AN0" ) ) / 255; // steer return ( (double)5 * input_port_read(machine, "AN0" ) ) / 255; // steer
case ADC083X_CH1: case ADC083X_CH1:
return ( (double)5 * input_port_read(Machine, "AN1" ) ) / 255; // gas return ( (double)5 * input_port_read(machine, "AN1" ) ) / 255; // gas
case ADC083X_VREF: case ADC083X_VREF:
return 5; return 5;
} }

View File

@ -289,37 +289,38 @@ static READ32_HANDLER( mb89371_r )
static READ32_HANDLER( jamma_r ) static READ32_HANDLER( jamma_r )
{ {
running_machine *machine = space->machine;
UINT32 data = 0; UINT32 data = 0;
switch (offset) switch (offset)
{ {
case 0: case 0:
data = input_port_read(space->machine, "IN0"); data = input_port_read(machine, "IN0");
break; break;
case 1: case 1:
{ {
data = input_port_read(space->machine, "IN1"); data = input_port_read(machine, "IN1");
data |= 0x000000c0; data |= 0x000000c0;
if( has_ds2401[ security_cart_number ] ) if( has_ds2401[ security_cart_number ] )
{ {
data |= ds2401_read( security_cart_number ) << 14; data |= ds2401_read( machine, security_cart_number ) << 14;
} }
data |= adc083x_do_read( 0 ) << 16; data |= adc083x_do_read( machine, 0 ) << 16;
switch( chiptype[ security_cart_number ] ) switch( chiptype[ security_cart_number ] )
{ {
case 1: case 1:
data |= x76f041_sda_read( security_cart_number ) << 18; data |= x76f041_sda_read( machine, security_cart_number ) << 18;
break; break;
case 2: case 2:
data |= x76f100_sda_read( security_cart_number ) << 18; data |= x76f100_sda_read( machine, security_cart_number ) << 18;
break; break;
case 3: case 3:
data |= zs01_sda_read( security_cart_number ) << 18; data |= zs01_sda_read( machine, security_cart_number ) << 18;
break; break;
} }
@ -334,33 +335,34 @@ static READ32_HANDLER( jamma_r )
break; break;
} }
case 2: case 2:
data = input_port_read(space->machine, "IN2"); data = input_port_read(machine, "IN2");
break; break;
case 3: case 3:
data = input_port_read(space->machine, "IN3"); data = input_port_read(machine, "IN3");
break; break;
} }
verboselog( space->machine, 2, "jamma_r( %08x, %08x ) %08x\n", offset, mem_mask, data ); verboselog( machine, 2, "jamma_r( %08x, %08x ) %08x\n", offset, mem_mask, data );
return data; return data;
} }
static WRITE32_HANDLER( jamma_w ) static WRITE32_HANDLER( jamma_w )
{ {
verboselog( space->machine, 2, "jamma_w( %08x, %08x, %08x )\n", offset, mem_mask, data ); running_machine *machine = space->machine;
verboselog( machine, 2, "jamma_w( %08x, %08x, %08x )\n", offset, mem_mask, data );
switch( offset ) switch( offset )
{ {
case 0: case 0:
adc083x_cs_write( 0, ( data >> 1 ) & 1 ); adc083x_cs_write( machine, 0, ( data >> 1 ) & 1 );
adc083x_clk_write( 0, ( data >> 2 ) & 1 ); adc083x_clk_write( machine, 0, ( data >> 2 ) & 1 );
adc083x_di_write( 0, ( data >> 0 ) & 1 ); adc083x_di_write( machine, 0, ( data >> 0 ) & 1 );
adc083x_se_write( 0, 0 ); adc083x_se_write( machine, 0, 0 );
break; break;
default: default:
verboselog( space->machine, 0, "jamma_w: unhandled offset %08x %08x %08x\n", offset, mem_mask, data ); verboselog( machine, 0, "jamma_w: unhandled offset %08x %08x %08x\n", offset, mem_mask, data );
break; break;
} }
} }
@ -386,7 +388,7 @@ static WRITE32_HANDLER( control_w )
switch( chiptype[ security_cart_number ] ) switch( chiptype[ security_cart_number ] )
{ {
case 3: case 3:
zs01_sda_write( security_cart_number, !( ( control >> 6 ) & 1 ) ); /* 0x40 */ zs01_sda_write( space->machine, security_cart_number, !( ( control >> 6 ) & 1 ) ); /* 0x40 */
break; break;
} }
@ -975,12 +977,13 @@ static void cdrom_dma_write( UINT32 n_address, INT32 n_size )
} }
static UINT32 m_n_security_control; static UINT32 m_n_security_control;
static void (*security_bit7_write)( int data ); static void (*security_bit7_write)( running_machine *machine, int data );
static void (*security_bit6_write)( int data ); static void (*security_bit6_write)( running_machine *machine, int data );
static void (*security_bit5_write)( int data ); static void (*security_bit5_write)( running_machine *machine, int data );
static WRITE32_HANDLER( security_w ) static WRITE32_HANDLER( security_w )
{ {
running_machine *machine = space->machine;
COMBINE_DATA( &m_n_security_control ); COMBINE_DATA( &m_n_security_control );
verboselog( space->machine, 2, "security_w( %08x, %08x, %08x )\n", offset, mem_mask, data ); verboselog( space->machine, 2, "security_w( %08x, %08x, %08x )\n", offset, mem_mask, data );
@ -990,44 +993,44 @@ static WRITE32_HANDLER( security_w )
switch( chiptype[ security_cart_number ] ) switch( chiptype[ security_cart_number ] )
{ {
case 1: case 1:
x76f041_sda_write( security_cart_number, ( data >> 0 ) & 1 ); x76f041_sda_write( machine, security_cart_number, ( data >> 0 ) & 1 );
x76f041_scl_write( security_cart_number, ( data >> 1 ) & 1 ); x76f041_scl_write( machine, security_cart_number, ( data >> 1 ) & 1 );
x76f041_cs_write( security_cart_number, ( data >> 2 ) & 1 ); x76f041_cs_write( machine, security_cart_number, ( data >> 2 ) & 1 );
x76f041_rst_write( security_cart_number, ( data >> 3 ) & 1 ); x76f041_rst_write( machine, security_cart_number, ( data >> 3 ) & 1 );
break; break;
case 2: case 2:
x76f100_sda_write( security_cart_number, ( data >> 0 ) & 1 ); x76f100_sda_write( machine, security_cart_number, ( data >> 0 ) & 1 );
x76f100_scl_write( security_cart_number, ( data >> 1 ) & 1 ); x76f100_scl_write( machine, security_cart_number, ( data >> 1 ) & 1 );
x76f100_cs_write( security_cart_number, ( data >> 2 ) & 1 ); x76f100_cs_write( machine, security_cart_number, ( data >> 2 ) & 1 );
x76f100_rst_write( security_cart_number, ( data >> 3 ) & 1 ); x76f100_rst_write( machine, security_cart_number, ( data >> 3 ) & 1 );
break; break;
case 3: case 3:
zs01_scl_write( security_cart_number, ( data >> 1 ) & 1 ); zs01_scl_write( machine, security_cart_number, ( data >> 1 ) & 1 );
zs01_cs_write( security_cart_number, ( data >> 2 ) & 1 ); zs01_cs_write( machine, security_cart_number, ( data >> 2 ) & 1 );
zs01_rst_write( security_cart_number, ( data >> 3 ) & 1 ); zs01_rst_write( machine, security_cart_number, ( data >> 3 ) & 1 );
break; break;
} }
if( has_ds2401[ security_cart_number ] ) if( has_ds2401[ security_cart_number ] )
{ {
ds2401_write( security_cart_number, !( ( data >> 4 ) & 1 ) ); ds2401_write( machine, security_cart_number, !( ( data >> 4 ) & 1 ) );
} }
if( security_bit5_write != NULL ) if( security_bit5_write != NULL )
{ {
security_bit5_write( ( data >> 5 ) & 1 ); security_bit5_write( machine, ( data >> 5 ) & 1 );
} }
if( security_bit6_write != NULL ) if( security_bit6_write != NULL )
{ {
security_bit6_write( ( data >> 6 ) & 1 ); security_bit6_write( machine, ( data >> 6 ) & 1 );
} }
if( security_bit7_write != NULL ) if( security_bit7_write != NULL )
{ {
security_bit7_write( ( data >> 7 ) & 1 ); security_bit7_write( machine, ( data >> 7 ) & 1 );
} }
} }
} }
@ -1378,18 +1381,18 @@ static void flash_init( running_machine *machine )
state_save_register_global(machine, control ); state_save_register_global(machine, control );
} }
static double analogue_inputs_callback( int input ) static double analogue_inputs_callback( running_machine *machine, int input )
{ {
switch( input ) switch( input )
{ {
case ADC083X_CH0: case ADC083X_CH0:
return (double) ( input_port_read_safe(Machine, "analog0", 0 ) * 5 ) / 255; return (double) ( input_port_read_safe(machine, "analog0", 0 ) * 5 ) / 255;
case ADC083X_CH1: case ADC083X_CH1:
return (double) ( input_port_read_safe(Machine, "analog1", 0 ) * 5 ) / 255; return (double) ( input_port_read_safe(machine, "analog1", 0 ) * 5 ) / 255;
case ADC083X_CH2: case ADC083X_CH2:
return (double) ( input_port_read_safe(Machine, "analog2", 0 ) * 5 ) / 255; return (double) ( input_port_read_safe(machine, "analog2", 0 ) * 5 ) / 255;
case ADC083X_CH3: case ADC083X_CH3:
return (double) ( input_port_read_safe(Machine, "analog3", 0 ) * 5 ) / 255; return (double) ( input_port_read_safe(machine, "analog3", 0 ) * 5 ) / 255;
case ADC083X_AGND: case ADC083X_AGND:
return 0; return 0;
case ADC083X_VREF: case ADC083X_VREF:
@ -1448,7 +1451,7 @@ static void security_cart_init( running_machine *machine, int cart, const char *
break; break;
case 0x1014: case 0x1014:
zs01_init( cart, eeprom_rom, NULL, NULL, ds2401_rom ); zs01_init( machine, cart, eeprom_rom, NULL, NULL, ds2401_rom );
chiptype[ cart ] = 3; chiptype[ cart ] = 3;
switch( cart ) switch( cart )
@ -2120,7 +2123,7 @@ static READ32_HANDLER( gx894pwbba_r )
case 0x3b: case 0x3b:
if( ACCESSING_BITS_16_31 ) if( ACCESSING_BITS_16_31 )
{ {
data |= ds2401_read( 2 ) << 28; data |= ds2401_read( space->machine, 2 ) << 28;
} }
break; break;
case 0x3d: case 0x3d:
@ -2258,7 +2261,7 @@ static WRITE32_HANDLER( gx894pwbba_w )
case 0x3b: case 0x3b:
if( ACCESSING_BITS_16_31 ) if( ACCESSING_BITS_16_31 )
{ {
ds2401_write( 2, !( ( data >> 28 ) & 1 ) ); ds2401_write( space->machine, 2, !( ( data >> 28 ) & 1 ) );
} }
break; break;
case 0x3e: case 0x3e:
@ -2649,12 +2652,12 @@ static int salarymc_lamp_shift;
static int salarymc_lamp_data; static int salarymc_lamp_data;
static int salarymc_lamp_clk; static int salarymc_lamp_clk;
static void salarymc_lamp_data_write( int data ) static void salarymc_lamp_data_write( running_machine *machine, int data )
{ {
salarymc_lamp_data = data; salarymc_lamp_data = data;
} }
static void salarymc_lamp_rst_write( int data ) static void salarymc_lamp_rst_write( running_machine *machine, int data )
{ {
if( data ) if( data )
{ {
@ -2663,7 +2666,7 @@ static void salarymc_lamp_rst_write( int data )
} }
} }
static void salarymc_lamp_clk_write( int data ) static void salarymc_lamp_clk_write( running_machine *machine, int data )
{ {
if( salarymc_lamp_clk != data ) if( salarymc_lamp_clk != data )
{ {
@ -2683,7 +2686,7 @@ static void salarymc_lamp_clk_write( int data )
{ {
if( ( salarymc_lamp_shift & ~0xe38 ) != 0 ) if( ( salarymc_lamp_shift & ~0xe38 ) != 0 )
{ {
verboselog( Machine, 0, "unknown bits in salarymc_lamp_shift %08x\n", salarymc_lamp_shift & ~0xe38 ); verboselog( machine, 0, "unknown bits in salarymc_lamp_shift %08x\n", salarymc_lamp_shift & ~0xe38 );
} }
output_set_value( "player 1 red", ( salarymc_lamp_shift >> 11 ) & 1 ); output_set_value( "player 1 red", ( salarymc_lamp_shift >> 11 ) & 1 );

View File

@ -281,11 +281,11 @@ static INTERRUPT_GEN( meritm_interrupt )
{ {
v9938_set_sprite_limit(0, 0); v9938_set_sprite_limit(0, 0);
v9938_set_resolution(0, RENDER_HIGH); v9938_set_resolution(0, RENDER_HIGH);
v9938_interrupt(0); v9938_interrupt(device->machine, 0);
v9938_set_sprite_limit(1, 0); v9938_set_sprite_limit(1, 0);
v9938_set_resolution(1, RENDER_HIGH); v9938_set_resolution(1, RENDER_HIGH);
v9938_interrupt(1); v9938_interrupt(device->machine, 1);
} }
static void meritm_vdp0_interrupt(running_machine *machine, int i) static void meritm_vdp0_interrupt(running_machine *machine, int i)
@ -376,20 +376,20 @@ static VIDEO_UPDATE( meritm )
static int meritm_bank; static int meritm_bank;
static int meritm_psd_a15; static int meritm_psd_a15;
static void meritm_crt250_switch_banks( void ) static void meritm_crt250_switch_banks( running_machine *machine )
{ {
int rombank = (meritm_bank & 0x07) ^ 0x07; int rombank = (meritm_bank & 0x07) ^ 0x07;
//logerror( "CRT250: Switching banks: rom = %0x (bank = %x)\n", rombank, meritm_bank ); //logerror( "CRT250: Switching banks: rom = %0x (bank = %x)\n", rombank, meritm_bank );
memory_set_bank(Machine, 1, rombank ); memory_set_bank(machine, 1, rombank );
}; };
static WRITE8_HANDLER(meritm_crt250_bank_w) static WRITE8_HANDLER(meritm_crt250_bank_w)
{ {
meritm_crt250_switch_banks(); meritm_crt250_switch_banks(space->machine);
}; };
static void meritm_switch_banks( void ) static void meritm_switch_banks( running_machine *machine )
{ {
int rambank = (meritm_psd_a15 >> 2) & 0x3; int rambank = (meritm_psd_a15 >> 2) & 0x3;
int rombank = (((meritm_bank >> 3) & 0x3) << 5) | int rombank = (((meritm_bank >> 3) & 0x3) << 5) |
@ -398,21 +398,21 @@ static void meritm_switch_banks( void )
(meritm_psd_a15 & 0x1); (meritm_psd_a15 & 0x1);
//logerror( "Switching banks: rom = %0x (bank = %x), ram = %0x\n", rombank, meritm_bank, rambank); //logerror( "Switching banks: rom = %0x (bank = %x), ram = %0x\n", rombank, meritm_bank, rambank);
memory_set_bank(Machine, 1, rombank ); memory_set_bank(machine, 1, rombank );
memory_set_bank(Machine, 2, rombank | 0x01); memory_set_bank(machine, 2, rombank | 0x01);
memory_set_bank(Machine, 3, rambank); memory_set_bank(machine, 3, rambank);
}; };
static WRITE8_HANDLER(meritm_psd_a15_w) static WRITE8_HANDLER(meritm_psd_a15_w)
{ {
meritm_psd_a15 = data; meritm_psd_a15 = data;
//logerror( "Writing PSD_A15 with %02x at PC=%04X\n", data, cpu_get_pc(space->cpu) ); //logerror( "Writing PSD_A15 with %02x at PC=%04X\n", data, cpu_get_pc(space->cpu) );
meritm_switch_banks(); meritm_switch_banks(space->machine);
}; };
static WRITE8_HANDLER(meritm_bank_w) static WRITE8_HANDLER(meritm_bank_w)
{ {
meritm_switch_banks(); meritm_switch_banks(space->machine);
}; };
/************************************* /*************************************
@ -849,7 +849,7 @@ static MACHINE_START(meritm_crt250)
{ {
memory_configure_bank(machine, 1, 0, 8, memory_region(machine, "main"), 0x10000); memory_configure_bank(machine, 1, 0, 8, memory_region(machine, "main"), 0x10000);
meritm_bank = 0xff; meritm_bank = 0xff;
meritm_crt250_switch_banks(); meritm_crt250_switch_banks(machine);
MACHINE_START_CALL(merit_common); MACHINE_START_CALL(merit_common);
state_save_register_global(machine, meritm_bank); state_save_register_global(machine, meritm_bank);
@ -870,7 +870,7 @@ static MACHINE_START(meritm_crt260)
memory_configure_bank(machine, 3, 0, 4, meritm_ram, 0x2000); memory_configure_bank(machine, 3, 0, 4, meritm_ram, 0x2000);
meritm_bank = 0xff; meritm_bank = 0xff;
meritm_psd_a15 = 0; meritm_psd_a15 = 0;
meritm_switch_banks(); meritm_switch_banks(machine);
MACHINE_START_CALL(merit_common); MACHINE_START_CALL(merit_common);
pc16552d_init(machine, 0, UART_CLK, NULL, pc16650d_tx_callback); pc16552d_init(machine, 0, UART_CLK, NULL, pc16650d_tx_callback);
microtouch_init(machine, meritm_microtouch_tx_callback, meritm_touch_coord_transform); microtouch_init(machine, meritm_microtouch_tx_callback, meritm_touch_coord_transform);

View File

@ -426,9 +426,9 @@ static WRITE8_HANDLER( peplus_output_bank_c_w )
static WRITE8_HANDLER(i2c_nvram_w) static WRITE8_HANDLER(i2c_nvram_w)
{ {
i2cmem_write(0, I2CMEM_SCL, BIT(data, 2)); i2cmem_write(space->machine, 0, I2CMEM_SCL, BIT(data, 2));
sda_dir = BIT(data, 1); sda_dir = BIT(data, 1);
i2cmem_write(0, I2CMEM_SDA, BIT(data, 0)); i2cmem_write(space->machine, 0, I2CMEM_SDA, BIT(data, 0));
} }
@ -518,7 +518,7 @@ static READ8_HANDLER( peplus_input_bank_a_r )
UINT8 sda = 0; UINT8 sda = 0;
if(!sda_dir) if(!sda_dir)
{ {
sda = i2cmem_read(0, I2CMEM_SDA); sda = i2cmem_read(space->machine, 0, I2CMEM_SDA);
} }
if ((input_port_read_safe(space->machine, "SENSOR",0x00) & 0x01) == 0x01 && coin_state == 0) { if ((input_port_read_safe(space->machine, "SENSOR",0x00) & 0x01) == 0x01 && coin_state == 0) {

View File

@ -212,7 +212,7 @@ static INTERRUPT_GEN( sangho_interrupt )
{ {
v9938_set_sprite_limit(0, 0); v9938_set_sprite_limit(0, 0);
v9938_set_resolution(0, 2); v9938_set_resolution(0, 2);
v9938_interrupt(0); v9938_interrupt(device->machine, 0);
} }

View File

@ -441,7 +441,7 @@ static MACHINE_RESET(sfkick)
static INTERRUPT_GEN( sfkick_interrupt ) static INTERRUPT_GEN( sfkick_interrupt )
{ {
v9938_interrupt(0); v9938_interrupt(device->machine, 0);
} }
static void irqhandler(running_machine *machine, int irq) static void irqhandler(running_machine *machine, int irq)
{ {

View File

@ -174,7 +174,6 @@ Check gticlub.c for details on the bottom board.
*/ */
#include "driver.h" #include "driver.h"
#include "deprecat.h"
#include "cpu/powerpc/ppc.h" #include "cpu/powerpc/ppc.h"
#include "cpu/sharc/sharc.h" #include "cpu/sharc/sharc.h"
#include "sound/k054539.h" #include "sound/k054539.h"
@ -299,7 +298,7 @@ static VIDEO_UPDATE( zr107 )
static CUSTOM_INPUT( adcdo_r ) static CUSTOM_INPUT( adcdo_r )
{ {
return adc083x_do_read(0); return adc083x_do_read(field->port->machine, 0);
} }
static READ8_HANDLER( sysreg_r ) static READ8_HANDLER( sysreg_r )
@ -323,7 +322,7 @@ static READ8_HANDLER( sysreg_r )
0x20 = SARS (A/D busy flag) 0x20 = SARS (A/D busy flag)
0x10 = EEPDO (EEPROM DO) 0x10 = EEPDO (EEPROM DO)
*/ */
r = (adc083x_sars_read(0) << 5) | (eeprom_read_bit() << 4); r = (adc083x_sars_read(space->machine, 0) << 5) | (eeprom_read_bit() << 4);
break; break;
case 5: /* Parallel data port */ case 5: /* Parallel data port */
@ -382,9 +381,9 @@ static WRITE8_HANDLER( sysreg_w )
if (data & 0x40) /* CG Board 0 IRQ Ack */ if (data & 0x40) /* CG Board 0 IRQ Ack */
cpu_set_input_line(space->machine->cpu[0], INPUT_LINE_IRQ0, CLEAR_LINE); cpu_set_input_line(space->machine->cpu[0], INPUT_LINE_IRQ0, CLEAR_LINE);
set_cgboard_id((data >> 4) & 3); set_cgboard_id((data >> 4) & 3);
adc083x_cs_write(0, (data >> 2) & 1); adc083x_cs_write(space->machine, 0, (data >> 2) & 1);
adc083x_di_write(0, (data >> 1) & 1); adc083x_di_write(space->machine, 0, (data >> 1) & 1);
adc083x_clk_write(0, (data >> 0) & 1); adc083x_clk_write(space->machine, 0, (data >> 0) & 1);
mame_printf_debug("System register 1 = %02X\n", data); mame_printf_debug("System register 1 = %02X\n", data);
break; break;
@ -399,16 +398,16 @@ static WRITE8_HANDLER( sysreg_w )
} }
} }
static double adc0838_callback(int input) static double adc0838_callback(running_machine *machine, int input)
{ {
switch (input) switch (input)
{ {
case ADC083X_CH0: case ADC083X_CH0:
return (double)(5 * input_port_read(Machine, "ANALOG1")) / 255.0; return (double)(5 * input_port_read(machine, "ANALOG1")) / 255.0;
case ADC083X_CH1: case ADC083X_CH1:
return (double)(5 * input_port_read(Machine, "ANALOG2")) / 255.0; return (double)(5 * input_port_read(machine, "ANALOG2")) / 255.0;
case ADC083X_CH2: case ADC083X_CH2:
return (double)(5 * input_port_read(Machine, "ANALOG3")) / 255.0; return (double)(5 * input_port_read(machine, "ANALOG3")) / 255.0;
case ADC083X_CH3: case ADC083X_CH3:
return 0; return 0;
case ADC083X_COM: case ADC083X_COM:

View File

@ -14,7 +14,7 @@ extern UINT8 *gaelco3d_texmask;
extern offs_t gaelco3d_texture_size; extern offs_t gaelco3d_texture_size;
extern offs_t gaelco3d_texmask_size; extern offs_t gaelco3d_texmask_size;
void gaelco3d_render(void); void gaelco3d_render(const device_config *screen);
WRITE32_HANDLER( gaelco3d_render_w ); WRITE32_HANDLER( gaelco3d_render_w );
WRITE16_HANDLER( gaelco3d_paletteram_w ); WRITE16_HANDLER( gaelco3d_paletteram_w );

View File

@ -1,5 +1,4 @@
#include "driver.h" #include "driver.h"
#include "deprecat.h"
#include "includes/amiga.h" #include "includes/amiga.h"
#include "cdrom.h" #include "cdrom.h"
#include "coreutil.h" #include "coreutil.h"
@ -160,18 +159,18 @@ void amiga_akiko_init(running_machine* machine)
} }
} }
static void akiko_nvram_write(UINT32 data) static void akiko_nvram_write(running_machine *machine, UINT32 data)
{ {
akiko.i2c_scl_out = BIT(data,31); akiko.i2c_scl_out = BIT(data,31);
akiko.i2c_sda_out = BIT(data,30); akiko.i2c_sda_out = BIT(data,30);
akiko.i2c_scl_dir = BIT(data,15); akiko.i2c_scl_dir = BIT(data,15);
akiko.i2c_sda_dir = BIT(data,14); akiko.i2c_sda_dir = BIT(data,14);
i2cmem_write( 0, I2CMEM_SCL, akiko.i2c_scl_out ); i2cmem_write( machine, 0, I2CMEM_SCL, akiko.i2c_scl_out );
i2cmem_write( 0, I2CMEM_SDA, akiko.i2c_sda_out ); i2cmem_write( machine, 0, I2CMEM_SDA, akiko.i2c_sda_out );
} }
static UINT32 akiko_nvram_read(void) static UINT32 akiko_nvram_read(running_machine *machine)
{ {
UINT32 v = 0; UINT32 v = 0;
@ -190,7 +189,7 @@ static UINT32 akiko_nvram_read(void)
} }
else else
{ {
v |= i2cmem_read( 0, I2CMEM_SDA ) << 30; v |= i2cmem_read( machine, 0, I2CMEM_SDA ) << 30;
} }
v |= akiko.i2c_scl_dir << 15; v |= akiko.i2c_scl_dir << 15;
@ -350,14 +349,14 @@ static UINT8 akiko_cdda_getstatus( UINT32 *lba )
return 0x15; /* no audio status */ return 0x15; /* no audio status */
} }
static void akiko_set_cd_status( UINT32 status ) static void akiko_set_cd_status( running_machine *machine, UINT32 status )
{ {
akiko.cdrom_status[0] |= status; akiko.cdrom_status[0] |= status;
if ( akiko.cdrom_status[0] & akiko.cdrom_status[1] ) if ( akiko.cdrom_status[0] & akiko.cdrom_status[1] )
{ {
if (LOG_AKIKO_CD) logerror( "Akiko CD IRQ\n" ); if (LOG_AKIKO_CD) logerror( "Akiko CD IRQ\n" );
amiga_custom_w(cpu_get_address_space(Machine->cpu[0], ADDRESS_SPACE_PROGRAM), REG_INTREQ, 0x8000 | INTENA_PORTS, 0xffff); amiga_custom_w(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), REG_INTREQ, 0x8000 | INTENA_PORTS, 0xffff);
} }
} }
@ -373,7 +372,7 @@ static TIMER_CALLBACK(akiko_frame_proc)
if ( s == 0x11 ) if ( s == 0x11 )
{ {
akiko_set_cd_status( 0x80000000 ); /* subcode ready */ akiko_set_cd_status( machine, 0x80000000 ); /* subcode ready */
} }
timer_adjust_oneshot( akiko.frame_timer, ATTOTIME_IN_HZ( 75 ), 0 ); timer_adjust_oneshot( akiko.frame_timer, ATTOTIME_IN_HZ( 75 ), 0 );
@ -477,7 +476,7 @@ static TIMER_CALLBACK(akiko_dma_proc)
} }
if ( akiko.cdrom_readreqmask == 0 ) if ( akiko.cdrom_readreqmask == 0 )
akiko_set_cd_status(0x04000000); akiko_set_cd_status(machine, 0x04000000);
else else
timer_adjust_oneshot( akiko.dma_timer, ATTOTIME_IN_USEC( CD_SECTOR_TIME / akiko.cdrom_speed ), 0 ); timer_adjust_oneshot( akiko.dma_timer, ATTOTIME_IN_USEC( CD_SECTOR_TIME / akiko.cdrom_speed ), 0 );
} }
@ -522,7 +521,7 @@ static void akiko_setup_response( const address_space *space, int len, UINT8 *r1
akiko.cdrom_cmd_resp = (akiko.cdrom_cmd_resp+len) & 0xff; akiko.cdrom_cmd_resp = (akiko.cdrom_cmd_resp+len) & 0xff;
akiko_set_cd_status( 0x10000000 ); /* new data available */ akiko_set_cd_status( space->machine, 0x10000000 ); /* new data available */
} }
static TIMER_CALLBACK( akiko_cd_delayed_cmd ) static TIMER_CALLBACK( akiko_cd_delayed_cmd )
@ -796,7 +795,7 @@ READ32_HANDLER(amiga_akiko32_r)
return retval; return retval;
case 0x30/4: /* NVRAM */ case 0x30/4: /* NVRAM */
return akiko_nvram_read(); return akiko_nvram_read(space->machine);
case 0x38/4: /* C2P */ case 0x38/4: /* C2P */
return akiko_c2p_read(); return akiko_c2p_read();
@ -871,7 +870,7 @@ WRITE32_HANDLER(amiga_akiko32_w)
break; break;
case 0x30/4: case 0x30/4:
akiko_nvram_write(data); akiko_nvram_write(space->machine, data);
break; break;
case 0x38/4: case 0x38/4:

View File

@ -224,7 +224,7 @@ READ64_DEVICE_HANDLER( naomibd_r )
{ {
UINT64 ret; UINT64 ret;
ret = x76f100_sda_read( 0 ) << 15; ret = x76f100_sda_read( device->machine, 0 ) << 15;
return ret << 32; return ret << 32;
} }
@ -273,11 +273,13 @@ WRITE64_DEVICE_HANDLER( naomibd_w )
} }
else if ((offset == 15) && ACCESSING_BITS_0_15) else if ((offset == 15) && ACCESSING_BITS_0_15)
{ {
running_machine *machine = device->machine;
// NAOMI_BOARDID_WRITE // NAOMI_BOARDID_WRITE
x76f100_cs_write(0, (data >> 2) & 1 ); x76f100_cs_write(machine, 0, (data >> 2) & 1 );
x76f100_rst_write(0, (data >> 3) & 1 ); x76f100_rst_write(machine, 0, (data >> 3) & 1 );
x76f100_scl_write(0, (data >> 1) & 1 ); x76f100_scl_write(machine, 0, (data >> 1) & 1 );
x76f100_sda_write(0, (data >> 0) & 1 ); x76f100_sda_write(machine, 0, (data >> 0) & 1 );
} }
else if ((offset == 2) && ACCESSING_BITS_32_63) else if ((offset == 2) && ACCESSING_BITS_32_63)
{ {

View File

@ -8,7 +8,6 @@
*/ */
#include "driver.h" #include "driver.h"
#include "deprecat.h"
#include "machine/zs01.h" #include "machine/zs01.h"
#define VERBOSE_LEVEL ( 0 ) #define VERBOSE_LEVEL ( 0 )
@ -67,9 +66,8 @@ static struct zs01_chip zs01[ ZS01_MAXCHIP ];
#define STATE_LOAD_COMMAND ( 2 ) #define STATE_LOAD_COMMAND ( 2 )
#define STATE_READ_DATA ( 3 ) #define STATE_READ_DATA ( 3 )
void zs01_init( int chip, UINT8 *data, zs01_write_handler write, zs01_read_handler read, UINT8 *ds2401 ) void zs01_init( running_machine *machine, int chip, UINT8 *data, zs01_write_handler write, zs01_read_handler read, UINT8 *ds2401 )
{ {
running_machine *machine = Machine;
int offset; int offset;
struct zs01_chip *c; struct zs01_chip *c;
@ -134,9 +132,8 @@ void zs01_init( int chip, UINT8 *data, zs01_write_handler write, zs01_read_handl
state_save_register_item_pointer( machine, "zs01", NULL, chip, c->data_key, SIZE_DATA ); state_save_register_item_pointer( machine, "zs01", NULL, chip, c->data_key, SIZE_DATA );
} }
void zs01_rst_write( int chip, int rst ) void zs01_rst_write( running_machine *machine, int chip, int rst )
{ {
running_machine *machine = Machine;
struct zs01_chip *c; struct zs01_chip *c;
if( chip >= ZS01_MAXCHIP ) if( chip >= ZS01_MAXCHIP )
@ -161,9 +158,8 @@ void zs01_rst_write( int chip, int rst )
c->rst = rst; c->rst = rst;
} }
void zs01_cs_write( int chip, int cs ) void zs01_cs_write( running_machine *machine, int chip, int cs )
{ {
running_machine *machine = Machine;
struct zs01_chip *c; struct zs01_chip *c;
if( chip >= ZS01_MAXCHIP ) if( chip >= ZS01_MAXCHIP )
@ -391,9 +387,8 @@ static int zs01_data_offset( struct zs01_chip *c )
return block * SIZE_DATA_BUFFER; return block * SIZE_DATA_BUFFER;
} }
void zs01_scl_write( int chip, int scl ) void zs01_scl_write( running_machine *machine, int chip, int scl )
{ {
running_machine *machine = Machine;
struct zs01_chip *c; struct zs01_chip *c;
if( chip >= ZS01_MAXCHIP ) if( chip >= ZS01_MAXCHIP )
@ -601,9 +596,8 @@ void zs01_scl_write( int chip, int scl )
c->scl = scl; c->scl = scl;
} }
void zs01_sda_write( int chip, int sda ) void zs01_sda_write( running_machine *machine, int chip, int sda )
{ {
running_machine *machine = Machine;
struct zs01_chip *c; struct zs01_chip *c;
if( chip >= ZS01_MAXCHIP ) if( chip >= ZS01_MAXCHIP )
@ -649,9 +643,8 @@ void zs01_sda_write( int chip, int sda )
c->sdaw = sda; c->sdaw = sda;
} }
int zs01_sda_read( int chip ) int zs01_sda_read( running_machine *machine, int chip )
{ {
running_machine *machine = Machine;
struct zs01_chip *c; struct zs01_chip *c;
if( chip >= ZS01_MAXCHIP ) if( chip >= ZS01_MAXCHIP )

View File

@ -9,15 +9,15 @@
#define ZS01_MAXCHIP ( 2 ) #define ZS01_MAXCHIP ( 2 )
typedef void (*zs01_write_handler)( int pin, int value ); typedef void (*zs01_write_handler)( running_machine *machine, int pin, int value );
typedef int (*zs01_read_handler)( int pin ); typedef int (*zs01_read_handler)( running_machine *machine, int pin );
extern void zs01_init( int chip, UINT8 *data, zs01_write_handler write, zs01_read_handler read, UINT8 *ds2401 ); extern void zs01_init( running_machine *machine, int chip, UINT8 *data, zs01_write_handler write, zs01_read_handler read, UINT8 *ds2401 );
extern void zs01_cs_write( int chip, int cs ); extern void zs01_cs_write( running_machine *machine, int chip, int cs );
extern void zs01_rst_write( int chip, int rst ); extern void zs01_rst_write( running_machine *machine, int chip, int rst );
extern void zs01_scl_write( int chip, int scl ); extern void zs01_scl_write( running_machine *machine, int chip, int scl );
extern void zs01_sda_write( int chip, int sda ); extern void zs01_sda_write( running_machine *machine, int chip, int sda );
extern int zs01_sda_read( int chip ); extern int zs01_sda_read( running_machine *machine, int chip );
extern NVRAM_HANDLER( zs01_0 ); extern NVRAM_HANDLER( zs01_0 );
extern NVRAM_HANDLER( zs01_1 ); extern NVRAM_HANDLER( zs01_1 );

View File

@ -7,7 +7,6 @@
**************************************************************************/ **************************************************************************/
#include "driver.h" #include "driver.h"
#include "deprecat.h"
#include "eminline.h" #include "eminline.h"
#include "gaelco3d.h" #include "gaelco3d.h"
#include "cpu/tms32031/tms32031.h" #include "cpu/tms32031/tms32031.h"
@ -77,7 +76,7 @@ VIDEO_START( gaelco3d )
{ {
int width, height; int width, height;
poly = poly_alloc(2000, sizeof(poly_extra_data), 0); poly = poly_alloc(machine, 2000, sizeof(poly_extra_data), 0);
add_exit_callback(machine, gaelco3d_exit); add_exit_callback(machine, gaelco3d_exit);
screenbits = video_screen_auto_bitmap_alloc(machine->primary_screen); screenbits = video_screen_auto_bitmap_alloc(machine->primary_screen);
@ -373,15 +372,15 @@ static void render_alphablend(void *destbase, INT32 scanline, const poly_extent
* *
*************************************/ *************************************/
void gaelco3d_render(void) void gaelco3d_render(const device_config *screen)
{ {
/* wait for any queued stuff to complete */ /* wait for any queued stuff to complete */
poly_wait(poly, "Time to render"); poly_wait(poly, "Time to render");
#if DISPLAY_STATS #if DISPLAY_STATS
{ {
int scan = video_screen_get_vpos(machine->primary_screen); int scan = video_screen_get_vpos(screen);
popmessage("Polys = %4d Timeleft = %3d", polygons, (lastscan < scan) ? (scan - lastscan) : (scan + (lastscan - video_screen_get_visible_area(Machine->primary_screen)->max_y))); popmessage("Polys = %4d Timeleft = %3d", polygons, (lastscan < scan) ? (scan - lastscan) : (scan + (lastscan - video_screen_get_visible_area(screen)->max_y)));
} }
#endif #endif

View File

@ -53,7 +53,7 @@ VIDEO_START( galastrm )
tmpbitmaps = video_screen_auto_bitmap_alloc(machine->primary_screen); tmpbitmaps = video_screen_auto_bitmap_alloc(machine->primary_screen);
polybitmap = video_screen_auto_bitmap_alloc(machine->primary_screen); polybitmap = video_screen_auto_bitmap_alloc(machine->primary_screen);
poly = poly_alloc(16, sizeof(poly_extra_data), POLYFLAG_ALLOW_QUADS); poly = poly_alloc(machine, 16, sizeof(poly_extra_data), POLYFLAG_ALLOW_QUADS);
add_exit_callback(machine, galastrm_exit); add_exit_callback(machine, galastrm_exit);
} }

View File

@ -222,7 +222,7 @@ void K001005_init(running_machine *machine)
K001005_3d_fifo = auto_malloc(0x10000 * sizeof(UINT32)); K001005_3d_fifo = auto_malloc(0x10000 * sizeof(UINT32));
poly = poly_alloc(4000, sizeof(poly_extra_data), POLYFLAG_ALLOW_QUADS); poly = poly_alloc(machine, 4000, sizeof(poly_extra_data), POLYFLAG_ALLOW_QUADS);
add_exit_callback(machine, K001005_exit); add_exit_callback(machine, K001005_exit);
for (i=0; i < 128; i++) for (i=0; i < 128; i++)

View File

@ -77,7 +77,7 @@ static void midvunit_exit(running_machine *machine)
VIDEO_START( midvunit ) VIDEO_START( midvunit )
{ {
scanline_timer = timer_alloc(machine, scanline_timer_cb, NULL); scanline_timer = timer_alloc(machine, scanline_timer_cb, NULL);
poly = poly_alloc(4000, sizeof(poly_extra_data), POLYFLAG_ALLOW_QUADS); poly = poly_alloc(machine, 4000, sizeof(poly_extra_data), POLYFLAG_ALLOW_QUADS);
add_exit_callback(machine, midvunit_exit); add_exit_callback(machine, midvunit_exit);
state_save_register_global_array(machine, video_regs); state_save_register_global_array(machine, video_regs);

View File

@ -255,7 +255,7 @@ VIDEO_START( midzeus )
palette_set_color_rgb(machine, i, pal5bit(i >> 10), pal5bit(i >> 5), pal5bit(i >> 0)); palette_set_color_rgb(machine, i, pal5bit(i >> 10), pal5bit(i >> 5), pal5bit(i >> 0));
/* initialize polygon engine */ /* initialize polygon engine */
poly = poly_alloc(10000, sizeof(poly_extra_data), POLYFLAG_ALLOW_QUADS); poly = poly_alloc(machine, 10000, sizeof(poly_extra_data), POLYFLAG_ALLOW_QUADS);
/* we need to cleanup on exit */ /* we need to cleanup on exit */
add_exit_callback(machine, exit_handler); add_exit_callback(machine, exit_handler);

View File

@ -268,7 +268,7 @@ VIDEO_START( midzeus2 )
waveram[1] = auto_malloc(WAVERAM1_WIDTH * WAVERAM1_HEIGHT * 12); waveram[1] = auto_malloc(WAVERAM1_WIDTH * WAVERAM1_HEIGHT * 12);
/* initialize polygon engine */ /* initialize polygon engine */
poly = poly_alloc(10000, sizeof(poly_extra_data), POLYFLAG_ALLOW_QUADS); poly = poly_alloc(machine, 10000, sizeof(poly_extra_data), POLYFLAG_ALLOW_QUADS);
/* we need to cleanup on exit */ /* we need to cleanup on exit */
add_exit_callback(machine, exit_handler); add_exit_callback(machine, exit_handler);

View File

@ -2703,7 +2703,7 @@ VIDEO_START(model2)
sys24_tile_vh_start(machine, 0x3fff); sys24_tile_vh_start(machine, 0x3fff);
sys24_bitmap = bitmap_alloc(width, height+4, BITMAP_FORMAT_INDEXED16); sys24_bitmap = bitmap_alloc(width, height+4, BITMAP_FORMAT_INDEXED16);
poly = poly_alloc(4000, sizeof(poly_extra_data), 0); poly = poly_alloc(machine, 4000, sizeof(poly_extra_data), 0);
add_exit_callback(machine, model2_exit); add_exit_callback(machine, model2_exit);
/* initialize the geometry engine */ /* initialize the geometry engine */

View File

@ -166,7 +166,7 @@ VIDEO_START( model3 )
{ {
int width, height; int width, height;
poly = poly_alloc(4000, sizeof(poly_extra_data), 0); poly = poly_alloc(machine, 4000, sizeof(poly_extra_data), 0);
add_exit_callback(machine, model3_exit); add_exit_callback(machine, model3_exit);
width = video_screen_get_width(machine->primary_screen); width = video_screen_get_width(machine->primary_screen);

View File

@ -174,7 +174,7 @@ Clamp256( int v )
} /* Clamp256 */ } /* Clamp256 */
#ifdef MAME_DEBUG #ifdef MAME_DEBUG
static void Dump( FILE *f, unsigned addr1, unsigned addr2, const char *name ); static void Dump( const address_space *space, FILE *f, unsigned addr1, unsigned addr2, const char *name );
#endif #endif
static struct static struct
@ -608,7 +608,7 @@ mydrawgfxzoom(
} /* mydrawgfxzoom */ } /* mydrawgfxzoom */
static void static void
ApplyGamma( bitmap_t *bitmap ) ApplyGamma( running_machine *machine, bitmap_t *bitmap )
{ {
int x,y; int x,y;
if( mbSuperSystem22 ) if( mbSuperSystem22 )
@ -636,7 +636,7 @@ ApplyGamma( bitmap_t *bitmap )
} }
else else
{ /* system 22 */ { /* system 22 */
const UINT8 *rlut = 0x000+(const UINT8 *)memory_region(Machine, "user1"); const UINT8 *rlut = 0x000+(const UINT8 *)memory_region(machine, "user1");
const UINT8 *glut = 0x100+rlut; const UINT8 *glut = 0x100+rlut;
const UINT8 *blut = 0x200+rlut; const UINT8 *blut = 0x200+rlut;
for( y=0; y<bitmap->height; y++ ) for( y=0; y<bitmap->height; y++ )
@ -2246,9 +2246,9 @@ static VIDEO_START( common )
mpPolyH = mpPolyM + mPtRomSize; mpPolyH = mpPolyM + mPtRomSize;
#ifdef RENDER_AS_QUADS #ifdef RENDER_AS_QUADS
poly = poly_alloc(4000, sizeof(poly_extra_data), POLYFLAG_ALLOW_QUADS); poly = poly_alloc(machine, 4000, sizeof(poly_extra_data), POLYFLAG_ALLOW_QUADS);
#else #else
poly = poly_alloc(4000, sizeof(poly_extra_data), 0); poly = poly_alloc(machine, 4000, sizeof(poly_extra_data), 0);
#endif #endif
add_reset_callback(machine, namcos22_reset); add_reset_callback(machine, namcos22_reset);
add_exit_callback(machine, namcos22_exit); add_exit_callback(machine, namcos22_exit);
@ -2282,7 +2282,7 @@ VIDEO_UPDATE( namcos22s )
DrawSprites( bitmap, cliprect ); DrawSprites( bitmap, cliprect );
RenderScene(screen->machine, bitmap ); RenderScene(screen->machine, bitmap );
DrawTranslucentCharacters( bitmap, cliprect ); DrawTranslucentCharacters( bitmap, cliprect );
ApplyGamma( bitmap ); ApplyGamma( screen->machine, bitmap );
#ifdef MAME_DEBUG #ifdef MAME_DEBUG
if( input_code_pressed(KEYCODE_D) ) if( input_code_pressed(KEYCODE_D) )
@ -2290,6 +2290,8 @@ VIDEO_UPDATE( namcos22s )
FILE *f = fopen( "dump.txt", "wb" ); FILE *f = fopen( "dump.txt", "wb" );
if( f ) if( f )
{ {
const address_space *space = cpu_get_address_space(screen->machine->cpu[0], ADDRESS_SPACE_PROGRAM);
{ {
int i,bank; int i,bank;
for( bank=0; bank<4; bank++ ) for( bank=0; bank<4; bank++ )
@ -2303,16 +2305,16 @@ VIDEO_UPDATE( namcos22s )
} }
} }
Dump(f,0x810000, 0x81000f, "cz attr" ); Dump(space, f,0x810000, 0x81000f, "cz attr" );
Dump(f,0x820000, 0x8202ff, "unk_ac" ); Dump(space, f,0x820000, 0x8202ff, "unk_ac" );
Dump(f,0x824000, 0x8243ff, "gamma"); Dump(space, f,0x824000, 0x8243ff, "gamma");
Dump(f,0x828000, 0x83ffff, "palette" ); Dump(space, f,0x828000, 0x83ffff, "palette" );
Dump(f,0x8a0000, 0x8a000f, "tilemap_attr"); Dump(space, f,0x8a0000, 0x8a000f, "tilemap_attr");
Dump(f,0x880000, 0x89ffff, "cgram/textram"); Dump(space, f,0x880000, 0x89ffff, "cgram/textram");
Dump(f,0x900000, 0x90ffff, "vics_data"); Dump(space, f,0x900000, 0x90ffff, "vics_data");
Dump(f,0x940000, 0x94007f, "vics_control"); Dump(space, f,0x940000, 0x94007f, "vics_control");
Dump(f,0x980000, 0x9affff, "sprite374" ); Dump(space, f,0x980000, 0x9affff, "sprite374" );
Dump(f,0xc00000, 0xc1ffff, "polygonram"); Dump(space, f,0xc00000, 0xc1ffff, "polygonram");
fclose( f ); fclose( f );
} }
while( input_code_pressed(KEYCODE_D) ){} while( input_code_pressed(KEYCODE_D) ){}
@ -2330,7 +2332,7 @@ VIDEO_UPDATE( namcos22 )
DrawPolygons( bitmap ); DrawPolygons( bitmap );
RenderScene(screen->machine, bitmap); RenderScene(screen->machine, bitmap);
DrawTranslucentCharacters( bitmap, cliprect ); DrawTranslucentCharacters( bitmap, cliprect );
ApplyGamma( bitmap ); ApplyGamma( screen->machine, bitmap );
#ifdef MAME_DEBUG #ifdef MAME_DEBUG
if( input_code_pressed(KEYCODE_D) ) if( input_code_pressed(KEYCODE_D) )
@ -2338,12 +2340,13 @@ VIDEO_UPDATE( namcos22 )
FILE *f = fopen( "dump.txt", "wb" ); FILE *f = fopen( "dump.txt", "wb" );
if( f ) if( f )
{ {
// Dump(f,0x90000000, 0x90000003, "led?" ); const address_space *space = cpu_get_address_space(screen->machine->cpu[0], ADDRESS_SPACE_PROGRAM);
// Dump(f,0x90010000, 0x90017fff, "cz_ram");
// Dump(f,0x900a0000, 0x900a000f, "tilemap_attr"); // Dump(space, f,0x90000000, 0x90000003, "led?" );
Dump(f,0x90020000, 0x90027fff, "gamma"); // Dump(space, f,0x90010000, 0x90017fff, "cz_ram");
// 0x90020000, 0x90027fff // Dump(space, f,0x900a0000, 0x900a000f, "tilemap_attr");
// Dump(f,0x70000000, 0x7001ffff, "polygonram"); Dump(space, f,0x90020000, 0x90027fff, "gamma");
// Dump(space, f,0x70000000, 0x7001ffff, "polygonram");
fclose( f ); fclose( f );
} }
while( input_code_pressed(KEYCODE_D) ){} while( input_code_pressed(KEYCODE_D) ){}
@ -2409,9 +2412,8 @@ WRITE16_HANDLER( namcos22_dspram16_w )
#ifdef MAME_DEBUG #ifdef MAME_DEBUG
static void static void
Dump( FILE *f, unsigned addr1, unsigned addr2, const char *name ) Dump( const address_space *space, FILE *f, unsigned addr1, unsigned addr2, const char *name )
{ {
const address_space *space = cpu_get_address_space(Machine->cpu[0], ADDRESS_SPACE_PROGRAM);
unsigned addr; unsigned addr;
fprintf( f, "%s:\n", name ); fprintf( f, "%s:\n", name );
for( addr=addr1; addr<=addr2; addr+=16 ) for( addr=addr1; addr<=addr2; addr+=16 )

View File

@ -198,7 +198,7 @@ VIDEO_START( taitojc )
taitojc_char_dirty = 1; taitojc_char_dirty = 1;
poly = poly_alloc(4000, sizeof(poly_extra_data), POLYFLAG_ALLOW_QUADS); poly = poly_alloc(machine, 4000, sizeof(poly_extra_data), POLYFLAG_ALLOW_QUADS);
add_exit_callback(machine, taitojc_exit); add_exit_callback(machine, taitojc_exit);
/* find first empty slot to decode gfx */ /* find first empty slot to decode gfx */