Cleanups and version bump.

This commit is contained in:
Aaron Giles 2010-01-16 04:12:04 +00:00
parent f6c832ea90
commit aebc07a897
139 changed files with 1738 additions and 1738 deletions

View File

@ -665,7 +665,7 @@
P |= F_T | F_B; \ P |= F_T | F_B; \
if( (cpustate->irq_state != CLEAR_LINE) && !(P & F_I) ) \ if( (cpustate->irq_state != CLEAR_LINE) && !(P & F_I) ) \
{ \ { \
LOG(("M6502 '%s' RTI sets after_cli\n",cpustate->device->tag.cstr())); \ LOG(("M6502 '%s' RTI sets after_cli\n",cpustate->device->tag.cstr())); \
cpustate->after_cli = 1; \ cpustate->after_cli = 1; \
} }

View File

@ -1977,7 +1977,7 @@ static void cfunc_rsp_stv(void *param)
static int generate_swc2(rsp_state *rsp, drcuml_block *block, compiler_state *compiler, const opcode_desc *desc) static int generate_swc2(rsp_state *rsp, drcuml_block *block, compiler_state *compiler, const opcode_desc *desc)
{ {
// int loopdest; // int loopdest;
UINT32 op = desc->opptr.l[0]; UINT32 op = desc->opptr.l[0];
int dest = (op >> 16) & 0x1f; int dest = (op >> 16) & 0x1f;
//int base = (op >> 21) & 0x1f; //int base = (op >> 21) & 0x1f;

View File

@ -827,11 +827,11 @@ static CPU_SET_INFO( unsp )
unsp_set_irq_line(unsp, state - CPUINFO_INT_INPUT_STATE, (int)info->i); unsp_set_irq_line(unsp, state - CPUINFO_INT_INPUT_STATE, (int)info->i);
break; break;
case CPUINFO_INT_REGISTER + UNSP_SP: UNSP_REG(SP) = info->i; break; case CPUINFO_INT_REGISTER + UNSP_SP: UNSP_REG(SP) = info->i; break;
case CPUINFO_INT_REGISTER + UNSP_R1: UNSP_REG(R1) = info->i; break; case CPUINFO_INT_REGISTER + UNSP_R1: UNSP_REG(R1) = info->i; break;
case CPUINFO_INT_REGISTER + UNSP_R2: UNSP_REG(R2) = info->i; break; case CPUINFO_INT_REGISTER + UNSP_R2: UNSP_REG(R2) = info->i; break;
case CPUINFO_INT_REGISTER + UNSP_R3: UNSP_REG(R3) = info->i; break; case CPUINFO_INT_REGISTER + UNSP_R3: UNSP_REG(R3) = info->i; break;
case CPUINFO_INT_REGISTER + UNSP_R4: UNSP_REG(R4) = info->i; break; case CPUINFO_INT_REGISTER + UNSP_R4: UNSP_REG(R4) = info->i; break;
case CPUINFO_INT_REGISTER + UNSP_BP: UNSP_REG(BP) = info->i; break; case CPUINFO_INT_REGISTER + UNSP_BP: UNSP_REG(BP) = info->i; break;
case CPUINFO_INT_REGISTER + UNSP_SR: UNSP_REG(SR) = info->i; break; case CPUINFO_INT_REGISTER + UNSP_SR: UNSP_REG(SR) = info->i; break;
case CPUINFO_INT_PC: /* Intentional fallthrough */ case CPUINFO_INT_PC: /* Intentional fallthrough */
@ -841,7 +841,7 @@ static CPU_SET_INFO( unsp )
break; break;
case CPUINFO_INT_REGISTER + UNSP_IRQ: unsp->irq = info->i; break; case CPUINFO_INT_REGISTER + UNSP_IRQ: unsp->irq = info->i; break;
case CPUINFO_INT_REGISTER + UNSP_FIQ: unsp->fiq = info->i; break; case CPUINFO_INT_REGISTER + UNSP_FIQ: unsp->fiq = info->i; break;
case CPUINFO_INT_REGISTER + UNSP_SB: unsp->sb = info->i; break; case CPUINFO_INT_REGISTER + UNSP_SB: unsp->sb = info->i; break;
} }
} }
@ -854,7 +854,7 @@ CPU_GET_INFO( unsp )
case CPUINFO_INT_CONTEXT_SIZE: info->i = sizeof(unsp_state); break; case CPUINFO_INT_CONTEXT_SIZE: info->i = sizeof(unsp_state); break;
case CPUINFO_INT_INPUT_LINES: info->i = 0; break; case CPUINFO_INT_INPUT_LINES: info->i = 0; break;
case CPUINFO_INT_DEFAULT_IRQ_VECTOR: info->i = 0; break; case CPUINFO_INT_DEFAULT_IRQ_VECTOR: info->i = 0; break;
case DEVINFO_INT_ENDIANNESS: info->i = ENDIANNESS_BIG; break; case DEVINFO_INT_ENDIANNESS: info->i = ENDIANNESS_BIG; break;
case CPUINFO_INT_CLOCK_MULTIPLIER: info->i = 1; break; case CPUINFO_INT_CLOCK_MULTIPLIER: info->i = 1; break;
case CPUINFO_INT_CLOCK_DIVIDER: info->i = 1; break; case CPUINFO_INT_CLOCK_DIVIDER: info->i = 1; break;
case CPUINFO_INT_MIN_INSTRUCTION_BYTES: info->i = 2; break; case CPUINFO_INT_MIN_INSTRUCTION_BYTES: info->i = 2; break;
@ -895,11 +895,11 @@ CPU_GET_INFO( unsp )
case CPUINFO_PTR_INSTRUCTION_COUNTER: info->icount = &unsp->icount; break; case CPUINFO_PTR_INSTRUCTION_COUNTER: info->icount = &unsp->icount; break;
/* --- the following bits of info are returned as NULL-terminated strings --- */ /* --- the following bits of info are returned as NULL-terminated strings --- */
case DEVINFO_STR_NAME: strcpy(info->s, "u'nSP"); break; case DEVINFO_STR_NAME: strcpy(info->s, "u'nSP"); break;
case DEVINFO_STR_FAMILY: strcpy(info->s, "u'nSP"); break; case DEVINFO_STR_FAMILY: strcpy(info->s, "u'nSP"); break;
case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break;
case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break;
case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break;
case CPUINFO_STR_FLAGS: strcpy(info->s, " "); break; case CPUINFO_STR_FLAGS: strcpy(info->s, " "); break;

View File

@ -1978,7 +1978,7 @@ int symtable_add(symbol_table *table, const char *name, const symbol_entry *entr
int strindex; int strindex;
int all_digits, i; int all_digits, i;
// assert_always(entry->table == table, "Mismatched symbol tables"); // assert_always(entry->table == table, "Mismatched symbol tables");
/* we cannot add numeric symbols */ /* we cannot add numeric symbols */
all_digits = TRUE; all_digits = TRUE;
@ -1990,7 +1990,7 @@ int symtable_add(symbol_table *table, const char *name, const symbol_entry *entr
break; break;
} }
} }
// assert_always(!all_digits, "All-digit symbols are not allowed"); // assert_always(!all_digits, "All-digit symbols are not allowed");
/* see if we already have an entry and just overwrite it if we do */ /* see if we already have an entry and just overwrite it if we do */
oldentry = (symbol_entry *)symtable_find(table, name); oldentry = (symbol_entry *)symtable_find(table, name);

View File

@ -357,7 +357,7 @@ public:
struct device_list struct device_list
{ {
device_config * head; /* head of the list */ device_config * head; /* head of the list */
tagmap_t<device_config *> map; /* map for fast lookups */ tagmap_t<device_config *> map; /* map for fast lookups */
}; };

View File

@ -168,7 +168,7 @@ private:
#define pool_alloc(_pool, _type) (_pool).add_object(new(__FILE__, __LINE__) _type) #define pool_alloc(_pool, _type) (_pool).add_object(new(__FILE__, __LINE__) _type)
#define pool_alloc_clear(_pool, _type) (_pool).add_object(new(__FILE__, __LINE__, zeromem) _type) #define pool_alloc_clear(_pool, _type) (_pool).add_object(new(__FILE__, __LINE__, zeromem) _type)
#define pool_alloc_array(_pool, _type, _num) (_pool).add_array(new(__FILE__, __LINE__) _type[_num], (_num)) #define pool_alloc_array(_pool, _type, _num) (_pool).add_array(new(__FILE__, __LINE__) _type[_num], (_num))
#define pool_alloc_array_clear(_pool, _type, _num) (_pool).add_array(new(__FILE__, __LINE__, zeromem) _type[_num], (_num)) #define pool_alloc_array_clear(_pool, _type, _num) (_pool).add_array(new(__FILE__, __LINE__, zeromem) _type[_num], (_num))
#define pool_free(_pool, v) (_pool).remove(v) #define pool_free(_pool, v) (_pool).remove(v)
// global allocation helpers // global allocation helpers

View File

@ -339,7 +339,7 @@ struct _memory_private
memory_block * memory_block_list; /* head of the list of memory blocks */ memory_block * memory_block_list; /* head of the list of memory blocks */
tagmap_t<bank_info *> bankmap; /* map for fast bank lookups */ tagmap_t<bank_info *> bankmap; /* map for fast bank lookups */
bank_info * banklist; /* data gathered for each bank */ bank_info * banklist; /* data gathered for each bank */
UINT8 banknext; /* next bank to allocate */ UINT8 banknext; /* next bank to allocate */
@ -1204,8 +1204,8 @@ void memory_set_bankptr(running_machine *machine, const char *tag, void *base)
fatalerror("memory_set_bankptr called for unknown bank '%s'", tag); fatalerror("memory_set_bankptr called for unknown bank '%s'", tag);
if (base == NULL) if (base == NULL)
fatalerror("memory_set_bankptr called NULL base"); fatalerror("memory_set_bankptr called NULL base");
// if (ALLOW_ONLY_AUTO_MALLOC_BANKS) // if (ALLOW_ONLY_AUTO_MALLOC_BANKS)
// validate_auto_malloc_memory(base, bank->byteend - bank->bytestart + 1); // validate_auto_malloc_memory(base, bank->byteend - bank->bytestart + 1);
/* set the base */ /* set the base */
memdata->bank_ptr[bank->index] = (UINT8 *)base; memdata->bank_ptr[bank->index] = (UINT8 *)base;

View File

@ -126,7 +126,7 @@ e0033 45 01 mov al,1
e0035 49 d3 06 mov [6d3],al e0035 49 d3 06 mov [6d3],al
0089 call 2a9d e0038 call e30a2 0089 call 2a9d e0038 call e30a2
2a9d ld hl,d0b3 e30a2 premov bw,[04a6] (1e -> bb) 2a9d ld hl,d0b3 e30a2 premov bw,[04a6] (1e -> bb)
2aa0 inc (hl) e30a5 inc b ptr[bw] 2aa0 inc (hl) e30a5 inc b ptr[bw]
2aa1 inc hl e30a8 inc bw 2aa1 inc hl e30a8 inc bw
2aa2 inc (hl) e30a9 inc b ptr[bw] 2aa2 inc (hl) e30a9 inc b ptr[bw]
@ -138,14 +138,14 @@ e0035 49 d3 06 mov [6d3],al
0c52 or a,a e003e and al,al 0c52 or a,a e003e and al,al
0c53 ret nz e0040 be e0083 0c53 ret nz e0040 be e0083
0c54 ld hl,d461 . 0c54 ld hl,d461 .
0c57 ld a,(d476) e0042 mov aw,[4b9] (68 -> a1) 0c57 ld a,(d476) e0042 mov aw,[4b9] (68 -> a1)
0c5a or a e0045 and aw,aw 0c5a or a e0045 and aw,aw
0c5b jr nz,0c6d e0047 be e0083 0c5b jr nz,0c6d e0047 be e0083
0c5d ld a,(hl) . 0c5d ld a,(hl) .
0c5e or a e0049 and al,al 0c5e or a e0049 and al,al
0c5f jr nz,0c71 e004b be e0054 0c5f jr nz,0c71 e004b be e0054
0c61 inc hl e004d dec al 0c61 inc hl e004d dec al
0c62 inc (hl) e004f mov [4b9],aw (4c -> a3) 0c62 inc (hl) e004f mov [4b9],aw (4c -> a3)
0c63 ld a,(hl) . 0c63 ld a,(hl) .
. e0052 br e0083 . e0052 br e0083
. e0054 and ah,ah . e0054 and ah,ah

View File

@ -535,7 +535,7 @@ static WRITE16_HANDLER( io_w )
// This seems to only be written after each irq1 and irq2, irq ack? // This seems to only be written after each irq1 and irq2, irq ack?
//logerror("irq wrote %04x\n", data); //logerror("irq wrote %04x\n", data);
//else //else
// LOG_UNKNOWN_WRITE // LOG_UNKNOWN_WRITE
break; break;
case 0xd4/2: case 0xd4/2:

View File

@ -171,7 +171,7 @@ static ADDRESS_MAP_START( begas_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x1002, 0x1002) AM_READ(test_r) AM_RANGE(0x1002, 0x1002) AM_READ(test_r)
AM_RANGE(0x1003, 0x1003) AM_READ(test_r) AM_RANGE(0x1003, 0x1003) AM_READ(test_r)
AM_RANGE(0x1001, 0x1001) AM_WRITENOP //??? AM_RANGE(0x1001, 0x1001) AM_WRITENOP //???
// AM_RANGE(0x1003, 0x1003) AM_READ_PORT("IN0") // AM_RANGE(0x1003, 0x1003) AM_READ_PORT("IN0")
AM_RANGE(0x1003, 0x1003) AM_WRITE(rblaster_vram_bank_w) //might be 1001 AM_RANGE(0x1003, 0x1003) AM_WRITE(rblaster_vram_bank_w) //might be 1001
AM_RANGE(0x1006, 0x1006) AM_NOP //ld status / command AM_RANGE(0x1006, 0x1006) AM_NOP //ld status / command
AM_RANGE(0x1007, 0x1007) AM_READWRITE(laserdisc_r,laserdisc_w) // ld data AM_RANGE(0x1007, 0x1007) AM_READWRITE(laserdisc_r,laserdisc_w) // ld data

View File

@ -154,16 +154,16 @@ Dumped by Grull Osgo
Location Device File ID Checksum Location Device File ID Checksum
---------------------------------------- ----------------------------------------
CPU 10A 27C128 a1.bin 9f26 [ CPU ROM ] CPU 10A 27C128 a1.bin 9f26 [ CPU ROM ]
CPU 6H 27C128 a2.bin 7ccc [ Character ] CPU 6H 27C128 a2.bin 7ccc [ Character ]
CPU 6K 27C128 a3.bin ba34 [ Character ] CPU 6K 27C128 a3.bin ba34 [ Character ]
LDP O7 27c128 a4.bin 2120 [ LDP Ctrl ] (Add-On Board "7-50A" on O7-O9-010 IC Sockets) LDP O7 27c128 a4.bin 2120 [ LDP Ctrl ] (Add-On Board "7-50A" on O7-O9-010 IC Sockets)
Notes: CPU - Main Board includes NTSC decoder, video Switch & Audio control. Notes: CPU - Main Board includes NTSC decoder, video Switch & Audio control.
No Model or Serial number on PCB. No Model or Serial number on PCB.
Uses a Pioneer LD-V2000 Laserdisc player. Uses a Pioneer LD-V2000 Laserdisc player.
The laserdisc player is modified - has a custom communication & audio cable (10 Wires Flat Cable). The laserdisc player is modified - has a custom communication & audio cable (10 Wires Flat Cable).
@ -191,18 +191,18 @@ Disk 1
------ ------
Sticker: Sticker:
09-251 A 09-251 A
HORSE RACE I HORSE RACE I
QUARTER HORSE QUARTER HORSE
(C) 1981 DALE FRANK RODESCH (C) 1981 DALE FRANK RODESCH
SAN DIEGO, CA USA SAN DIEGO, CA USA
Stamp on disk: Stamp on disk:
09-251A1-15 09-251A1-15
@ -211,37 +211,37 @@ Disk 2
Sticker: Sticker:
09251 1 09251 1
QUARTER HORSE QUARTER HORSE
VIDEO DISK VIDEO DISK
(C) 1981 DALE FRANK RODESCH (C) 1981 DALE FRANK RODESCH
Stamp on disk: Stamp on disk:
09-251A1-01 09-251A1-01
09-251 A 09-251 A
Disk 1 Disk 1
------ ------
Sticker: Sticker:
09-251 A 09-251 A
HORSE RACE I HORSE RACE I
QUARTER HORSE QUARTER HORSE
(C) 1981 DALE FRANK RODESCH (C) 1981 DALE FRANK RODESCH
Stamp on disk: Stamp on disk:
09-251A1-06 09-251A1-06
@ -1061,7 +1061,7 @@ ROM_START( quarterhb )
/* ??? colors */ /* ??? colors */
ROM_LOAD( "3a_50-1381_63s080n.bin",0x00, 0x20, CRC(451d0a72) SHA1(9ff6e2c5bd2b57bd607cb33e60e7ed25bea164b3) ) ROM_LOAD( "3a_50-1381_63s080n.bin",0x00, 0x20, CRC(451d0a72) SHA1(9ff6e2c5bd2b57bd607cb33e60e7ed25bea164b3) )
/* memory map */ /* memory map */
// ROM_LOAD( "7h_7602.bin",0x20, 0x20, BAD_DUMP CRC(451d0a72) SHA1(9ff6e2c5bd2b57bd607cb33e60e7ed25bea164b3) ) // ROM_LOAD( "7h_7602.bin",0x20, 0x20, BAD_DUMP CRC(451d0a72) SHA1(9ff6e2c5bd2b57bd607cb33e60e7ed25bea164b3) )
ROM_LOAD( "7h_bprom.bin",0x20, 0x20, BAD_DUMP CRC(c9618de2) SHA1(d5636546dbc57e6aab01dab79b2ead1dfef8fa5c) ) //taken from the other set, might be bad ROM_LOAD( "7h_bprom.bin",0x20, 0x20, BAD_DUMP CRC(c9618de2) SHA1(d5636546dbc57e6aab01dab79b2ead1dfef8fa5c) ) //taken from the other set, might be bad
DISK_REGION( "laserdisc" ) DISK_REGION( "laserdisc" )

View File

@ -168,15 +168,15 @@ static WRITE8_HANDLER( gunpey_blitter_w )
static ADDRESS_MAP_START( mem_map, ADDRESS_SPACE_PROGRAM, 16 ) static ADDRESS_MAP_START( mem_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x00000, 0x0ffff) AM_RAM AM_RANGE(0x00000, 0x0ffff) AM_RAM
// AM_RANGE(0x50000, 0x500ff) AM_RAM // AM_RANGE(0x50000, 0x500ff) AM_RAM
// AM_RANGE(0x50100, 0x502ff) AM_NOP // AM_RANGE(0x50100, 0x502ff) AM_NOP
AM_RANGE(0x80000, 0xfffff) AM_ROM AM_RANGE(0x80000, 0xfffff) AM_ROM
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 16 ) static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 16 )
AM_RANGE(0x7f40, 0x7f45) AM_READ8(gunpey_inputs_r,0xffff) AM_RANGE(0x7f40, 0x7f45) AM_READ8(gunpey_inputs_r,0xffff)
// AM_RANGE(0x7f48, 0x7f48) AM_WRITE(output_w) // AM_RANGE(0x7f48, 0x7f48) AM_WRITE(output_w)
AM_RANGE(0x7f80, 0x7f81) AM_DEVREADWRITE8("ymz", ymz280b_r, ymz280b_w, 0xffff) AM_RANGE(0x7f80, 0x7f81) AM_DEVREADWRITE8("ymz", ymz280b_r, ymz280b_w, 0xffff)
AM_RANGE(0x7f88, 0x7f89) AM_DEVREADWRITE8("oki", okim6295_r, okim6295_w, 0xff00) AM_RANGE(0x7f88, 0x7f89) AM_DEVREADWRITE8("oki", okim6295_r, okim6295_w, 0xff00)

View File

@ -2361,5 +2361,5 @@ GAME( 1998, xrally, hng64, hng64, hng64, hng64_race, ROT0, "SNK", "Xtreme R
GAME( 1998, bbust2, hng64, hng64, bbust2, hng64_shoot, ROT0, "SNK", "Beast Busters 2nd Nightmare", GAME_NOT_WORKING|GAME_NO_SOUND ) /* 004 */ GAME( 1998, bbust2, hng64, hng64, bbust2, hng64_shoot, ROT0, "SNK", "Beast Busters 2nd Nightmare", GAME_NOT_WORKING|GAME_NO_SOUND ) /* 004 */
GAME( 1998, sams64_2, hng64, hng64, hng64, ss64, ROT0, "SNK", "Samurai Shodown: Warrior's Rage / Samurai Spirits 2: Asura Zanmaden", GAME_NOT_WORKING|GAME_NO_SOUND ) /* 005 */ GAME( 1998, sams64_2, hng64, hng64, hng64, ss64, ROT0, "SNK", "Samurai Shodown: Warrior's Rage / Samurai Spirits 2: Asura Zanmaden", GAME_NOT_WORKING|GAME_NO_SOUND ) /* 005 */
GAME( 1998, fatfurwa, hng64, hng64, hng64, fatfurwa, ROT0, "SNK", "Fatal Fury: Wild Ambition (rev.A)", GAME_NOT_WORKING|GAME_NO_SOUND ) /* 006 */ GAME( 1998, fatfurwa, hng64, hng64, hng64, fatfurwa, ROT0, "SNK", "Fatal Fury: Wild Ambition (rev.A)", GAME_NOT_WORKING|GAME_NO_SOUND ) /* 006 */
GAME( 1999, buriki, hng64, hng64, hng64, fatfurwa, ROT0, "SNK", "Buriki One (rev.B)", GAME_NOT_WORKING|GAME_NO_SOUND ) /* 007 */ GAME( 1999, buriki, hng64, hng64, hng64, fatfurwa, ROT0, "SNK", "Buriki One (rev.B)", GAME_NOT_WORKING|GAME_NO_SOUND ) /* 007 */

View File

@ -287,7 +287,7 @@ static VIDEO_UPDATE( metalmx )
/* TODO: TMS34020 should take care of this */ /* TODO: TMS34020 should take care of this */
metalmx_state *state = (metalmx_state *)screen->machine->driver_data; metalmx_state *state = (metalmx_state *)screen->machine->driver_data;
// UINT32 *src_base = &gsp_vram[(vreg_base[0x40/4] & 0x40) ? 0x20000 : 0]; // UINT32 *src_base = &gsp_vram[(vreg_base[0x40/4] & 0x40) ? 0x20000 : 0];
UINT16 *src_base = state->gsp_vram; UINT16 *src_base = state->gsp_vram;
int y; int y;

View File

@ -86,9 +86,9 @@ static VIDEO_UPDATE(monzagp)
for(y=0;y<256;y++) for(y=0;y<256;y++)
{ {
for(x=0;x<256;x++) for(x=0;x<256;x++)
{ {
drawgfx_transpen(bitmap,cliprect,screen->machine->gfx[bank&1], drawgfx_transpen(bitmap,cliprect,screen->machine->gfx[bank&1],
vram[y*screenw+x], vram[y*screenw+x],
//(vram[y*screenw+x]&0x3f)+(bank>>1)*64, //(vram[y*screenw+x]&0x3f)+(bank>>1)*64,
0, 0,
0, 0, 0, 0,
@ -116,8 +116,8 @@ static WRITE8_HANDLER(port_w)
//vram[coordy*screenw+coordx]=data; //vram[coordy*screenw+coordx]=data;
//if(output==0xfe) //if(output==0xfe)
{ {
// if(data>='A' && data <='Z') // if(data>='A' && data <='Z')
// printf("%.2x %.2x %c %c\n",coordy, offset,data, znaki[data-'A']); // printf("%.2x %.2x %c %c\n",coordy, offset,data, znaki[data-'A']);
//vram[coordy*screenw+coordx]=data; //vram[coordy*screenw+coordx]=data;
vram[(coordx*256+coordy)&0x7ff]=data; vram[(coordx*256+coordy)&0x7ff]=data;
} }
@ -187,16 +187,16 @@ static WRITE8_HANDLER(port3_w)
/* /*
#define I8039_p0 0x100 #define I8039_p0 0x100
#define I8039_p1 0x101 #define I8039_p1 0x101
#define I8039_p2 0x102 #define I8039_p2 0x102
#define I8039_p4 0x104 #define I8039_p4 0x104
#define I8039_p5 0x105 #define I8039_p5 0x105
#define I8039_p6 0x106 #define I8039_p6 0x106
#define I8039_p7 0x107 #define I8039_p7 0x107
#define I8039_t0 0x110 #define I8039_t0 0x110
#define I8039_t1 0x111 #define I8039_t1 0x111
#define I8039_bus 0x120 #define I8039_bus 0x120
*/ */
static ADDRESS_MAP_START( monzagp_io, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( monzagp_io, ADDRESS_SPACE_IO, 8 )
@ -276,11 +276,11 @@ ROM_START( monzagp )
ROM_LOAD( "8.1f", 0x1400, 0x0400, CRC(99ce2753) SHA1(f4540700ea909ba1be34ac2c33dafd8ec67a2bb7) ) ROM_LOAD( "8.1f", 0x1400, 0x0400, CRC(99ce2753) SHA1(f4540700ea909ba1be34ac2c33dafd8ec67a2bb7) )
ROM_REGION( 0x10000, "unk1", 0 ) ROM_REGION( 0x10000, "unk1", 0 )
ROM_LOAD( "1.9c", 0x0000, 0x0400, CRC(005d5fed) SHA1(145a860751ef7d99129b7242aacac7a4e1e14a51) ) ROM_LOAD( "1.9c", 0x0000, 0x0400, CRC(005d5fed) SHA1(145a860751ef7d99129b7242aacac7a4e1e14a51) )
ROM_LOAD( "2", 0x0400, 0x0400, NO_DUMP ) ROM_LOAD( "2", 0x0400, 0x0400, NO_DUMP )
ROM_LOAD( "3.12f", 0x0800, 0x0400, CRC(e5591074) SHA1(ac756ee605d932d7c1c3eddbe2b9c6f78dad6ce8) ) ROM_LOAD( "3.12f", 0x0800, 0x0400, CRC(e5591074) SHA1(ac756ee605d932d7c1c3eddbe2b9c6f78dad6ce8) )
ROM_LOAD( "4.10f", 0x0c00, 0x0400, CRC(a426a371) SHA1(d6023bebf6924d1820e631ee53896100e5b256a5) ) ROM_LOAD( "4.10f", 0x0c00, 0x0400, CRC(a426a371) SHA1(d6023bebf6924d1820e631ee53896100e5b256a5) )
ROM_LOAD( "5.9f", 0x1000, 0x0400, CRC(5abd1ef6) SHA1(1bc79225c1be2821930fdb8e821a70c7ac8683ab) ) ROM_LOAD( "5.9f", 0x1000, 0x0400, CRC(5abd1ef6) SHA1(1bc79225c1be2821930fdb8e821a70c7ac8683ab) )
ROM_REGION( 0x0700, "proms", 0 ) ROM_REGION( 0x0700, "proms", 0 )
ROM_LOAD( "63s140.1", 0x0000, 0x0100, CRC(5123c83e) SHA1(d8ff06af421d3dae65bc9b0a081ed56249ef61ab) ) ROM_LOAD( "63s140.1", 0x0000, 0x0100, CRC(5123c83e) SHA1(d8ff06af421d3dae65bc9b0a081ed56249ef61ab) )

View File

@ -38,7 +38,7 @@
Multi Game 2 & III: 21 games included, hardware features MMC3 NES mapper and additional Multi Game 2 & III: 21 games included, hardware features MMC3 NES mapper and additional
RAM used by Super Mario Bros 3. RAM used by Super Mario Bros 3.
Multi Game (Tung Sheng Electronics): 10 games included, selectable by dip switches. Multi Game (Tung Sheng Electronics): 10 games included, selectable by dip switches.
*/ */
#include "emu.h" #include "emu.h"

View File

@ -471,7 +471,7 @@ P1KEY11 29|30 P2KEY11
KEY4 = 0x8000, // JAMMA P1 Up KEY4 = 0x8000, // JAMMA P1 Up
KEY5 = 0x4000, // JAMMA P1 Down KEY5 = 0x4000, // JAMMA P1 Down
KEY6 = 0x0010, // JAMMA P2 Left KEY6 = 0x0010, // JAMMA P2 Left
// KEY7 // KEY7
KEY8 = 0x1000, // JAMMA P1 Left KEY8 = 0x1000, // JAMMA P1 Left
KEY9 = 0x2000, // JAMMA P1 Right KEY9 = 0x2000, // JAMMA P1 Right
KEY10 = 0x0020, // JAMMA P2 Right KEY10 = 0x0020, // JAMMA P2 Right
@ -774,7 +774,7 @@ static INPUT_PORTS_START( mjgtaste )
PORT_BIT( 0x00010000, IP_ACTIVE_HIGH, IPT_MAHJONG_CHI ) PORT_PLAYER(1) PORT_BIT( 0x00010000, IP_ACTIVE_HIGH, IPT_MAHJONG_CHI ) PORT_PLAYER(1)
PORT_BIT( 0x00020000, IP_ACTIVE_HIGH, IPT_MAHJONG_REACH ) PORT_PLAYER(1) PORT_BIT( 0x00020000, IP_ACTIVE_HIGH, IPT_MAHJONG_REACH ) PORT_PLAYER(1)
PORT_BIT( 0x00040000, IP_ACTIVE_HIGH, IPT_MAHJONG_RON ) PORT_PLAYER(1) PORT_BIT( 0x00040000, IP_ACTIVE_HIGH, IPT_MAHJONG_RON ) PORT_PLAYER(1)
// PORT_BIT( 0x00080000, IP_ACTIVE_HIGH, IPT_START1 ) /* start on panel, hacked in from the regular one to avoid duplicates in the UI */ // PORT_BIT( 0x00080000, IP_ACTIVE_HIGH, IPT_START1 ) /* start on panel, hacked in from the regular one to avoid duplicates in the UI */
PORT_START("JP4") /* jumper pads on the PCB */ PORT_START("JP4") /* jumper pads on the PCB */
// PORT_DIPNAME( 0x03000000, 0x01000000, DEF_STR( Region ) ) // PORT_DIPNAME( 0x03000000, 0x01000000, DEF_STR( Region ) )

View File

@ -6702,9 +6702,9 @@ static const gfx_layout superbar_layout =
{ 0,1,2,3,4,5,6,7, { 0,1,2,3,4,5,6,7,
64,65,66,67,68,69,70,71 }, 64,65,66,67,68,69,70,71 },
{ 0*8, 2*8, 16*8, 18*8, { 0*8, 2*8, 16*8, 18*8,
1*8, 3*8, 17*8, 19*8, 1*8, 3*8, 17*8, 19*8,
4*8, 6*8, 20*8, 22*8, 4*8, 6*8, 20*8, 22*8,
5*8, 7*8, 21*8, 23*8 }, 5*8, 7*8, 21*8, 23*8 },
16*16 16*16
}; };

View File

@ -859,40 +859,40 @@ ROM_START( sureshot )
ROM_END ROM_END
/* /*
Etched in copper on back COPYRIGHT SMS 1983 Etched in copper on back COPYRIGHT SMS 1983
mfg corp mfg corp
S/N A-872 A-872 was etched S/N A-872 A-872 was etched
MADE IN USA MADE IN USA
Etched in copper on front REV 03 Etched in copper on front REV 03
Silkscreened on top P/N 1001 Silkscreened on top P/N 1001
.16 2764 handwritten sticker U16 .16 2764 handwritten sticker U16
.17 2764 handwritten sticker U17 .17 2764 handwritten sticker U17
.18 2764 handwritten sticker U18 .18 2764 handwritten sticker U18
.19 2764 handwritten sticker U19 .19 2764 handwritten sticker U19
.26 2732 handwritten sticker #26 .26 2732 handwritten sticker #26
.32 pal10l8 green dot sticker with 32 written on it .32 pal10l8 green dot sticker with 32 written on it
.52 pal10l8 blue dot sticker with 52 written on it .52 pal10l8 blue dot sticker with 52 written on it
.58 pal10l8 3 blue dot stickers with 58 written on one .58 pal10l8 3 blue dot stickers with 58 written on one
.40 pal10l8 red dot sticker with 40 written on it .40 pal10l8 red dot sticker with 40 written on it
.39 pal10l8 3 green dot stickers with 39 written on one .39 pal10l8 3 green dot stickers with 39 written on one
.38 pal10l8 3 blue dot stickers with 38 written on one .38 pal10l8 3 blue dot stickers with 38 written on one
.80 pal10l8 2 blue dot stickers with 80 written on one .80 pal10l8 2 blue dot stickers with 80 written on one
.94 pal14h4 2 green dot stickers with 94 written on one - was getting different values for each read .94 pal14h4 2 green dot stickers with 94 written on one - was getting different values for each read
.109 pal14h4 2 brown dot stickers with 109 written on one .109 pal14h4 2 brown dot stickers with 109 written on one
.110 pal10l8 2 red dot stickers with 110 written on one .110 pal10l8 2 red dot stickers with 110 written on one
.128 pal10h8 1 blue, 1 brown, and another blue dot sticker with 128 written on the first blue one .128 pal10h8 1 blue, 1 brown, and another blue dot sticker with 128 written on the first blue one
.129 pal10h8 1 green and 1 red dot sticker .129 pal10h8 1 green and 1 red dot sticker
.130 pal10h8 3 red dot stickers with 130 written on one .130 pal10h8 3 red dot stickers with 130 written on one
.140 pal14h4 1 brown sticker with 140 written on it .140 pal14h4 1 brown sticker with 140 written on it
.141 pal14h4 1 brown sticker with 141 written on it .141 pal14h4 1 brown sticker with 141 written on it
.142 pal14h4 1 brown sticker with 142 written on it .142 pal14h4 1 brown sticker with 142 written on it
.143 pal14h4 1 brown sticker with 143 written on it .143 pal14h4 1 brown sticker with 143 written on it
.144 pal14h4 1 brown sticker with 144 written on it .144 pal14h4 1 brown sticker with 144 written on it
.145 pal14h4 1 brown sticker with 145 written on it .145 pal14h4 1 brown sticker with 145 written on it
*/ */
ROM_START( secondch ) ROM_START( secondch )

View File

@ -299,7 +299,7 @@ static ADDRESS_MAP_START( atamanot_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0800, 0x08ff) AM_WRITE(ssingles_colorram_w) AM_RANGE(0x0800, 0x08ff) AM_WRITE(ssingles_colorram_w)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4000, 0x47ff) AM_RAM
// AM_RANGE(0x6000, 0x60ff) AM_RAM //kanji tilemap? // AM_RANGE(0x6000, 0x60ff) AM_RAM //kanji tilemap?
AM_RANGE(0x6000, 0x7fff) AM_ROM AM_REGION("question",0) AM_RANGE(0x6000, 0x7fff) AM_ROM AM_REGION("question",0)
AM_RANGE(0x8000, 0x9fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ( c000_r ) AM_RANGE(0xc000, 0xc000) AM_READ( c000_r )
@ -451,33 +451,33 @@ atamanot kanji gfx decoding:
static const gfx_layout layout_16x16 = static const gfx_layout layout_16x16 =
{ {
16,16, 16,16,
RGN_FRAC(1,4), RGN_FRAC(1,4),
1, 1,
{ 0 }, { 0 },
{ 0, 1, 2, 3, 4, 5, 6, 7, { 0, 1, 2, 3, 4, 5, 6, 7,
RGN_FRAC(1,4)+0, RGN_FRAC(1,4)+1, RGN_FRAC(1,4)+2, RGN_FRAC(1,4)+3, RGN_FRAC(1,4)+4, RGN_FRAC(1,4)+5, RGN_FRAC(1,4)+6, RGN_FRAC(1,4)+7 }, RGN_FRAC(1,4)+0, RGN_FRAC(1,4)+1, RGN_FRAC(1,4)+2, RGN_FRAC(1,4)+3, RGN_FRAC(1,4)+4, RGN_FRAC(1,4)+5, RGN_FRAC(1,4)+6, RGN_FRAC(1,4)+7 },
{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8, { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8,
RGN_FRAC(2,4)+0*8, RGN_FRAC(2,4)+1*8, RGN_FRAC(2,4)+2*8, RGN_FRAC(2,4)+3*8, RGN_FRAC(2,4)+4*8, RGN_FRAC(2,4)+5*8, RGN_FRAC(2,4)+6*8, RGN_FRAC(2,4)+7*8 }, RGN_FRAC(2,4)+0*8, RGN_FRAC(2,4)+1*8, RGN_FRAC(2,4)+2*8, RGN_FRAC(2,4)+3*8, RGN_FRAC(2,4)+4*8, RGN_FRAC(2,4)+5*8, RGN_FRAC(2,4)+6*8, RGN_FRAC(2,4)+7*8 },
8*8 8*8
}; };
static const gfx_layout layout_8x16 = static const gfx_layout layout_8x16 =
{ {
8,16, 8,16,
RGN_FRAC(1,2), RGN_FRAC(1,2),
1, 1,
{ 0 }, { 0 },
{ 0, 1, 2, 3, 4, 5, 6, 7 }, { 0, 1, 2, 3, 4, 5, 6, 7 },
{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8, { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8,
RGN_FRAC(2,4)+0*8, RGN_FRAC(2,4)+1*8, RGN_FRAC(2,4)+2*8, RGN_FRAC(2,4)+3*8, RGN_FRAC(2,4)+4*8, RGN_FRAC(2,4)+5*8, RGN_FRAC(2,4)+6*8, RGN_FRAC(2,4)+7*8 }, RGN_FRAC(2,4)+0*8, RGN_FRAC(2,4)+1*8, RGN_FRAC(2,4)+2*8, RGN_FRAC(2,4)+3*8, RGN_FRAC(2,4)+4*8, RGN_FRAC(2,4)+5*8, RGN_FRAC(2,4)+6*8, RGN_FRAC(2,4)+7*8 },
8*8 8*8
}; };
GFXDECODE_ENTRY( "kanji", 0, layout_16x16, 0, 8 ) GFXDECODE_ENTRY( "kanji", 0, layout_16x16, 0, 8 )
GFXDECODE_ENTRY( "kanji_uc", 0, layout_8x16, 0, 8 ) GFXDECODE_ENTRY( "kanji_uc", 0, layout_8x16, 0, 8 )
GFXDECODE_ENTRY( "kanji_lc", 0, layout_8x16, 0, 8 ) GFXDECODE_ENTRY( "kanji_lc", 0, layout_8x16, 0, 8 )
It looks "stolen" from an unknown Japanese computer? It looks "stolen" from an unknown Japanese computer?
*/ */

View File

@ -699,7 +699,7 @@ static WRITE16_HANDLER( driveout_sound_command_w )
static WRITE16_HANDLER( cchip2_word_w ) static WRITE16_HANDLER( cchip2_word_w )
{ {
taitof2_state *state = (taitof2_state *)space->machine->driver_data; taitof2_state *state = (taitof2_state *)space->machine->driver_data;
logerror("cchip2_w pc: %06x offset %04x: %02x\n", cpu_get_pc(space->cpu), offset, data); logerror("cchip2_w pc: %06x offset %04x: %02x\n", cpu_get_pc(space->cpu), offset, data);
@ -708,7 +708,7 @@ static WRITE16_HANDLER( cchip2_word_w )
static READ16_HANDLER( cchip2_word_r ) static READ16_HANDLER( cchip2_word_r )
{ {
taitof2_state *state = (taitof2_state *)space->machine->driver_data; taitof2_state *state = (taitof2_state *)space->machine->driver_data;
/* C-Chip ID */ /* C-Chip ID */
if (offset == 0x401) if (offset == 0x401)

View File

@ -1447,7 +1447,7 @@ static READ16_HANDLER( taitoz_msb_sound_r )
/**** sound pan control ****/ /**** sound pan control ****/
static WRITE8_HANDLER( taitoz_pancontrol ) static WRITE8_HANDLER( taitoz_pancontrol )
{ {
// taitoz_state *state = (taitoz_state *)space->machine->driver_data; // taitoz_state *state = (taitoz_state *)space->machine->driver_data;
static const char *const fltname[] = { "2610.1.r", "2610.1.l", "2610.2.r", "2610.2.l" }; static const char *const fltname[] = { "2610.1.r", "2610.1.l", "2610.2.r", "2610.2.l" };
offset = offset & 3; offset = offset & 3;

View File

@ -64,7 +64,7 @@ ROM_START( vega )
ROM_LOAD( "rom7.bin", 0x0000, 0x0800, CRC(1de564cd) SHA1(7408cd29f1afc111aa695ecb00160d8f7fba7532) ) ROM_LOAD( "rom7.bin", 0x0000, 0x0800, CRC(1de564cd) SHA1(7408cd29f1afc111aa695ecb00160d8f7fba7532) )
ROM_LOAD( "rom8.bin", 0x0000, 0x0800, CRC(ccb8598c) SHA1(8c4a702f0653bb189db7d8ac4c2a06aacecc0de0) ) ROM_LOAD( "rom8.bin", 0x0000, 0x0800, CRC(ccb8598c) SHA1(8c4a702f0653bb189db7d8ac4c2a06aacecc0de0) )
ROM_LOAD( "rom9.bin", 0x0000, 0x0800, CRC(191c73cd) SHA1(17b1c3790f82b276e55d25ea8a38a3c9cf20bf12) ) ROM_LOAD( "rom9.bin", 0x0000, 0x0800, CRC(191c73cd) SHA1(17b1c3790f82b276e55d25ea8a38a3c9cf20bf12) )
//ROM_LOAD( "rom10.bin", 0x0000, 0x1000, CRC(c7659222) SHA1(86df4f4afe5bfd0b67239353a344724405c32fed) ) // 1ST AND 2ND HALF IDENTICAL //ROM_LOAD( "rom10.bin", 0x0000, 0x1000, CRC(c7659222) SHA1(86df4f4afe5bfd0b67239353a344724405c32fed) ) // 1ST AND 2ND HALF IDENTICAL
ROM_LOAD( "rom10a.bin", 0x0000, 0x1000, CRC(fca9a570) SHA1(598772db11b32518ed6bf5155a19f4f1761a4831) ) // if you convert the ascii dump there is different data in the 2nd half unlike the above dump (it also appears in the ascii dumps of 11/12 too tho) ROM_LOAD( "rom10a.bin", 0x0000, 0x1000, CRC(fca9a570) SHA1(598772db11b32518ed6bf5155a19f4f1761a4831) ) // if you convert the ascii dump there is different data in the 2nd half unlike the above dump (it also appears in the ascii dumps of 11/12 too tho)
ROM_LOAD( "rom11.bin", 0x0000, 0x0800, CRC(d1896f77) SHA1(5b80bf7aa81508edfae4fa583b4b0077575a300c) ) ROM_LOAD( "rom11.bin", 0x0000, 0x0800, CRC(d1896f77) SHA1(5b80bf7aa81508edfae4fa583b4b0077575a300c) )
ROM_LOAD( "rom12.bin", 0x0000, 0x0800, CRC(f5f1df2f) SHA1(5851b468702e5e4f085b64afbe7d8b797bb109b5) ) ROM_LOAD( "rom12.bin", 0x0000, 0x0800, CRC(f5f1df2f) SHA1(5851b468702e5e4f085b64afbe7d8b797bb109b5) )

View File

@ -8,7 +8,7 @@ typedef struct _asuka_state asuka_state;
struct _asuka_state struct _asuka_state
{ {
/* memory pointers */ /* memory pointers */
// UINT16 * paletteram; // this currently uses generic palette handlers // UINT16 * paletteram; // this currently uses generic palette handlers
/* video-related */ /* video-related */
UINT16 video_ctrl; UINT16 video_ctrl;

View File

@ -18,8 +18,8 @@ struct _gijoe_state
int avac_vrc, sprite_colorbase; int avac_vrc, sprite_colorbase;
/* misc */ /* misc */
UINT16 cur_control2; UINT16 cur_control2;
emu_timer *dmadelay_timer; emu_timer *dmadelay_timer;
/* devices */ /* devices */
const device_config *maincpu; const device_config *maincpu;

View File

@ -8,7 +8,7 @@ typedef struct _rastan_state rastan_state;
struct _rastan_state struct _rastan_state
{ {
/* memory pointers */ /* memory pointers */
// UINT16 * paletteram; // this currently uses generic palette handlers // UINT16 * paletteram; // this currently uses generic palette handlers
/* video-related */ /* video-related */
UINT16 sprite_ctrl; UINT16 sprite_ctrl;

View File

@ -5,7 +5,7 @@ struct _taitob_state
/* memory pointers */ /* memory pointers */
UINT16 * spriteram; UINT16 * spriteram;
UINT16 * pixelram; UINT16 * pixelram;
// UINT16 * paletteram; // this currently uses generic palette handlers // UINT16 * paletteram; // this currently uses generic palette handlers
/* video-related */ /* video-related */
/* framebuffer is a raw bitmap, remapped as a last step */ /* framebuffer is a raw bitmap, remapped as a last step */

View File

@ -27,7 +27,7 @@ struct _taitof2_state
int sprite_type; int sprite_type;
UINT16 spritebank[8]; UINT16 spritebank[8];
// UINT16 spritebank_eof[8]; // UINT16 spritebank_eof[8];
UINT16 spritebank_buffered[8]; UINT16 spritebank_buffered[8];
INT32 sprites_disabled, sprites_active_area, sprites_master_scrollx, sprites_master_scrolly; INT32 sprites_disabled, sprites_active_area, sprites_master_scrollx, sprites_master_scrolly;

View File

@ -10,7 +10,7 @@ struct _volfied_state
/* memory pointers */ /* memory pointers */
UINT16 * video_ram; UINT16 * video_ram;
UINT8 * cchip_ram; UINT8 * cchip_ram;
// UINT16 * paletteram; // this currently uses generic palette handlers // UINT16 * paletteram; // this currently uses generic palette handlers
/* video-related */ /* video-related */
UINT16 video_ctrl; UINT16 video_ctrl;

View File

@ -1763,6 +1763,6 @@ void cave_get_sprite_info( running_machine *machine )
static STATE_POSTLOAD( cave_sprite_postload ) static STATE_POSTLOAD( cave_sprite_postload )
{ {
/* FIXME: this is probably not enough to restore sprites, but anyway saves do not /* FIXME: this is probably not enough to restore sprites, but anyway saves do not
currently work due to pending timers hence it is hard to test what is missing */ currently work due to pending timers hence it is hard to test what is missing */
cave_get_sprite_info(machine); cave_get_sprite_info(machine);
} }

View File

@ -2050,7 +2050,7 @@ void recoverPolygonBlock(running_machine* machine, const UINT16* packet, struct
// Debug - Colors polygons with certain flags bright blue! ajg // Debug - Colors polygons with certain flags bright blue! ajg
//if (chunkOffset[2] & 0x00f0) //if (chunkOffset[2] & 0x00f0)
// polys[*numPolys].debugColor = 0xff0000ff; // polys[*numPolys].debugColor = 0xff0000ff;
// Debug - ajg // Debug - ajg
//printf("%d (%08x) : %04x %04x %04x ", k, address[k]*3*2, chunkOffset[0], chunkOffset[1], chunkOffset[2]); //printf("%d (%08x) : %04x %04x %04x ", k, address[k]*3*2, chunkOffset[0], chunkOffset[1], chunkOffset[2]);

View File

@ -370,7 +370,7 @@ VIDEO_UPDATE( taitoair )
if (state->line_ram[0x3fff]) if (state->line_ram[0x3fff])
{ {
int adr = 0x3fff; int adr = 0x3fff;
// struct taitoair_poly q; // struct taitoair_poly q;
while (adr >= 0 && state->line_ram[adr] && state->line_ram[adr] != 0x4000) while (adr >= 0 && state->line_ram[adr] && state->line_ram[adr] != 0x4000)
{ {

View File

@ -102,7 +102,7 @@ static void debugwin_show(int show)
void (*f)(GtkWidget *widget) = show ? gtk_widget_show : gtk_widget_hide; void (*f)(GtkWidget *widget) = show ? gtk_widget_show : gtk_widget_hide;
if(dmain) { if(dmain) {
f(dmain->win); f(dmain->win);
// dview_set_updatable(dmain->console_w, show); // dview_set_updatable(dmain->console_w, show);
} }
for(p1 = memorywin_list; p1; p1 = p1->next) for(p1 = memorywin_list; p1; p1 = p1->next)
f(p1->win); f(p1->win);
@ -375,7 +375,7 @@ static void debugmain_init(running_machine *machine)
debug_view_begin_update(dmain->disasm); debug_view_begin_update(dmain->disasm);
disasm_view_set_expression(dmain->disasm, "curpc"); disasm_view_set_expression(dmain->disasm, "curpc");
// debug_view_set_property_UINT32(dmain->disasm, DVP_DASM_TRACK_LIVE, 1); // debug_view_set_property_UINT32(dmain->disasm, DVP_DASM_TRACK_LIVE, 1);
debug_view_end_update(dmain->disasm); debug_view_end_update(dmain->disasm);
g_signal_connect(dmain->win, "destroy", G_CALLBACK(debugmain_destroy), dmain); g_signal_connect(dmain->win, "destroy", G_CALLBACK(debugmain_destroy), dmain);
@ -587,7 +587,7 @@ static void disasmwin_new(running_machine *machine)
debug_view_begin_update(dis->disasm); debug_view_begin_update(dis->disasm);
disasm_view_set_expression(dis->disasm, "curpc"); disasm_view_set_expression(dis->disasm, "curpc");
// debug_view_set_property_UINT32(dis->disasm, DVP_DASM_TRACK_LIVE, 1); // debug_view_set_property_UINT32(dis->disasm, DVP_DASM_TRACK_LIVE, 1);
debug_view_end_update(dis->disasm); debug_view_end_update(dis->disasm);
// populate the combobox // populate the combobox
@ -613,7 +613,7 @@ static void disasmwin_new(running_machine *machine)
g_signal_connect(lookup_widget(dis->win, "enc_opcodes"), "activate", G_CALLBACK(disasmwin_enc_opcodes_activate), dis); g_signal_connect(lookup_widget(dis->win, "enc_opcodes"), "activate", G_CALLBACK(disasmwin_enc_opcodes_activate), dis);
g_signal_connect(lookup_widget(dis->win, "comments"), "activate", G_CALLBACK(disasmwin_comments_activate), dis); g_signal_connect(lookup_widget(dis->win, "comments"), "activate", G_CALLBACK(disasmwin_comments_activate), dis);
// g_signal_connect(dis->edit_w, "activate", G_CALLBACK(disasmwin_process_string), dis); // g_signal_connect(dis->edit_w, "activate", G_CALLBACK(disasmwin_process_string), dis);
g_signal_connect(dis->win, "destroy", G_CALLBACK(disasmwin_destroy), dis); g_signal_connect(dis->win, "destroy", G_CALLBACK(disasmwin_destroy), dis);
gtk_widget_show_all(dis->win); gtk_widget_show_all(dis->win);
} }

View File

@ -124,12 +124,12 @@ struct _texture_info
typedef struct _sdl_info sdl_info; typedef struct _sdl_info sdl_info;
struct _sdl_info struct _sdl_info
{ {
INT32 blittimer; INT32 blittimer;
UINT32 extra_flags; UINT32 extra_flags;
texture_info * texlist; // list of active textures texture_info * texlist; // list of active textures
INT32 texture_max_width; // texture maximum width INT32 texture_max_width; // texture maximum width
INT32 texture_max_height; // texture maximum height INT32 texture_max_height; // texture maximum height
float last_hofs; float last_hofs;
float last_vofs; float last_vofs;
@ -189,78 +189,78 @@ static texture_info * texture_update(sdl_window_info *window, const render_primi
static copy_info blit_info_default[] = static copy_info blit_info_default[] =
{ {
/* no rotation */ /* no rotation */
ENTRY(ARGB32, ARGB8888, 4, 0, NULL), ENTRY(ARGB32, ARGB8888, 4, 0, NULL),
ENTRY_LR(ARGB32, RGB888, 4, 0, argb32_rgb32), ENTRY_LR(ARGB32, RGB888, 4, 0, argb32_rgb32),
/* Entry for primarily for directfb */ /* Entry for primarily for directfb */
ENTRY_BM(ARGB32, RGB888, 4, 0, argb32_rgb32, SDL_BLENDMODE_ADD), ENTRY_BM(ARGB32, RGB888, 4, 0, argb32_rgb32, SDL_BLENDMODE_ADD),
ENTRY_BM(ARGB32, RGB888, 4, 0, argb32_rgb32, SDL_BLENDMODE_MOD), ENTRY_BM(ARGB32, RGB888, 4, 0, argb32_rgb32, SDL_BLENDMODE_MOD),
ENTRY_BM(ARGB32, RGB888, 4, 0, argb32_rgb32, SDL_BLENDMODE_NONE), ENTRY_BM(ARGB32, RGB888, 4, 0, argb32_rgb32, SDL_BLENDMODE_NONE),
ENTRY(RGB32, ARGB8888, 4, 0, rgb32_argb32), ENTRY(RGB32, ARGB8888, 4, 0, rgb32_argb32),
ENTRY(RGB32, RGB888, 4, 0, NULL), ENTRY(RGB32, RGB888, 4, 0, NULL),
ENTRY(RGB32_PALETTED, ARGB8888, 4, 0, rgb32pal_argb32), ENTRY(RGB32_PALETTED, ARGB8888, 4, 0, rgb32pal_argb32),
ENTRY(RGB32_PALETTED, RGB888, 4, 0, rgb32pal_argb32), ENTRY(RGB32_PALETTED, RGB888, 4, 0, rgb32pal_argb32),
ENTRY(YUY16, UYVY, 2, 0, NULL /* yuv16_uyvy*/), ENTRY(YUY16, UYVY, 2, 0, NULL /* yuv16_uyvy*/),
ENTRY(YUY16, YUY2, 2, 0, yuv16_yuy2), ENTRY(YUY16, YUY2, 2, 0, yuv16_yuy2),
ENTRY(YUY16, YVYU, 2, 0, yuv16_yvyu), ENTRY(YUY16, YVYU, 2, 0, yuv16_yvyu),
ENTRY(YUY16, ARGB8888, 4, 0, yuv16_argb32), ENTRY(YUY16, ARGB8888, 4, 0, yuv16_argb32),
ENTRY(YUY16, RGB888, 4, 0, yuv16pal_argb32), ENTRY(YUY16, RGB888, 4, 0, yuv16pal_argb32),
ENTRY(YUY16_PALETTED, UYVY, 2, 0, yuv16pal_uyvy), ENTRY(YUY16_PALETTED, UYVY, 2, 0, yuv16pal_uyvy),
ENTRY(YUY16_PALETTED, YUY2, 2, 0, yuv16pal_yuy2), ENTRY(YUY16_PALETTED, YUY2, 2, 0, yuv16pal_yuy2),
ENTRY(YUY16_PALETTED, YVYU, 2, 0, yuv16pal_yvyu), ENTRY(YUY16_PALETTED, YVYU, 2, 0, yuv16pal_yvyu),
ENTRY(YUY16_PALETTED, ARGB8888, 4, 0, yuv16pal_argb32), ENTRY(YUY16_PALETTED, ARGB8888, 4, 0, yuv16pal_argb32),
ENTRY(YUY16_PALETTED, RGB888, 4, 0, yuv16pal_argb32), ENTRY(YUY16_PALETTED, RGB888, 4, 0, yuv16pal_argb32),
ENTRY(PALETTE16, ARGB8888, 4, 0, pal16_argb32), ENTRY(PALETTE16, ARGB8888, 4, 0, pal16_argb32),
ENTRY(PALETTE16, RGB888, 4, 0, pal16_argb32), ENTRY(PALETTE16, RGB888, 4, 0, pal16_argb32),
ENTRY(RGB15, RGB555, 2, 0, NULL /* rgb15_argb1555 */), ENTRY(RGB15, RGB555, 2, 0, NULL /* rgb15_argb1555 */),
ENTRY(RGB15, ARGB1555, 2, 0, rgb15_argb1555), ENTRY(RGB15, ARGB1555, 2, 0, rgb15_argb1555),
ENTRY(RGB15, ARGB8888, 4, 0, rgb15_argb32), ENTRY(RGB15, ARGB8888, 4, 0, rgb15_argb32),
ENTRY(RGB15, RGB888, 4, 0, rgb15_argb32), ENTRY(RGB15, RGB888, 4, 0, rgb15_argb32),
ENTRY(RGB15_PALETTED, ARGB8888, 4, 0, rgb15pal_argb32), ENTRY(RGB15_PALETTED, ARGB8888, 4, 0, rgb15pal_argb32),
ENTRY(RGB15_PALETTED, RGB888, 4, 0, rgb15pal_argb32), ENTRY(RGB15_PALETTED, RGB888, 4, 0, rgb15pal_argb32),
ENTRY(PALETTE16A, ARGB8888, 4, 0, pal16a_argb32), ENTRY(PALETTE16A, ARGB8888, 4, 0, pal16a_argb32),
ENTRY(PALETTE16A, RGB888, 4, 0, pal16a_rgb32), ENTRY(PALETTE16A, RGB888, 4, 0, pal16a_rgb32),
/* rotation */ /* rotation */
ENTRY(ARGB32, ARGB8888, 4, 1, rot_argb32_argb32), ENTRY(ARGB32, ARGB8888, 4, 1, rot_argb32_argb32),
ENTRY_LR(ARGB32, RGB888, 4, 1, rot_argb32_rgb32), ENTRY_LR(ARGB32, RGB888, 4, 1, rot_argb32_rgb32),
/* Entry for primarily for directfb */ /* Entry for primarily for directfb */
ENTRY_BM(ARGB32, RGB888, 4, 1, rot_argb32_rgb32, SDL_BLENDMODE_ADD), ENTRY_BM(ARGB32, RGB888, 4, 1, rot_argb32_rgb32, SDL_BLENDMODE_ADD),
ENTRY_BM(ARGB32, RGB888, 4, 1, rot_argb32_rgb32, SDL_BLENDMODE_MOD), ENTRY_BM(ARGB32, RGB888, 4, 1, rot_argb32_rgb32, SDL_BLENDMODE_MOD),
ENTRY_BM(ARGB32, RGB888, 4, 1, rot_argb32_rgb32, SDL_BLENDMODE_NONE), ENTRY_BM(ARGB32, RGB888, 4, 1, rot_argb32_rgb32, SDL_BLENDMODE_NONE),
ENTRY(RGB32, ARGB8888, 4, 1, rot_rgb32_argb32), ENTRY(RGB32, ARGB8888, 4, 1, rot_rgb32_argb32),
ENTRY(RGB32, RGB888, 4, 1, rot_argb32_argb32), ENTRY(RGB32, RGB888, 4, 1, rot_argb32_argb32),
ENTRY(RGB32_PALETTED, ARGB8888, 4, 1, rot_rgb32pal_argb32), ENTRY(RGB32_PALETTED, ARGB8888, 4, 1, rot_rgb32pal_argb32),
ENTRY(RGB32_PALETTED, RGB888, 4, 1, rot_rgb32pal_argb32), ENTRY(RGB32_PALETTED, RGB888, 4, 1, rot_rgb32pal_argb32),
ENTRY(YUY16, ARGB8888, 4, 1, rot_yuv16_argb32), ENTRY(YUY16, ARGB8888, 4, 1, rot_yuv16_argb32),
ENTRY(YUY16, RGB888, 4, 1, rot_yuv16_argb32), ENTRY(YUY16, RGB888, 4, 1, rot_yuv16_argb32),
ENTRY(YUY16_PALETTED, ARGB8888, 4, 1, rot_yuv16pal_argb32), ENTRY(YUY16_PALETTED, ARGB8888, 4, 1, rot_yuv16pal_argb32),
ENTRY(YUY16_PALETTED, RGB888, 4, 1, rot_yuv16pal_argb32), ENTRY(YUY16_PALETTED, RGB888, 4, 1, rot_yuv16pal_argb32),
ENTRY(PALETTE16, ARGB8888, 4, 1, rot_pal16_argb32), ENTRY(PALETTE16, ARGB8888, 4, 1, rot_pal16_argb32),
ENTRY(PALETTE16, RGB888, 4, 1, rot_pal16_argb32), ENTRY(PALETTE16, RGB888, 4, 1, rot_pal16_argb32),
ENTRY(RGB15, RGB555, 2, 1, rot_rgb15_argb1555), ENTRY(RGB15, RGB555, 2, 1, rot_rgb15_argb1555),
ENTRY(RGB15, ARGB1555, 2, 1, rot_rgb15_argb1555), ENTRY(RGB15, ARGB1555, 2, 1, rot_rgb15_argb1555),
ENTRY(RGB15, ARGB8888, 4, 1, rot_rgb15_argb32), ENTRY(RGB15, ARGB8888, 4, 1, rot_rgb15_argb32),
ENTRY(RGB15, RGB888, 4, 1, rot_rgb15_argb32), ENTRY(RGB15, RGB888, 4, 1, rot_rgb15_argb32),
ENTRY(RGB15_PALETTED, ARGB8888, 4, 1, rot_rgb15pal_argb32), ENTRY(RGB15_PALETTED, ARGB8888, 4, 1, rot_rgb15pal_argb32),
ENTRY(RGB15_PALETTED, RGB888, 4, 1, rot_rgb15pal_argb32), ENTRY(RGB15_PALETTED, RGB888, 4, 1, rot_rgb15pal_argb32),
ENTRY(PALETTE16A, ARGB8888, 4, 1, rot_pal16a_argb32), ENTRY(PALETTE16A, ARGB8888, 4, 1, rot_pal16a_argb32),
ENTRY(PALETTE16A, RGB888, 4, 1, rot_pal16a_rgb32), ENTRY(PALETTE16A, RGB888, 4, 1, rot_pal16a_rgb32),
{ -1 }, { -1 },
}; };
@ -268,18 +268,18 @@ static copy_info blit_info_default[] =
static copy_info blit_info_16bpp[] = static copy_info blit_info_16bpp[] =
{ {
/* no rotation */ /* no rotation */
ENTRY(PALETTE16, RGB555, 2, 0, pal16_argb1555), ENTRY(PALETTE16, RGB555, 2, 0, pal16_argb1555),
ENTRY(PALETTE16, ARGB1555, 2, 0, pal16_argb1555), ENTRY(PALETTE16, ARGB1555, 2, 0, pal16_argb1555),
ENTRY(RGB15_PALETTED, RGB555, 2, 0, rgb15pal_argb1555), ENTRY(RGB15_PALETTED, RGB555, 2, 0, rgb15pal_argb1555),
ENTRY(RGB15_PALETTED, ARGB1555, 2, 0, rgb15pal_argb1555), ENTRY(RGB15_PALETTED, ARGB1555, 2, 0, rgb15pal_argb1555),
/* rotation */ /* rotation */
ENTRY(PALETTE16, RGB555, 2, 1, rot_pal16_argb1555), ENTRY(PALETTE16, RGB555, 2, 1, rot_pal16_argb1555),
ENTRY(PALETTE16, ARGB1555, 2, 1, rot_pal16_argb1555), ENTRY(PALETTE16, ARGB1555, 2, 1, rot_pal16_argb1555),
ENTRY(RGB15_PALETTED, RGB555, 2, 1, rot_rgb15pal_argb1555), ENTRY(RGB15_PALETTED, RGB555, 2, 1, rot_rgb15pal_argb1555),
ENTRY(RGB15_PALETTED, ARGB1555, 2, 1, rot_rgb15pal_argb1555), ENTRY(RGB15_PALETTED, ARGB1555, 2, 1, rot_rgb15pal_argb1555),
{ -1 }, { -1 },
}; };
@ -322,7 +322,7 @@ INLINE Uint32 map_blendmode(int blendmode)
return SDL_BLENDMODE_ADD; return SDL_BLENDMODE_ADD;
default: default:
mame_printf_warning("Unknown Blendmode %d", blendmode); mame_printf_warning("Unknown Blendmode %d", blendmode);
} }
return SDL_BLENDMODE_NONE; return SDL_BLENDMODE_NONE;
} }

View File

@ -205,7 +205,7 @@ struct _texture_info
typedef struct _sdl_info sdl_info; typedef struct _sdl_info sdl_info;
struct _sdl_info struct _sdl_info
{ {
INT32 blittimer; INT32 blittimer;
UINT32 extra_flags; UINT32 extra_flags;
#if (SDL_VERSION_ATLEAST(1,3,0)) #if (SDL_VERSION_ATLEAST(1,3,0))
@ -219,8 +219,8 @@ struct _sdl_info
// 3D info (GL mode only) // 3D info (GL mode only)
texture_info * texlist; // list of active textures texture_info * texlist; // list of active textures
int last_blendmode; // previous blendmode int last_blendmode; // previous blendmode
INT32 texture_max_width; // texture maximum width INT32 texture_max_width; // texture maximum width
INT32 texture_max_height; // texture maximum height INT32 texture_max_height; // texture maximum height
int texpoweroftwo; // must textures be power-of-2 sized? int texpoweroftwo; // must textures be power-of-2 sized?
int usevbo; // runtime check if VBO is available int usevbo; // runtime check if VBO is available
int usepbo; // runtime check if PBO is available int usepbo; // runtime check if PBO is available
@ -248,8 +248,8 @@ struct _sdl_info
float last_vofs; float last_vofs;
// Static vars from draogl_window_dra // Static vars from draogl_window_dra
INT32 surf_w; INT32 surf_w;
INT32 surf_h; INT32 surf_h;
GLfloat texVerticex[8]; GLfloat texVerticex[8];
}; };
@ -307,7 +307,7 @@ INLINE void set_blendmode(sdl_info *sdl, int blendmode)
glEnable(GL_BLEND); glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE); glBlendFunc(GL_SRC_ALPHA, GL_ONE);
break; break;
} }
sdl->last_blendmode = blendmode; sdl->last_blendmode = blendmode;
} }
@ -455,8 +455,8 @@ static void loadgl_functions(void)
int err_count = 0; int err_count = 0;
/* the following is tricky ... #func will be expanded to glBegin /* the following is tricky ... #func will be expanded to glBegin
* while func will be expanded to disp_p->glBegin * while func will be expanded to disp_p->glBegin
*/ */
#define OSD_GL(ret,func,params) \ #define OSD_GL(ret,func,params) \
if (!( func = (ret (APIENTRY *)params) SDL_GL_GetProcAddress( #func ) )) \ if (!( func = (ret (APIENTRY *)params) SDL_GL_GetProcAddress( #func ) )) \
@ -484,9 +484,9 @@ static void load_gl_lib(void)
if (!dll_loaded) if (!dll_loaded)
{ {
/* /*
* directfb and and x11 use this env var * directfb and and x11 use this env var
* SDL_VIDEO_GL_DRIVER * SDL_VIDEO_GL_DRIVER
*/ */
const char *stemp; const char *stemp;
stemp = options_get_string(mame_options(), SDLOPTION_GL_LIB); stemp = options_get_string(mame_options(), SDLOPTION_GL_LIB);
@ -497,8 +497,8 @@ static void load_gl_lib(void)
{ {
fatalerror("Unable to load opengl library: %s\n", stemp ? stemp : "<default>"); fatalerror("Unable to load opengl library: %s\n", stemp ? stemp : "<default>");
} }
mame_printf_verbose("Loaded opengl shared library: %s\n", stemp ? stemp : "<default>"); mame_printf_verbose("Loaded opengl shared library: %s\n", stemp ? stemp : "<default>");
/* FIXME: must be freed as well */ /* FIXME: must be freed as well */
gl_dispatch = (osd_gl_dispatch *) osd_malloc(sizeof(osd_gl_dispatch)); gl_dispatch = (osd_gl_dispatch *) osd_malloc(sizeof(osd_gl_dispatch));
dll_loaded=1; dll_loaded=1;
} }
@ -614,8 +614,8 @@ static int drawogl_window_create(sdl_window_info *window, int width, int height)
sdl->texture_max_height = 64; sdl->texture_max_height = 64;
/* load any GL function addresses /* load any GL function addresses
* this must be done here because we need a context * this must be done here because we need a context
*/ */
loadgl_functions(); loadgl_functions();
extstr = (char *)glGetString(GL_EXTENSIONS); extstr = (char *)glGetString(GL_EXTENSIONS);
@ -1249,9 +1249,9 @@ static int drawogl_window_draw(sdl_window_info *window, UINT32 dc, int update)
// //
// (0,0) (w,0) // (0,0) (w,0)
// |~~~~~~~~~| // |~~~~~~~~~|
// | | // | |
// | | // | |
// | | // | |
// |_________| // |_________|
// (0,h) (w,h) // (0,h) (w,h)
@ -1312,9 +1312,9 @@ static int drawogl_window_draw(sdl_window_info *window, UINT32 dc, int update)
switch (prim->type) switch (prim->type)
{ {
/** /**
* Try to stay in one Begin/End block as long as possible, * Try to stay in one Begin/End block as long as possible,
* since entering and leaving one is most expensive.. * since entering and leaving one is most expensive..
*/ */
case RENDER_PRIMITIVE_LINE: case RENDER_PRIMITIVE_LINE:
#if !USE_WIN32_STYLE_LINES #if !USE_WIN32_STYLE_LINES
// check if it's really a point // check if it's really a point
@ -1416,8 +1416,8 @@ static int drawogl_window_draw(sdl_window_info *window, UINT32 dc, int update)
if (a > 1.0) a = 1.0; if (a > 1.0) a = 1.0;
glColor4f(r, g, b, a); glColor4f(r, g, b, a);
// texture = texture_update(window, prim, 0); // texture = texture_update(window, prim, 0);
// if (texture) printf("line has texture!\n"); // if (texture) printf("line has texture!\n");
// if we have a texture to use for the vectors, use it here // if we have a texture to use for the vectors, use it here
#if 0 #if 0
@ -2050,18 +2050,18 @@ static int texture_shader_create(sdl_window_info *window,
} }
/** /**
* We experience some GLSL LUT calculation inaccuracy on some GL drivers. * We experience some GLSL LUT calculation inaccuracy on some GL drivers.
* while using the correct lut calculations. * while using the correct lut calculations.
* This error is due to the color index value to GLSL/texture passing process: * This error is due to the color index value to GLSL/texture passing process:
* mame:uint16_t -> OpenGL: GLfloat(alpha texture) -> GLSL:uint16_t (value regeneration) * mame:uint16_t -> OpenGL: GLfloat(alpha texture) -> GLSL:uint16_t (value regeneration)
* The latter inaccurate uint16_t value regeneration is buggy on some drivers/cards, * The latter inaccurate uint16_t value regeneration is buggy on some drivers/cards,
* therefor we always widen the lut size to pow2, * therefor we always widen the lut size to pow2,
* and shape it equaly into 2D space (max texture size restriction). * and shape it equaly into 2D space (max texture size restriction).
* This is a practical GL driver workaround to minimize the chance for * This is a practical GL driver workaround to minimize the chance for
* floating point arithmetic errors in the GLSL engine. * floating point arithmetic errors in the GLSL engine.
* *
* Shape the lut texture to achieve texture max size compliance and equal 2D partitioning * Shape the lut texture to achieve texture max size compliance and equal 2D partitioning
*/ */
lut_texture_width = sqrt((double)(texture->lut_table_width)); lut_texture_width = sqrt((double)(texture->lut_table_width));
lut_texture_width = get_valid_pow2_value (lut_texture_width, 1); lut_texture_width = get_valid_pow2_value (lut_texture_width, 1);
@ -2075,9 +2075,9 @@ static int texture_shader_create(sdl_window_info *window,
texture->lut_table_width = lut_texture_width; texture->lut_table_width = lut_texture_width;
/** /**
* always use pow2 for LUT, to minimize the chance for floating point arithmetic errors * always use pow2 for LUT, to minimize the chance for floating point arithmetic errors
* (->buggy GLSL engine) * (->buggy GLSL engine)
*/ */
lut_table_height_pow2 = get_valid_pow2_value (texture->lut_table_height, 1 /* texture->texpow2 */); lut_table_height_pow2 = get_valid_pow2_value (texture->lut_table_height, 1 /* texture->texpow2 */);
lut_table_width_pow2 = get_valid_pow2_value (texture->lut_table_width, 1 /* texture->texpow2 */); lut_table_width_pow2 = get_valid_pow2_value (texture->lut_table_width, 1 /* texture->texpow2 */);

View File

@ -42,7 +42,7 @@ typedef struct _sdl_scale_mode sdl_scale_mode;
typedef struct _sdl_info sdl_info; typedef struct _sdl_info sdl_info;
struct _sdl_info struct _sdl_info
{ {
INT32 blittimer; INT32 blittimer;
UINT32 extra_flags; UINT32 extra_flags;
#if (SDL_VERSION_ATLEAST(1,3,0)) #if (SDL_VERSION_ATLEAST(1,3,0))
@ -54,7 +54,7 @@ struct _sdl_info
#endif #endif
// YUV overlay // YUV overlay
UINT32 *yuv_lookup; UINT32 *yuv_lookup;
UINT16 *yuv_bitmap; UINT16 *yuv_bitmap;
// if we leave scaling to SDL and the underlying driver, this // if we leave scaling to SDL and the underlying driver, this
@ -749,7 +749,7 @@ static int drawsdl_window_draw(sdl_window_info *window, UINT32 dc, int update)
// do not crash if the window's smaller than the blit area // do not crash if the window's smaller than the blit area
if (blitheight > ch) if (blitheight > ch)
{ {
blitheight = ch; blitheight = ch;
} }
else if (video_config.centerv) else if (video_config.centerv)
{ {
@ -758,7 +758,7 @@ static int drawsdl_window_draw(sdl_window_info *window, UINT32 dc, int update)
if (blitwidth > cw) if (blitwidth > cw)
{ {
blitwidth = cw; blitwidth = cw;
} }
else if (video_config.centerh) else if (video_config.centerh)
{ {
@ -969,7 +969,7 @@ static void yuv_lookup_set(sdl_info *sdl, unsigned int pen, unsigned char red,
RGB2YUV(red,green,blue,y,u,v); RGB2YUV(red,green,blue,y,u,v);
/* Storing this data in YUYV order simplifies using the data for /* Storing this data in YUYV order simplifies using the data for
YUY2, both with and without smoothing... */ YUY2, both with and without smoothing... */
sdl->yuv_lookup[pen]=(y<<Y1SHIFT)|(u<<USHIFT)|(y<<Y2SHIFT)|(v<<VSHIFT); sdl->yuv_lookup[pen]=(y<<Y1SHIFT)|(u<<USHIFT)|(y<<Y2SHIFT)|(v<<VSHIFT);
} }

View File

@ -85,8 +85,8 @@ static GLhandleARB glsl_mamebm_programs [GLSL_SHADER_TYPE_NUMBER][GLSL_SHADER_FE
*/ */
static int glsl_mamebm_fsh2vsh[GLSL_SHADER_FEAT_MAX_NUMBER] = static int glsl_mamebm_fsh2vsh[GLSL_SHADER_FEAT_MAX_NUMBER] =
{ {
0, // plain -> general 0, // plain -> general
0, // bilinear -> general 0, // bilinear -> general
1, // custom -> custom 1, // custom -> custom
}; };

View File

@ -15,15 +15,15 @@
* Visit http://www.gnu.org/copyleft/gpl.html * Visit http://www.gnu.org/copyleft/gpl.html
* *
* MAME license: * MAME license:
* Visit http://mamedev.org for licensing and usage restrictions. * Visit http://mamedev.org for licensing and usage restrictions.
* *
* *
* OpenGL GLSL ARB extentions: * OpenGL GLSL ARB extentions:
* *
* GL_ARB_shader_objects * GL_ARB_shader_objects
* GL_ARB_shading_language_100 * GL_ARB_shading_language_100
* GL_ARB_vertex_shader * GL_ARB_vertex_shader
* GL_ARB_fragment_shader * GL_ARB_fragment_shader
* *
*/ */

View File

@ -15,15 +15,15 @@
* Visit http://www.gnu.org/copyleft/gpl.html * Visit http://www.gnu.org/copyleft/gpl.html
* *
* MAME license: * MAME license:
* Visit http://mamedev.org for licensing and usage restrictions. * Visit http://mamedev.org for licensing and usage restrictions.
* *
* *
* OpenGL GLSL ARB extentions: * OpenGL GLSL ARB extentions:
* *
* GL_ARB_shader_objects * GL_ARB_shader_objects
* GL_ARB_shading_language_100 * GL_ARB_shading_language_100
* GL_ARB_vertex_shader * GL_ARB_vertex_shader
* GL_ARB_fragment_shader * GL_ARB_fragment_shader
* *
*/ */
@ -110,7 +110,7 @@ int gl_round_to_pow2(int v);
* @param obj_query Can be either GL_OBJECT_TYPE_ARB, GL_OBJECT_DELETE_STATUS_ARB, GL_OBJECT_COMPILE_STATUS_ARB, * @param obj_query Can be either GL_OBJECT_TYPE_ARB, GL_OBJECT_DELETE_STATUS_ARB, GL_OBJECT_COMPILE_STATUS_ARB,
* GL_OBJECT_LINK_STATUS_ARB, GL_OBJECT_VALIDATE_STATUS_ARB * GL_OBJECT_LINK_STATUS_ARB, GL_OBJECT_VALIDATE_STATUS_ARB
* Should be used after the refering action, i.e. GL_OBJECT_DELETE_STATUS_ARB after a * Should be used after the refering action, i.e. GL_OBJECT_DELETE_STATUS_ARB after a
* glDeleteObjectARB call, etc. * glDeleteObjectARB call, etc.
*/ */
int gl_shader_check_error(GLhandleARB obj, GLenum obj_query, GLSLCheckMode m, const char *file, const int line); int gl_shader_check_error(GLhandleARB obj, GLenum obj_query, GLSLCheckMode m, const char *file, const int line);

View File

@ -74,7 +74,7 @@ enum
typedef struct _keyboard_state keyboard_state; typedef struct _keyboard_state keyboard_state;
struct _keyboard_state struct _keyboard_state
{ {
INT32 state[0x3ff]; // must be INT32! INT32 state[0x3ff]; // must be INT32!
INT8 oldkey[MAX_KEYS]; INT8 oldkey[MAX_KEYS];
INT8 currkey[MAX_KEYS]; INT8 currkey[MAX_KEYS];
}; };
@ -106,7 +106,7 @@ struct _device_info
// device information // device information
device_info ** head; device_info ** head;
device_info * next; device_info * next;
char * name; char * name;
// MAME information // MAME information
input_device * device; input_device * device;
@ -132,7 +132,7 @@ static UINT8 input_paused;
static sdl_window_info * focus_window = NULL; static sdl_window_info * focus_window = NULL;
// input buffer - only for SDLMAME_EVENTS_IN_WORKER_THREAD // input buffer - only for SDLMAME_EVENTS_IN_WORKER_THREAD
#define MAX_BUF_EVENTS (500) /* 100 not enough for SDL 1.3 */ #define MAX_BUF_EVENTS (500) /* 100 not enough for SDL 1.3 */
static SDL_Event event_buf[MAX_BUF_EVENTS]; static SDL_Event event_buf[MAX_BUF_EVENTS];
static int event_buf_count; static int event_buf_count;
@ -201,10 +201,10 @@ typedef struct _kt_table kt_table;
struct _kt_table { struct _kt_table {
INT32 mame_key; INT32 mame_key;
INT32 sdl_key; INT32 sdl_key;
//const char * vkey; //const char * vkey;
//const char * ascii; //const char * ascii;
const char * mame_key_name; const char * mame_key_name;
char * ui_name; char * ui_name;
}; };
#if (SDL_VERSION_ATLEAST(1,3,0)) #if (SDL_VERSION_ATLEAST(1,3,0))
@ -226,18 +226,18 @@ struct _kt_table {
static kt_table sdl_key_trans_table[] = static kt_table sdl_key_trans_table[] =
{ {
// MAME key SDL key vkey ascii // MAME key SDL key vkey ascii
KTT_ENTRY0( ESC, ESCAPE, 0x1b, 0x1b, "ESC" ), KTT_ENTRY0( ESC, ESCAPE, 0x1b, 0x1b, "ESC" ),
KTT_ENTRY1( 1, 1 ), KTT_ENTRY1( 1, 1 ),
KTT_ENTRY1( 2, 2 ), KTT_ENTRY1( 2, 2 ),
KTT_ENTRY1( 3, 3 ), KTT_ENTRY1( 3, 3 ),
KTT_ENTRY1( 4, 4 ), KTT_ENTRY1( 4, 4 ),
KTT_ENTRY1( 5, 5 ), KTT_ENTRY1( 5, 5 ),
KTT_ENTRY1( 6, 6 ), KTT_ENTRY1( 6, 6 ),
KTT_ENTRY1( 7, 7 ), KTT_ENTRY1( 7, 7 ),
KTT_ENTRY1( 8, 8 ), KTT_ENTRY1( 8, 8 ),
KTT_ENTRY1( 9, 9 ), KTT_ENTRY1( 9, 9 ),
KTT_ENTRY1( 0, 0 ), KTT_ENTRY1( 0, 0 ),
KTT_ENTRY0( MINUS, MINUS, 0xbd, '-', "MINUS" ), KTT_ENTRY0( MINUS, MINUS, 0xbd, '-', "MINUS" ),
KTT_ENTRY0( EQUALS, EQUALS, 0xbb, '=', "EQUALS" ), KTT_ENTRY0( EQUALS, EQUALS, 0xbb, '=', "EQUALS" ),
KTT_ENTRY0( BACKSPACE, BACKSPACE, 0x08, 0x08, "BACKSPACE" ), KTT_ENTRY0( BACKSPACE, BACKSPACE, 0x08, 0x08, "BACKSPACE" ),
@ -252,9 +252,9 @@ static kt_table sdl_key_trans_table[] =
KTT_ENTRY1( I, I ), KTT_ENTRY1( I, I ),
KTT_ENTRY1( O, O ), KTT_ENTRY1( O, O ),
KTT_ENTRY1( P, P ), KTT_ENTRY1( P, P ),
KTT_ENTRY0( OPENBRACE, LEFTBRACKET, 0xdb, '[', "OPENBRACE" ), KTT_ENTRY0( OPENBRACE, LEFTBRACKET, 0xdb, '[', "OPENBRACE" ),
KTT_ENTRY0( CLOSEBRACE,RIGHTBRACKET, 0xdd, ']', "CLOSEBRACE" ), KTT_ENTRY0( CLOSEBRACE,RIGHTBRACKET, 0xdd, ']', "CLOSEBRACE" ),
KTT_ENTRY0( ENTER, RETURN, 0x0d, 0x0d, "RETURN" ), KTT_ENTRY0( ENTER, RETURN, 0x0d, 0x0d, "RETURN" ),
KTT_ENTRY2( LCONTROL, LCTRL ), KTT_ENTRY2( LCONTROL, LCTRL ),
KTT_ENTRY1( A, A ), KTT_ENTRY1( A, A ),
KTT_ENTRY1( S, S ), KTT_ENTRY1( S, S ),
@ -267,8 +267,8 @@ static kt_table sdl_key_trans_table[] =
KTT_ENTRY1( L, L ), KTT_ENTRY1( L, L ),
KTT_ENTRY0( COLON, SEMICOLON, 0xba, ';', "COLON" ), KTT_ENTRY0( COLON, SEMICOLON, 0xba, ';', "COLON" ),
KTT_ENTRY0( QUOTE, APOSTROPHE, 0xde, '\'', "QUOTE" ), KTT_ENTRY0( QUOTE, APOSTROPHE, 0xde, '\'', "QUOTE" ),
KTT_ENTRY2( LSHIFT, LSHIFT ), KTT_ENTRY2( LSHIFT, LSHIFT ),
KTT_ENTRY0( BACKSLASH, BACKSLASH, 0xdc, '\\', "BACKSLASH" ), KTT_ENTRY0( BACKSLASH, BACKSLASH, 0xdc, '\\', "BACKSLASH" ),
KTT_ENTRY1( Z, Z ), KTT_ENTRY1( Z, Z ),
KTT_ENTRY1( X, X ), KTT_ENTRY1( X, X ),
KTT_ENTRY1( C, C ), KTT_ENTRY1( C, C ),
@ -276,26 +276,26 @@ static kt_table sdl_key_trans_table[] =
KTT_ENTRY1( B, B ), KTT_ENTRY1( B, B ),
KTT_ENTRY1( N, N ), KTT_ENTRY1( N, N ),
KTT_ENTRY1( M, M ), KTT_ENTRY1( M, M ),
KTT_ENTRY0( COMMA, COMMA, 0xbc, ',', "COMMA" ), KTT_ENTRY0( COMMA, COMMA, 0xbc, ',', "COMMA" ),
KTT_ENTRY0( STOP, PERIOD, 0xbe, '.', "STOP" ), KTT_ENTRY0( STOP, PERIOD, 0xbe, '.', "STOP" ),
KTT_ENTRY0( SLASH, SLASH, 0xbf, '/', "SLASH" ), KTT_ENTRY0( SLASH, SLASH, 0xbf, '/', "SLASH" ),
KTT_ENTRY2( RSHIFT, RSHIFT ), KTT_ENTRY2( RSHIFT, RSHIFT ),
KTT_ENTRY0( ASTERISK, KP_MULTIPLY, '*', '*', "ASTERIX" ), KTT_ENTRY0( ASTERISK, KP_MULTIPLY, '*', '*', "ASTERIX" ),
KTT_ENTRY2( LALT, LALT ), KTT_ENTRY2( LALT, LALT ),
KTT_ENTRY0( SPACE, SPACE, ' ', ' ', "SPACE" ), KTT_ENTRY0( SPACE, SPACE, ' ', ' ', "SPACE" ),
KTT_ENTRY2( CAPSLOCK, CAPSLOCK ), KTT_ENTRY2( CAPSLOCK, CAPSLOCK ),
KTT_ENTRY2( F1, F1 ), KTT_ENTRY2( F1, F1 ),
KTT_ENTRY2( F2, F2 ), KTT_ENTRY2( F2, F2 ),
KTT_ENTRY2( F3, F3 ), KTT_ENTRY2( F3, F3 ),
KTT_ENTRY2( F4, F4 ), KTT_ENTRY2( F4, F4 ),
KTT_ENTRY2( F5, F5 ), KTT_ENTRY2( F5, F5 ),
KTT_ENTRY2( F6, F6 ), KTT_ENTRY2( F6, F6 ),
KTT_ENTRY2( F7, F7 ), KTT_ENTRY2( F7, F7 ),
KTT_ENTRY2( F8, F8 ), KTT_ENTRY2( F8, F8 ),
KTT_ENTRY2( F9, F9 ), KTT_ENTRY2( F9, F9 ),
KTT_ENTRY2( F10, F10 ), KTT_ENTRY2( F10, F10 ),
KTT_ENTRY2( NUMLOCK, NUMLOCKCLEAR ), KTT_ENTRY2( NUMLOCK, NUMLOCKCLEAR ),
KTT_ENTRY2( SCRLOCK, SCROLLLOCK ), KTT_ENTRY2( SCRLOCK, SCROLLLOCK ),
KTT_ENTRY2( 7_PAD, KP_7 ), KTT_ENTRY2( 7_PAD, KP_7 ),
KTT_ENTRY2( 8_PAD, KP_8 ), KTT_ENTRY2( 8_PAD, KP_8 ),
KTT_ENTRY2( 9_PAD, KP_9 ), KTT_ENTRY2( 9_PAD, KP_9 ),
@ -303,35 +303,35 @@ static kt_table sdl_key_trans_table[] =
KTT_ENTRY2( 4_PAD, KP_4 ), KTT_ENTRY2( 4_PAD, KP_4 ),
KTT_ENTRY2( 5_PAD, KP_5 ), KTT_ENTRY2( 5_PAD, KP_5 ),
KTT_ENTRY2( 6_PAD, KP_6 ), KTT_ENTRY2( 6_PAD, KP_6 ),
KTT_ENTRY2( PLUS_PAD, KP_PLUS ), KTT_ENTRY2( PLUS_PAD, KP_PLUS ),
KTT_ENTRY2( 1_PAD, KP_1 ), KTT_ENTRY2( 1_PAD, KP_1 ),
KTT_ENTRY2( 2_PAD, KP_2 ), KTT_ENTRY2( 2_PAD, KP_2 ),
KTT_ENTRY2( 3_PAD, KP_3 ), KTT_ENTRY2( 3_PAD, KP_3 ),
KTT_ENTRY2( 0_PAD, KP_0 ), KTT_ENTRY2( 0_PAD, KP_0 ),
KTT_ENTRY2( DEL_PAD, KP_PERIOD ), KTT_ENTRY2( DEL_PAD, KP_PERIOD ),
KTT_ENTRY2( F11, F11 ), KTT_ENTRY2( F11, F11 ),
KTT_ENTRY2( F12, F12 ), KTT_ENTRY2( F12, F12 ),
KTT_ENTRY2( F13, F13 ), KTT_ENTRY2( F13, F13 ),
KTT_ENTRY2( F14, F14 ), KTT_ENTRY2( F14, F14 ),
KTT_ENTRY2( F15, F15 ), KTT_ENTRY2( F15, F15 ),
KTT_ENTRY2( ENTER_PAD, KP_ENTER ), KTT_ENTRY2( ENTER_PAD, KP_ENTER ),
KTT_ENTRY2( RCONTROL, RCTRL ), KTT_ENTRY2( RCONTROL, RCTRL ),
KTT_ENTRY2( SLASH_PAD, KP_DIVIDE ), KTT_ENTRY2( SLASH_PAD, KP_DIVIDE ),
KTT_ENTRY2( PRTSCR, PRINTSCREEN ), KTT_ENTRY2( PRTSCR, PRINTSCREEN ),
KTT_ENTRY2( RALT, RALT ), KTT_ENTRY2( RALT, RALT ),
KTT_ENTRY2( HOME, HOME ), KTT_ENTRY2( HOME, HOME ),
KTT_ENTRY2( UP, UP ), KTT_ENTRY2( UP, UP ),
KTT_ENTRY2( PGUP, PAGEUP ), KTT_ENTRY2( PGUP, PAGEUP ),
KTT_ENTRY2( LEFT, LEFT ), KTT_ENTRY2( LEFT, LEFT ),
KTT_ENTRY2( RIGHT, RIGHT ), KTT_ENTRY2( RIGHT, RIGHT ),
KTT_ENTRY2( END, END ), KTT_ENTRY2( END, END ),
KTT_ENTRY2( DOWN, DOWN ), KTT_ENTRY2( DOWN, DOWN ),
KTT_ENTRY2( PGDN, PAGEDOWN ), KTT_ENTRY2( PGDN, PAGEDOWN ),
KTT_ENTRY2( INSERT, INSERT ), KTT_ENTRY2( INSERT, INSERT ),
{ ITEM_ID_DEL, SDL_SCANCODE_DELETE, "ITEM_ID_DEL", (char *)"DELETE" }, { ITEM_ID_DEL, SDL_SCANCODE_DELETE, "ITEM_ID_DEL", (char *)"DELETE" },
KTT_ENTRY2( LWIN, LGUI ), KTT_ENTRY2( LWIN, LGUI ),
KTT_ENTRY2( RWIN, RGUI ), KTT_ENTRY2( RWIN, RGUI ),
KTT_ENTRY2( MENU, MENU ), KTT_ENTRY2( MENU, MENU ),
KTT_ENTRY0( TILDE, GRAVE, 0xc0, '`', "TILDE" ), KTT_ENTRY0( TILDE, GRAVE, 0xc0, '`', "TILDE" ),
KTT_ENTRY0( BACKSLASH2, NONUSBACKSLASH, 0xdc, '\\', "BACKSLASH2" ), KTT_ENTRY0( BACKSLASH2, NONUSBACKSLASH, 0xdc, '\\', "BACKSLASH2" ),
{ -1 } { -1 }
@ -351,18 +351,18 @@ static kt_table sdl_key_trans_table[] =
static kt_table sdl_key_trans_table[] = static kt_table sdl_key_trans_table[] =
{ {
// MAME key SDL key vkey ascii // MAME key SDL key vkey ascii
KTT_ENTRY0( ESC, ESCAPE, 0x1b, 0x1b, "ESC" ), KTT_ENTRY0( ESC, ESCAPE, 0x1b, 0x1b, "ESC" ),
KTT_ENTRY1( 1, 1 ), KTT_ENTRY1( 1, 1 ),
KTT_ENTRY1( 2, 2 ), KTT_ENTRY1( 2, 2 ),
KTT_ENTRY1( 3, 3 ), KTT_ENTRY1( 3, 3 ),
KTT_ENTRY1( 4, 4 ), KTT_ENTRY1( 4, 4 ),
KTT_ENTRY1( 5, 5 ), KTT_ENTRY1( 5, 5 ),
KTT_ENTRY1( 6, 6 ), KTT_ENTRY1( 6, 6 ),
KTT_ENTRY1( 7, 7 ), KTT_ENTRY1( 7, 7 ),
KTT_ENTRY1( 8, 8 ), KTT_ENTRY1( 8, 8 ),
KTT_ENTRY1( 9, 9 ), KTT_ENTRY1( 9, 9 ),
KTT_ENTRY1( 0, 0 ), KTT_ENTRY1( 0, 0 ),
KTT_ENTRY0( MINUS, MINUS, 0xbd, '-', "MINUS" ), KTT_ENTRY0( MINUS, MINUS, 0xbd, '-', "MINUS" ),
KTT_ENTRY0( EQUALS, EQUALS, 0xbb, '=', "EQUALS" ), KTT_ENTRY0( EQUALS, EQUALS, 0xbb, '=', "EQUALS" ),
KTT_ENTRY0( BACKSPACE, BACKSPACE, 0x08, 0x08, "BACKSPACE" ), KTT_ENTRY0( BACKSPACE, BACKSPACE, 0x08, 0x08, "BACKSPACE" ),
@ -377,9 +377,9 @@ static kt_table sdl_key_trans_table[] =
KTT_ENTRY1( I, i ), KTT_ENTRY1( I, i ),
KTT_ENTRY1( O, o ), KTT_ENTRY1( O, o ),
KTT_ENTRY1( P, p ), KTT_ENTRY1( P, p ),
KTT_ENTRY0( OPENBRACE, LEFTBRACKET, 0xdb, '[', "OPENBRACE" ), KTT_ENTRY0( OPENBRACE, LEFTBRACKET, 0xdb, '[', "OPENBRACE" ),
KTT_ENTRY0( CLOSEBRACE,RIGHTBRACKET, 0xdd, ']', "CLOSEBRACE" ), KTT_ENTRY0( CLOSEBRACE,RIGHTBRACKET, 0xdd, ']', "CLOSEBRACE" ),
KTT_ENTRY0( ENTER, RETURN, 0x0d, 0x0d, "RETURN" ), KTT_ENTRY0( ENTER, RETURN, 0x0d, 0x0d, "RETURN" ),
KTT_ENTRY2( LCONTROL, LCTRL ), KTT_ENTRY2( LCONTROL, LCTRL ),
KTT_ENTRY1( A, a ), KTT_ENTRY1( A, a ),
KTT_ENTRY1( S, s ), KTT_ENTRY1( S, s ),
@ -392,8 +392,8 @@ static kt_table sdl_key_trans_table[] =
KTT_ENTRY1( L, l ), KTT_ENTRY1( L, l ),
KTT_ENTRY0( COLON, SEMICOLON, 0xba, ';', "COLON" ), KTT_ENTRY0( COLON, SEMICOLON, 0xba, ';', "COLON" ),
KTT_ENTRY0( QUOTE, QUOTE, 0xde, '\'', "QUOTE" ), KTT_ENTRY0( QUOTE, QUOTE, 0xde, '\'', "QUOTE" ),
KTT_ENTRY2( LSHIFT, LSHIFT ), KTT_ENTRY2( LSHIFT, LSHIFT ),
KTT_ENTRY0( BACKSLASH, BACKSLASH, 0xdc, '\\', "BACKSLASH" ), KTT_ENTRY0( BACKSLASH, BACKSLASH, 0xdc, '\\', "BACKSLASH" ),
KTT_ENTRY1( Z, z ), KTT_ENTRY1( Z, z ),
KTT_ENTRY1( X, x ), KTT_ENTRY1( X, x ),
KTT_ENTRY1( C, c ), KTT_ENTRY1( C, c ),
@ -401,26 +401,26 @@ static kt_table sdl_key_trans_table[] =
KTT_ENTRY1( B, b ), KTT_ENTRY1( B, b ),
KTT_ENTRY1( N, n ), KTT_ENTRY1( N, n ),
KTT_ENTRY1( M, m ), KTT_ENTRY1( M, m ),
KTT_ENTRY0( COMMA, COMMA, 0xbc, ',', "COMMA" ), KTT_ENTRY0( COMMA, COMMA, 0xbc, ',', "COMMA" ),
KTT_ENTRY0( STOP, PERIOD, 0xbe, '.', "STOP" ), KTT_ENTRY0( STOP, PERIOD, 0xbe, '.', "STOP" ),
KTT_ENTRY0( SLASH, SLASH, 0xbf, '/', "SLASH" ), KTT_ENTRY0( SLASH, SLASH, 0xbf, '/', "SLASH" ),
KTT_ENTRY2( RSHIFT, RSHIFT ), KTT_ENTRY2( RSHIFT, RSHIFT ),
KTT_ENTRY0( ASTERISK, KP_MULTIPLY, '*', '*', "ASTERIX" ), KTT_ENTRY0( ASTERISK, KP_MULTIPLY, '*', '*', "ASTERIX" ),
KTT_ENTRY2( LALT, LALT ), KTT_ENTRY2( LALT, LALT ),
KTT_ENTRY0( SPACE, SPACE, ' ', ' ', "SPACE" ), KTT_ENTRY0( SPACE, SPACE, ' ', ' ', "SPACE" ),
KTT_ENTRY2( CAPSLOCK, CAPSLOCK ), KTT_ENTRY2( CAPSLOCK, CAPSLOCK ),
KTT_ENTRY2( F1, F1 ), KTT_ENTRY2( F1, F1 ),
KTT_ENTRY2( F2, F2 ), KTT_ENTRY2( F2, F2 ),
KTT_ENTRY2( F3, F3 ), KTT_ENTRY2( F3, F3 ),
KTT_ENTRY2( F4, F4 ), KTT_ENTRY2( F4, F4 ),
KTT_ENTRY2( F5, F5 ), KTT_ENTRY2( F5, F5 ),
KTT_ENTRY2( F6, F6 ), KTT_ENTRY2( F6, F6 ),
KTT_ENTRY2( F7, F7 ), KTT_ENTRY2( F7, F7 ),
KTT_ENTRY2( F8, F8 ), KTT_ENTRY2( F8, F8 ),
KTT_ENTRY2( F9, F9 ), KTT_ENTRY2( F9, F9 ),
KTT_ENTRY2( F10, F10 ), KTT_ENTRY2( F10, F10 ),
KTT_ENTRY2( NUMLOCK, NUMLOCK ), KTT_ENTRY2( NUMLOCK, NUMLOCK ),
KTT_ENTRY2( SCRLOCK, SCROLLOCK ), KTT_ENTRY2( SCRLOCK, SCROLLOCK ),
KTT_ENTRY2( 7_PAD, KP7 ), KTT_ENTRY2( 7_PAD, KP7 ),
KTT_ENTRY2( 8_PAD, KP8 ), KTT_ENTRY2( 8_PAD, KP8 ),
KTT_ENTRY2( 9_PAD, KP9 ), KTT_ENTRY2( 9_PAD, KP9 ),
@ -428,35 +428,35 @@ static kt_table sdl_key_trans_table[] =
KTT_ENTRY2( 4_PAD, KP4 ), KTT_ENTRY2( 4_PAD, KP4 ),
KTT_ENTRY2( 5_PAD, KP5 ), KTT_ENTRY2( 5_PAD, KP5 ),
KTT_ENTRY2( 6_PAD, KP6 ), KTT_ENTRY2( 6_PAD, KP6 ),
KTT_ENTRY2( PLUS_PAD, KP_PLUS ), KTT_ENTRY2( PLUS_PAD, KP_PLUS ),
KTT_ENTRY2( 1_PAD, KP1 ), KTT_ENTRY2( 1_PAD, KP1 ),
KTT_ENTRY2( 2_PAD, KP2 ), KTT_ENTRY2( 2_PAD, KP2 ),
KTT_ENTRY2( 3_PAD, KP3 ), KTT_ENTRY2( 3_PAD, KP3 ),
KTT_ENTRY2( 0_PAD, KP0 ), KTT_ENTRY2( 0_PAD, KP0 ),
KTT_ENTRY2( DEL_PAD, KP_PERIOD ), KTT_ENTRY2( DEL_PAD, KP_PERIOD ),
KTT_ENTRY2( F11, F11 ), KTT_ENTRY2( F11, F11 ),
KTT_ENTRY2( F12, F12 ), KTT_ENTRY2( F12, F12 ),
KTT_ENTRY2( F13, F13 ), KTT_ENTRY2( F13, F13 ),
KTT_ENTRY2( F14, F14 ), KTT_ENTRY2( F14, F14 ),
KTT_ENTRY2( F15, F15 ), KTT_ENTRY2( F15, F15 ),
KTT_ENTRY2( ENTER_PAD, KP_ENTER ), KTT_ENTRY2( ENTER_PAD, KP_ENTER ),
KTT_ENTRY2( RCONTROL, RCTRL ), KTT_ENTRY2( RCONTROL, RCTRL ),
KTT_ENTRY2( SLASH_PAD, KP_DIVIDE ), KTT_ENTRY2( SLASH_PAD, KP_DIVIDE ),
KTT_ENTRY2( PRTSCR, PRINT ), KTT_ENTRY2( PRTSCR, PRINT ),
KTT_ENTRY2( RALT, RALT ), KTT_ENTRY2( RALT, RALT ),
KTT_ENTRY2( HOME, HOME ), KTT_ENTRY2( HOME, HOME ),
KTT_ENTRY2( UP, UP ), KTT_ENTRY2( UP, UP ),
KTT_ENTRY2( PGUP, PAGEUP ), KTT_ENTRY2( PGUP, PAGEUP ),
KTT_ENTRY2( LEFT, LEFT ), KTT_ENTRY2( LEFT, LEFT ),
KTT_ENTRY2( RIGHT, RIGHT ), KTT_ENTRY2( RIGHT, RIGHT ),
KTT_ENTRY2( END, END ), KTT_ENTRY2( END, END ),
KTT_ENTRY2( DOWN, DOWN ), KTT_ENTRY2( DOWN, DOWN ),
KTT_ENTRY2( PGDN, PAGEDOWN ), KTT_ENTRY2( PGDN, PAGEDOWN ),
KTT_ENTRY2( INSERT, INSERT ), KTT_ENTRY2( INSERT, INSERT ),
{ ITEM_ID_DEL, SDLK_DELETE, "ITEM_ID_DEL", (char *)"DELETE" }, { ITEM_ID_DEL, SDLK_DELETE, "ITEM_ID_DEL", (char *)"DELETE" },
KTT_ENTRY2( LWIN, LSUPER ), KTT_ENTRY2( LWIN, LSUPER ),
KTT_ENTRY2( RWIN, RSUPER ), KTT_ENTRY2( RWIN, RSUPER ),
KTT_ENTRY2( MENU, MENU ), KTT_ENTRY2( MENU, MENU ),
KTT_ENTRY0( TILDE, BACKQUOTE, 0xc0, '`', "TILDE" ), KTT_ENTRY0( TILDE, BACKQUOTE, 0xc0, '`', "TILDE" ),
KTT_ENTRY0( BACKSLASH2, HASH, 0xdc, '\\', "BACKSLASH2" ), KTT_ENTRY0( BACKSLASH2, HASH, 0xdc, '\\', "BACKSLASH2" ),
{ -1 } { -1 }
@ -1612,9 +1612,9 @@ void osd_customize_input_type_list(input_type_desc *typelist)
// disable UI_SELECT when LALT is down, this stops selecting // disable UI_SELECT when LALT is down, this stops selecting
// things in the menu when toggling fullscreen with LALT+ENTER // things in the menu when toggling fullscreen with LALT+ENTER
/* case IPT_UI_SELECT: /* case IPT_UI_SELECT:
input_seq_set_3(&typedesc->seq[SEQ_TYPE_STANDARD], KEYCODE_ENTER, SEQCODE_NOT, KEYCODE_LALT); input_seq_set_3(&typedesc->seq[SEQ_TYPE_STANDARD], KEYCODE_ENTER, SEQCODE_NOT, KEYCODE_LALT);
break;*/ break;*/
// page down for fastforward (must be OSD_3 as per src/emu/ui.c) // page down for fastforward (must be OSD_3 as per src/emu/ui.c)
case IPT_UI_FAST_FORWARD: case IPT_UI_FAST_FORWARD:

View File

@ -13,8 +13,8 @@
#if USE_OPENGL #if USE_OPENGL
/* equivalent to #include <GL/gl.h> /* equivalent to #include <GL/gl.h>
* #include <GL/glext.h> * #include <GL/glext.h>
*/ */
#include <SDL/SDL_version.h> #include <SDL/SDL_version.h>
#if (SDL_VERSION_ATLEAST(1,2,10)) #if (SDL_VERSION_ATLEAST(1,2,10))
@ -25,9 +25,9 @@
#include <SDL/SDL_opengl.h> #include <SDL/SDL_opengl.h>
#else #else
/* /*
* SDL 1.2.9 does not provide everything we need * SDL 1.2.9 does not provide everything we need
* We therefore distribute it ourselves * We therefore distribute it ourselves
*/ */
#include "SDL1211_opengl.h" #include "SDL1211_opengl.h"
#endif #endif
#ifdef USE_DISPATCH_GL #ifdef USE_DISPATCH_GL
@ -50,8 +50,8 @@
extern osd_gl_dispatch *gl_dispatch; extern osd_gl_dispatch *gl_dispatch;
/* /*
* Use gl_mangle to map function names * Use gl_mangle to map function names
*/ */
#define MANGLE(x) gl_dispatch->gl ## x #define MANGLE(x) gl_dispatch->gl ## x
#include "osd_opengl.h" #include "osd_opengl.h"
@ -64,12 +64,12 @@
#else /* MANGLE */ #else /* MANGLE */
/*************************************************************** /***************************************************************
* *
* Used to redefine opengl functions * Used to redefine opengl functions
* *
* Credits: taken from gl_mangle.h * Credits: taken from gl_mangle.h
* *
***************************************************************/ ***************************************************************/
#define glAccum MANGLE(Accum) #define glAccum MANGLE(Accum)
#define glActiveStencilFaceEXT MANGLE(ActiveStencilFaceEXT) #define glActiveStencilFaceEXT MANGLE(ActiveStencilFaceEXT)
@ -1517,12 +1517,12 @@
#endif /* MANGLE */ #endif /* MANGLE */
#else /* GET_GLFUNC */ #else /* GET_GLFUNC */
/*************************************************************** /***************************************************************
* *
* Used recursively for prototyping and function assignment * Used recursively for prototyping and function assignment
* *
* Credits: taken from sdl_glfuncs.h * Credits: taken from sdl_glfuncs.h
* *
***************************************************************/ ***************************************************************/
OSD_GL_UNUSED(void,glAccum,(GLenum,GLfloat)) OSD_GL_UNUSED(void,glAccum,(GLenum,GLfloat))
OSD_GL_UNUSED(void,glAlphaFunc,(GLenum,GLclampf)) OSD_GL_UNUSED(void,glAlphaFunc,(GLenum,GLclampf))

View File

@ -3,204 +3,204 @@
/* Notes /* Notes
- Known bugs: - Known bugs:
* SDL1.3/X11: Some compound keys, e.g. "'" are not supported by SDL driver * SDL1.3/X11: Some compound keys, e.g. "'" are not supported by SDL driver
* SDL1.3: sdlvideofps does not take -numscreens>1 into account. * SDL1.3: sdlvideofps does not take -numscreens>1 into account.
* SDL1.3/WIN32: crashes with -rd d3d * SDL1.3/WIN32: crashes with -rd d3d
* SDL1.3/WIN32: resizing does not work * SDL1.3/WIN32: resizing does not work
- fixed returning (w,h) = (0,0) in get_max_bounds - fixed returning (w,h) = (0,0) in get_max_bounds
- new video driver "sdl13" utilitizing SDL texture and line - new video driver "sdl13" utilitizing SDL texture and line
drawing support. Accelerated drivers like directfb now drawing support. Accelerated drivers like directfb now
may attain opengl speed. DirectFB does with a radeon card. may attain opengl speed. DirectFB does with a radeon card.
The driver determines which pixel formats perform best and The driver determines which pixel formats perform best and
converts textures to these pixel formats. converts textures to these pixel formats.
Supported options: Supported options:
-waitvsync -waitvsync
-filter -filter
-prescale -prescale
Supported renderdrivers: Supported renderdrivers:
X11: opengl, software, x11 (no artwork!) X11: opengl, software, x11 (no artwork!)
DirectFB: directfb, software, opengl (special setup, slow) DirectFB: directfb, software, opengl (special setup, slow)
Windows: software, gdi (no artwork) Windows: software, gdi (no artwork)
- SDL1.3: Clear bck when moving - SDL1.3: Clear bck when moving
- SDL1.3: now compiles on win32 - SDL1.3: now compiles on win32
- SDL1.3: Support screen refresh rates, provided the sdl video - SDL1.3: Support screen refresh rates, provided the sdl video
layer supports them (e.g. X11). layer supports them (e.g. X11).
- Use video_config.waitvsync (previously option was queried) - Use video_config.waitvsync (previously option was queried)
- -video soft / -sm now supports -prescale - -video soft / -sm now supports -prescale
- removed reqwidth, reqheight from sdl_monitor_info; not used anywhere - removed reqwidth, reqheight from sdl_monitor_info; not used anywhere
- removed layerconfig from sdl_video_config; not used anywhere - removed layerconfig from sdl_video_config; not used anywhere
- fixed yuv issues (firefox) / this was a bug I introduced - fixed yuv issues (firefox) / this was a bug I introduced
- removed deprecat.h from output.c - removed deprecat.h from output.c
- Separated keyboard and mouse initialization into separate functions - Separated keyboard and mouse initialization into separate functions
- added _FORTIFY_SOURCE to verbose compiler define output. - added _FORTIFY_SOURCE to verbose compiler define output.
- remove MAX_CPU from debugwin.c - remove MAX_CPU from debugwin.c
- fixed vsync handling in SDL1.3 in soft/opengl drivers - fixed vsync handling in SDL1.3 in soft/opengl drivers
- "waitvsync" also supported by "soft" driver in SDL1.3 - "waitvsync" also supported by "soft" driver in SDL1.3
- multiple mice and keyboards supported in SDL1.3 - multiple mice and keyboards supported in SDL1.3
- support for DISTRO= make option - support for DISTRO= make option
- got rid of "-joymap" and "-joymap_file" - got rid of "-joymap" and "-joymap_file"
- add -joy_idx[0-7] -keyb_idx[0-7] -mouse_idx[0-7] which - add -joy_idx[0-7] -keyb_idx[0-7] -mouse_idx[0-7] which
specify, which device is allocated to to e.g. Mouse 1, Mouse 2, ... specify, which device is allocated to to e.g. Mouse 1, Mouse 2, ...
- moved define of THREAD_COOPERATIVE into sdl.mak and renamed to - moved define of THREAD_COOPERATIVE into sdl.mak and renamed to
NO_THREAD_COOPERATIVE. Changed references to #ifndef NO_THREAD_COOPERATIVE. Changed references to #ifndef
- define NO_DEBUGGER in sdl.mak - define NO_DEBUGGER in sdl.mak
- Solaris now uses -DNO_AFFINITY_NP - Solaris now uses -DNO_AFFINITY_NP
- added machine to window_info, removed deprecat.h from drawogl.c - added machine to window_info, removed deprecat.h from drawogl.c
- For DEBUG=1 builds, disable input grapping while windowed - For DEBUG=1 builds, disable input grapping while windowed
- Fixed WIN32 compile - Fixed WIN32 compile
Wrote setenv function since mingw does not provide one. Wrote setenv function since mingw does not provide one.
Implemented osd_event_* as inline functions for win32 build. Implemented osd_event_* as inline functions for win32 build.
We should at some point merge sdlwork.c and winwork.c and push it We should at some point merge sdlwork.c and winwork.c and push it
to the core, letting sdlsync.c provide the necessary details. to the core, letting sdlsync.c provide the necessary details.
- Removed keybled.c and references - Removed keybled.c and references
- Added output.c and output.h. These will look for a fifo or file - Added output.c and output.h. These will look for a fifo or file
/tmp/sdlmame_out and write output notifiers to it. /tmp/sdlmame_out and write output notifiers to it.
Added a sample client ledutil.sh to src/osd/sdl which turns Added a sample client ledutil.sh to src/osd/sdl which turns
leds on and off and provides a debug (log) facility. leds on and off and provides a debug (log) facility.
- removed os2work.c - removed os2work.c
- replaced window->render_lock with event window->rendered_event - replaced window->render_lock with event window->rendered_event
For multiple windows and "-mt", the old code would allow filling up For multiple windows and "-mt", the old code would allow filling up
the workqueue with 1000s of entries, since the lock would not block while the workqueue with 1000s of entries, since the lock would not block while
another window is rendered. The osd_event establishes a barrier which another window is rendered. The osd_event establishes a barrier which
is only freed if the last window blit operation has finished. is only freed if the last window blit operation has finished.
- Set SDL_VIDEO_GL_DRIVER if -gl_lib is given. The SDL directfb driver is picky about - Set SDL_VIDEO_GL_DRIVER if -gl_lib is given. The SDL directfb driver is picky about
this. Added reminder: FIXME: move lib loading code from drawogl.c here. This may be this. Added reminder: FIXME: move lib loading code from drawogl.c here. This may be
used to disable opengl if no library was loaded. used to disable opengl if no library was loaded.
- SDL1.3/video=opengl: Fixed windows not being updated after another window was resized - SDL1.3/video=opengl: Fixed windows not being updated after another window was resized
- for -verbose, output some information about renderer (-video soft) - for -verbose, output some information about renderer (-video soft)
- initialize mouse_enabled with option "-mouse". Affects both SDL1.2 and SDL1.3 - initialize mouse_enabled with option "-mouse". Affects both SDL1.2 and SDL1.3
This will hide the mouse if you specify "-mouse". This will hide the mouse if you specify "-mouse".
- SDL1.2: added blitmode "async" which sets SDL_ASYNCBLIT - SDL1.2: added blitmode "async" which sets SDL_ASYNCBLIT
- SDL1.2: removed blitmodes "hwbest" and "hwblit" - SDL1.2: removed blitmodes "hwbest" and "hwblit"
- added blitmode "hwbest" for antialiased and smoothed scaling now that the - added blitmode "hwbest" for antialiased and smoothed scaling now that the
directfb driver supports it. This is also supported by the 1.3 opengl directfb driver supports it. This is also supported by the 1.3 opengl
render backend render backend
- added sdlinput_release_keys to cope with lost keyboard events in SDL1.3 - added sdlinput_release_keys to cope with lost keyboard events in SDL1.3
- some identing in drawogl.c - some identing in drawogl.c
- rename SDL_* macros to SDLMAME_* (avoid name clashes) - rename SDL_* macros to SDLMAME_* (avoid name clashes)
- got rid of VIDEO_SCALE_MODE constants. Scale modes are now handled in drawsdl.c. - got rid of VIDEO_SCALE_MODE constants. Scale modes are now handled in drawsdl.c.
Starting mame with eg. -video soft -sm yuy2 on X11 no longer crashes. Starting mame with eg. -video soft -sm yuy2 on X11 no longer crashes.
- some more changes to input.c to avoid resize loops (issue for directfb) - some more changes to input.c to avoid resize loops (issue for directfb)
- working ui mouse inputs for SDL1.2 and SDL1.3 incl. yuv modes - working ui mouse inputs for SDL1.2 and SDL1.3 incl. yuv modes
- added blitmode "hwblit" (SDL1.3) for rgb hardware scaling - added blitmode "hwblit" (SDL1.3) for rgb hardware scaling
- rename "-yuvmode" option to "-scalemode" - rename "-yuvmode" option to "-scalemode"
- rename yuv_mode and derivatives to scale_mode - rename yuv_mode and derivatives to scale_mode
- moved extra_flags into sdl_info - moved extra_flags into sdl_info
- moved callbacks indow sdl_window_info - moved callbacks indow sdl_window_info
- made a number of flags (e.g. yuvmode) window relative - made a number of flags (e.g. yuvmode) window relative
- changing of yuvmodes and opengl scale effects is working with SDL 1.3 - changing of yuvmodes and opengl scale effects is working with SDL 1.3
- improved fullscreen handling - improved fullscreen handling
- removed HAS_WINDOW_MENU - this has no effect nowhere - removed HAS_WINDOW_MENU - this has no effect nowhere
- removed underscores in header defines, e.g. __SDL_SYNC__ ==> __SDLSYNC__ - removed underscores in header defines, e.g. __SDL_SYNC__ ==> __SDLSYNC__
- added SDLMAME_HAS_DEBUGGER define - added SDLMAME_HAS_DEBUGGER define
- removed #if 0 inw window.c - removed #if 0 inw window.c
- added option "-audiodriver" to specify the SDL audio driver - added option "-audiodriver" to specify the SDL audio driver
- added option "-videodriver" to specify the SDL video driver - added option "-videodriver" to specify the SDL video driver
- added option "-renderdriver" to specify the SDL renderer driver - added option "-renderdriver" to specify the SDL renderer driver
- changed environment SDLMAME_GL_LIB into option -gl_lib - changed environment SDLMAME_GL_LIB into option -gl_lib
- added some more SDL_ENV defines - added some more SDL_ENV defines
- move keymap reading into separate function - move keymap reading into separate function
- SDL_EnableUNICODE for all builds (not only MESS) - SDL_EnableUNICODE for all builds (not only MESS)
- SDL1.3 : Mouse & text input for ui - SDL1.3 : Mouse & text input for ui
- removed osd_event_wait_multiple from sdlsync.h - removed osd_event_wait_multiple from sdlsync.h
- removed some includes not needed - removed some includes not needed
- reorganized texcopy/scale2x - reorganized texcopy/scale2x
- removed effect.h - removed effect.h
- removed effect_func.h - removed effect_func.h
- indenting - indenting
- put osd_copyfile, osd_stat into #ifdef MESS - put osd_copyfile, osd_stat into #ifdef MESS
- added code which implements events without the need - added code which implements events without the need
for pthreads. This is commented out, since for pthreads. This is commented out, since
owever, it horribly fails, if owever, it horribly fails, if
threads > num processors as is the case if you threads > num processors as is the case if you
enable "-mt" enable "-mt"
- rename mame_bitmap to bitmap_t - rename mame_bitmap to bitmap_t
- introduced define OSDWORK_CALLBACK to prototype and - introduced define OSDWORK_CALLBACK to prototype and
define functions to be passed to sdlwork.c define functions to be passed to sdlwork.c
- fixes from judge for warnings / may reappear (glade) - fixes from judge for warnings / may reappear (glade)
- more warnings fixed / may reappear (glade) - more warnings fixed / may reappear (glade)
- moved osdefs.h into sdlprefix.h - moved osdefs.h into sdlprefix.h
- removed osdefs.h - removed osdefs.h
- finally removed sdlmisc.h - finally removed sdlmisc.h
- create drawogl.c and moved ogl relevant stuff there - create drawogl.c and moved ogl relevant stuff there
- draw.window_init() now called after window creation - draw.window_init() now called after window creation
- removed window.opengl flag - removed window.opengl flag
- added sdl_window_info as parameter to all functions in window.h - added sdl_window_info as parameter to all functions in window.h
- rename SDL_VERSIONNUM to SDL_VERSION_ATLEAST - rename SDL_VERSIONNUM to SDL_VERSION_ATLEAST
- removed all uclock stuff in sdlmisc.[ch] - removed all uclock stuff in sdlmisc.[ch]
- minor cleanups - minor cleanups
- fixed compile issues against SDL13 - fixed compile issues against SDL13
- fixed input issues with SDL13 - fixed input issues with SDL13
- stricter checks for USE_OPENGL, e.g. for options - stricter checks for USE_OPENGL, e.g. for options
- move sdlvideo_loadgl to window.c, rename it to sdlwindow_loadgl and make it static - move sdlvideo_loadgl to window.c, rename it to sdlwindow_loadgl and make it static
- moved yuv_blit.c into drawsdl.c - moved yuv_blit.c into drawsdl.c
- renamed compute_blit_surface_size to sdlwindow_blit_surface_size - renamed compute_blit_surface_size to sdlwindow_blit_surface_size
- renamed drawsdl_destroy_all_textures to drawogl_destroy_all_textures and - renamed drawsdl_destroy_all_textures to drawogl_destroy_all_textures and
moved it to _sdl_draw_callbacks moved it to _sdl_draw_callbacks
- removed print_colums - removed print_colums
- rename misc.h to sdlmisc.h - rename misc.h to sdlmisc.h
- moved some includes from .h to .c - moved some includes from .h to .c
- rename led_init to sdlled_init for consistency - rename led_init to sdlled_init for consistency
- rename sdl_init_audio to sdlaudio_init for consistency - rename sdl_init_audio to sdlaudio_init for consistency
- fixed some indentation issues - fixed some indentation issues
- removed ticker.h & dirty.h - removed ticker.h & dirty.h
- changed all [f]printf to mame_printf_verbose|error|warning - changed all [f]printf to mame_printf_verbose|error|warning
- removed obsolete frameskipping code - removed obsolete frameskipping code
- removed obsolete throttle code - removed obsolete throttle code
- removed fastforward - removed fastforward
- removed framestorun - removed framestorun
- introduced SDLOPTION constants for a number of options - introduced SDLOPTION constants for a number of options
- add more verbose info for YUV - add more verbose info for YUV
- removed dirty.h - removed dirty.h
- removed ticker.h - removed ticker.h
- remove win_trying_to_quit - remove win_trying_to_quit
- changed win_use_mouse to static use_mouse - changed win_use_mouse to static use_mouse
- removed win_key_trans_table - removed win_key_trans_table
- removed keyboard typematic definitions from input.h - removed keyboard typematic definitions from input.h
- made sdl_monitor_list static - made sdl_monitor_list static
- removed hwstretch (sdl_video_config) - removed hwstretch (sdl_video_config)
- removed syncrefresh (sdl_video_config) - removed syncrefresh (sdl_video_config)
- removed triplebuf (sdl_video_config) - removed triplebuf (sdl_video_config)
- removed sdl_has_menu - removed sdl_has_menu
- fixed memory_leak (window.c) - fixed memory_leak (window.c)
- moved prototypes from drawsdl.c to window.h - moved prototypes from drawsdl.c to window.h
- removed joystick calibration code - removed joystick calibration code
- "#if 0" code which is unreachable - "#if 0" code which is unreachable
- "#if 0" code which is never used - "#if 0" code which is never used
- moved pick_best_mode to window.c - moved pick_best_mode to window.c
- removed pause_brightness option - removed pause_brightness option
- added more SDLOPTION_ defines - added more SDLOPTION_ defines
- renamed void yuv_lookup_init to drawsdl_yuv_init (global namespace) - renamed void yuv_lookup_init to drawsdl_yuv_init (global namespace)
- rmoved some obsolete code - rmoved some obsolete code
- add SDL1.3 compatibility - add SDL1.3 compatibility
- fixed some compile issues - fixed some compile issues
- moved clear_surface into window thread - moved clear_surface into window thread
- got SDL1.3 -mt working - still crashing on exit - got SDL1.3 -mt working - still crashing on exit
- removed "digital" option - removed "digital" option
- removed device selection options - removed device selection options
- added more SDLOPTION defines - added more SDLOPTION defines
*/ */
//============================================================ //============================================================
// System dependent defines // System dependent defines
//============================================================ //============================================================
// Process events in worker thread // Process events in worker thread
@ -224,13 +224,13 @@
#endif #endif
#if defined(NO_DEBUGGER) #if defined(NO_DEBUGGER)
#define SDLMAME_HAS_DEBUGGER (0) #define SDLMAME_HAS_DEBUGGER (0)
#else #else
#define SDLMAME_HAS_DEBUGGER (1) #define SDLMAME_HAS_DEBUGGER (1)
#endif #endif
//============================================================ //============================================================
// Defines // Defines
//============================================================ //============================================================
#define SDLOPTION_INIPATH "inipath" #define SDLOPTION_INIPATH "inipath"
@ -316,13 +316,13 @@
//============================================================ //============================================================
// sound.c // sound.c
//============================================================ //============================================================
void sdlaudio_init(running_machine *machine); void sdlaudio_init(running_machine *machine);
//============================================================ //============================================================
// sdlwork.c // sdlwork.c
//============================================================ //============================================================
extern int sdl_num_processors; extern int sdl_num_processors;

View File

@ -1,6 +1,6 @@
//============================================================ //============================================================
// //
// osinline.h - GNU C inline functions // osinline.h - GNU C inline functions
// //
//============================================================ //============================================================
@ -11,7 +11,7 @@
//============================================================ //============================================================
// INLINE FUNCTIONS // INLINE FUNCTIONS
//============================================================ //============================================================
#if defined(__i386__) || defined(__x86_64__) #if defined(__i386__) || defined(__x86_64__)

View File

@ -215,7 +215,7 @@ SDLMAIN =
OSDCOREOBJS = \ OSDCOREOBJS = \
$(SDLOBJ)/strconv.o \ $(SDLOBJ)/strconv.o \
$(SDLOBJ)/sdldir.o \ $(SDLOBJ)/sdldir.o \
$(SDLOBJ)/sdlfile.o \ $(SDLOBJ)/sdlfile.o \
$(SDLOBJ)/sdlos_$(TARGETOS).o \ $(SDLOBJ)/sdlos_$(TARGETOS).o \
$(SDLOBJ)/sdlsync_$(SYNC_IMPLEMENTATION).o \ $(SDLOBJ)/sdlsync_$(SYNC_IMPLEMENTATION).o \
$(SDLOBJ)/sdlwork.o $(SDLOBJ)/sdlwork.o

View File

@ -49,7 +49,7 @@ static UINT32 create_path_recursive(char *path);
struct _osd_file struct _osd_file
{ {
int handle; int handle;
char filename[1]; char filename[1];
}; };
@ -406,7 +406,7 @@ int osd_is_absolute_path(const char *path)
/* not used anywhere */ /* not used anywhere */
#if 0 #if 0
//============================================================ //============================================================
// osd_mkdir // osd_mkdir
//============================================================ //============================================================
file_error osd_mkdir(const char *dir) file_error osd_mkdir(const char *dir)
@ -424,7 +424,7 @@ file_error osd_mkdir(const char *dir)
} }
//============================================================ //============================================================
// osd_rmdir // osd_rmdir
//============================================================ //============================================================
static file_error osd_rmdir(const char *dir) static file_error osd_rmdir(const char *dir)
@ -442,7 +442,7 @@ static file_error osd_rmdir(const char *dir)
#ifdef MESS #ifdef MESS
//============================================================ //============================================================
// osd_copyfile // osd_copyfile
// FIXME: this will not work with blanks in filename ... // FIXME: this will not work with blanks in filename ...
//============================================================ //============================================================

View File

@ -60,7 +60,7 @@ void MorphToPM()
#endif #endif
//============================================================ //============================================================
// LOCAL VARIABLES // LOCAL VARIABLES
//============================================================ //============================================================
#ifdef MESS #ifdef MESS
@ -126,28 +126,28 @@ static const options_entry mame_sdl_options[] =
{ SDLOPTION_GL_VBO, "1", OPTION_BOOLEAN, "enable OpenGL VBO, if available (default on)" }, { SDLOPTION_GL_VBO, "1", OPTION_BOOLEAN, "enable OpenGL VBO, if available (default on)" },
{ SDLOPTION_GL_PBO, "1", OPTION_BOOLEAN, "enable OpenGL PBO, if available (default on)" }, { SDLOPTION_GL_PBO, "1", OPTION_BOOLEAN, "enable OpenGL PBO, if available (default on)" },
{ SDLOPTION_GL_GLSL, "0", OPTION_BOOLEAN, "enable OpenGL GLSL, if available (default off)" }, { SDLOPTION_GL_GLSL, "0", OPTION_BOOLEAN, "enable OpenGL GLSL, if available (default off)" },
{ SDLOPTION_GLSL_FILTER, "1", 0, "enable OpenGL GLSL filtering instead of FF filtering 0-plain, 1-bilinear (default)" }, { SDLOPTION_GLSL_FILTER, "1", 0, "enable OpenGL GLSL filtering instead of FF filtering 0-plain, 1-bilinear (default)" },
{ SDLOPTION_SHADER_MAME("0"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 0" }, { SDLOPTION_SHADER_MAME("0"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 0" },
{ SDLOPTION_SHADER_MAME("1"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 1" }, { SDLOPTION_SHADER_MAME("1"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 1" },
{ SDLOPTION_SHADER_MAME("2"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 2" }, { SDLOPTION_SHADER_MAME("2"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 2" },
{ SDLOPTION_SHADER_MAME("3"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 3" }, { SDLOPTION_SHADER_MAME("3"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 3" },
{ SDLOPTION_SHADER_MAME("4"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 4" }, { SDLOPTION_SHADER_MAME("4"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 4" },
{ SDLOPTION_SHADER_MAME("5"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 5" }, { SDLOPTION_SHADER_MAME("5"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 5" },
{ SDLOPTION_SHADER_MAME("6"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 6" }, { SDLOPTION_SHADER_MAME("6"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 6" },
{ SDLOPTION_SHADER_MAME("7"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 7" }, { SDLOPTION_SHADER_MAME("7"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 7" },
{ SDLOPTION_SHADER_MAME("8"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 8" }, { SDLOPTION_SHADER_MAME("8"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 8" },
{ SDLOPTION_SHADER_MAME("9"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 9" }, { SDLOPTION_SHADER_MAME("9"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader set mame bitmap 9" },
{ SDLOPTION_SHADER_SCREEN("0"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 0" }, { SDLOPTION_SHADER_SCREEN("0"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 0" },
{ SDLOPTION_SHADER_SCREEN("1"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 1" }, { SDLOPTION_SHADER_SCREEN("1"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 1" },
{ SDLOPTION_SHADER_SCREEN("2"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 2" }, { SDLOPTION_SHADER_SCREEN("2"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 2" },
{ SDLOPTION_SHADER_SCREEN("3"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 3" }, { SDLOPTION_SHADER_SCREEN("3"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 3" },
{ SDLOPTION_SHADER_SCREEN("4"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 4" }, { SDLOPTION_SHADER_SCREEN("4"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 4" },
{ SDLOPTION_SHADER_SCREEN("5"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 5" }, { SDLOPTION_SHADER_SCREEN("5"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 5" },
{ SDLOPTION_SHADER_SCREEN("6"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 6" }, { SDLOPTION_SHADER_SCREEN("6"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 6" },
{ SDLOPTION_SHADER_SCREEN("7"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 7" }, { SDLOPTION_SHADER_SCREEN("7"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 7" },
{ SDLOPTION_SHADER_SCREEN("8"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 8" }, { SDLOPTION_SHADER_SCREEN("8"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 8" },
{ SDLOPTION_SHADER_SCREEN("9"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 9" }, { SDLOPTION_SHADER_SCREEN("9"), SDLOPTVAL_NONE, 0, "custom OpenGL GLSL shader screen bitmap 9" },
{ SDLOPTION_GL_GLSL_VID_ATTR, "1", OPTION_BOOLEAN, "enable OpenGL GLSL handling of brightness and contrast. Better RGB game performance for free. (default)" }, { SDLOPTION_GL_GLSL_VID_ATTR, "1", OPTION_BOOLEAN, "enable OpenGL GLSL handling of brightness and contrast. Better RGB game performance for free. (default)" },
#endif #endif
// per-window options // per-window options
@ -241,7 +241,7 @@ static const options_entry mame_sdl_options[] =
#endif #endif
{ SDLOPTION_AUDIODRIVER ";ad", SDLOPTVAL_AUTO, 0, "sdl audio driver to use ('alsa', 'arts', ... or 'auto' for SDL default" }, { SDLOPTION_AUDIODRIVER ";ad", SDLOPTVAL_AUTO, 0, "sdl audio driver to use ('alsa', 'arts', ... or 'auto' for SDL default" },
#if USE_OPENGL #if USE_OPENGL
{ SDLOPTION_GL_LIB, SDLOPTVAL_GLLIB, 0, "alternative libGL.so to use; 'auto' for system default" }, { SDLOPTION_GL_LIB, SDLOPTVAL_GLLIB, 0, "alternative libGL.so to use; 'auto' for system default" },
#endif #endif
// End of list // End of list
@ -267,8 +267,8 @@ static int setenv(const char *name, const char *value, int overwrite)
result = putenv(buf); result = putenv(buf);
/* will be referenced by environment /* will be referenced by environment
* Therefore it is not freed here * Therefore it is not freed here
*/ */
return result; return result;
} }
@ -276,7 +276,7 @@ static int setenv(const char *name, const char *value, int overwrite)
#endif #endif
//============================================================ //============================================================
// main // main
//============================================================ //============================================================
// we do some special sauce on Win32... // we do some special sauce on Win32...
@ -367,7 +367,7 @@ static void output_oslog(running_machine *machine, const char *buffer)
//============================================================ //============================================================
// osd_exit // osd_exit
//============================================================ //============================================================
static void osd_exit(running_machine *machine) static void osd_exit(running_machine *machine)
@ -378,7 +378,7 @@ static void osd_exit(running_machine *machine)
} }
//============================================================ //============================================================
// defines_verbose // defines_verbose
//============================================================ //============================================================
#define MAC_EXPAND_STR(_m) #_m #define MAC_EXPAND_STR(_m) #_m
@ -445,7 +445,7 @@ static void defines_verbose(void)
} }
//============================================================ //============================================================
// osd_sdl_info // osd_sdl_info
//============================================================ //============================================================
static void osd_sdl_info(void) static void osd_sdl_info(void)
@ -495,7 +495,7 @@ static void osd_sdl_info(void)
//============================================================ //============================================================
// osd_init // osd_init
//============================================================ //============================================================
void osd_init(running_machine *machine) void osd_init(running_machine *machine)
@ -528,8 +528,8 @@ void osd_init(running_machine *machine)
} }
/* Set the SDL environment variable for drivers wanting to load the /* Set the SDL environment variable for drivers wanting to load the
* lib at startup. * lib at startup.
*/ */
/* FIXME: move lib loading code from drawogl.c here */ /* FIXME: move lib loading code from drawogl.c here */
stemp = options_get_string(mame_options(), SDLOPTION_GL_LIB); stemp = options_get_string(mame_options(), SDLOPTION_GL_LIB);

View File

@ -65,7 +65,7 @@ int osd_event_wait(osd_event *event, osd_ticks_t timeout);
Return value: Return value:
None None
-----------------------------------------------------------------------------*/ -----------------------------------------------------------------------------*/
void osd_event_reset(osd_event *event); void osd_event_reset(osd_event *event);
@ -79,11 +79,11 @@ void osd_event_reset(osd_event *event);
Return value: Return value:
None None
Notes: Notes:
All threads waiting for the event will be signalled. All threads waiting for the event will be signalled.
-----------------------------------------------------------------------------*/ -----------------------------------------------------------------------------*/
void osd_event_set(osd_event *event); void osd_event_set(osd_event *event);
@ -152,7 +152,7 @@ int osd_thread_adjust_priority(osd_thread *thread, int adjust);
thread - A pointer to a previously created thread thread - A pointer to a previously created thread
or NULL for main thread or NULL for main thread
mask - bitmask to which cpus to bind mask - bitmask to which cpus to bind
i.e. 0x01 1st cpu, 0x02, 2nd cpu, 0x04 3rd cpu i.e. 0x01 1st cpu, 0x02, 2nd cpu, 0x04 3rd cpu
Return value: Return value:

View File

@ -35,7 +35,7 @@
#include <sys/time.h> #include <sys/time.h>
struct _osd_lock { struct _osd_lock {
volatile pthread_t holder; volatile pthread_t holder;
INT32 count; INT32 count;
#ifdef PTR64 #ifdef PTR64
INT8 padding[52]; // Fill a 64-byte cache line INT8 padding[52]; // Fill a 64-byte cache line
@ -46,7 +46,7 @@ struct _osd_lock {
struct _osd_event { struct _osd_event {
pthread_mutex_t mutex; pthread_mutex_t mutex;
pthread_cond_t cond; pthread_cond_t cond;
volatile INT32 autoreset; volatile INT32 autoreset;
volatile INT32 signalled; volatile INT32 signalled;
#ifdef PTR64 #ifdef PTR64
@ -69,10 +69,10 @@ struct _osd_scalable_lock
{ {
struct struct
{ {
volatile INT32 haslock; // do we have the lock? volatile INT32 haslock; // do we have the lock?
INT32 filler[64/4-1]; // assumes a 64-byte cache line INT32 filler[64/4-1]; // assumes a 64-byte cache line
} slot[WORK_MAX_THREADS]; // one slot per thread } slot[WORK_MAX_THREADS]; // one slot per thread
volatile INT32 nextindex; // index of next slot to use volatile INT32 nextindex; // index of next slot to use
}; };
@ -265,9 +265,9 @@ void osd_lock_acquire(osd_lock *lock)
#endif #endif
#if 0 #if 0
/* If you mean to use locks as a blocking mechanism for extended /* If you mean to use locks as a blocking mechanism for extended
* periods of time, you should do something like this. However, * periods of time, you should do something like this. However,
* it kills the performance of gaelco3d. * it kills the performance of gaelco3d.
*/ */
if (spin == 0) if (spin == 0)
{ {
struct timespec sleep = { 0, 100000 }, remaining; struct timespec sleep = { 0, 100000 }, remaining;
@ -319,7 +319,7 @@ void osd_lock_release(osd_lock *lock)
} }
// trying to release a lock you don't hold is bad! // trying to release a lock you don't hold is bad!
// assert(lock->holder == pthread_self()); // assert(lock->holder == pthread_self());
} }
//============================================================ //============================================================

View File

@ -34,7 +34,7 @@
#define pthread_self _gettid #define pthread_self _gettid
struct _osd_lock { struct _osd_lock {
volatile pthread_t holder; volatile pthread_t holder;
INT32 count; INT32 count;
#ifdef PTR64 #ifdef PTR64
INT8 padding[52]; // Fill a 64-byte cache line INT8 padding[52]; // Fill a 64-byte cache line
@ -62,10 +62,10 @@ struct _osd_scalable_lock
{ {
struct struct
{ {
volatile INT32 haslock; // do we have the lock? volatile INT32 haslock; // do we have the lock?
INT32 filler[64/4-1]; // assumes a 64-byte cache line INT32 filler[64/4-1]; // assumes a 64-byte cache line
} slot[WORK_MAX_THREADS]; // one slot per thread } slot[WORK_MAX_THREADS]; // one slot per thread
volatile INT32 nextindex; // index of next slot to use volatile INT32 nextindex; // index of next slot to use
}; };
@ -258,9 +258,9 @@ void osd_lock_acquire(osd_lock *lock)
#endif #endif
#if 0 #if 0
/* If you mean to use locks as a blocking mechanism for extended /* If you mean to use locks as a blocking mechanism for extended
* periods of time, you should do something like this. However, * periods of time, you should do something like this. However,
* it kills the performance of gaelco3d. * it kills the performance of gaelco3d.
*/ */
if (spin == 0) if (spin == 0)
{ {
struct timespec sleep = { 0, 100000 }, remaining; struct timespec sleep = { 0, 100000 }, remaining;
@ -312,7 +312,7 @@ void osd_lock_release(osd_lock *lock)
} }
// trying to release a lock you don't hold is bad! // trying to release a lock you don't hold is bad!
// assert(lock->holder == pthread_self()); // assert(lock->holder == pthread_self());
} }
//============================================================ //============================================================

View File

@ -36,8 +36,8 @@ struct _hidden_mutex_t {
}; };
struct _osd_event { struct _osd_event {
SDL_mutex * mutex; SDL_mutex * mutex;
SDL_cond * cond; SDL_cond * cond;
volatile INT32 autoreset; volatile INT32 autoreset;
volatile INT32 signalled; volatile INT32 signalled;
}; };
@ -54,7 +54,7 @@ struct _osd_thread {
struct _osd_scalable_lock struct _osd_scalable_lock
{ {
SDL_mutex * mutex; SDL_mutex * mutex;
}; };
//============================================================ //============================================================

View File

@ -39,7 +39,7 @@ struct _hidden_mutex_t {
struct _osd_event { struct _osd_event {
pthread_mutex_t mutex; pthread_mutex_t mutex;
pthread_cond_t cond; pthread_cond_t cond;
volatile INT32 autoreset; volatile INT32 autoreset;
volatile INT32 signalled; volatile INT32 signalled;
#ifdef PTR64 #ifdef PTR64
@ -142,7 +142,7 @@ int osd_lock_try(osd_lock *lock)
if (r==0) if (r==0)
return 1; return 1;
//if (r!=EBUSY) //if (r!=EBUSY)
// mame_printf_error("Error on trylock: %d: %s\n", r, strerror(r)); // mame_printf_error("Error on trylock: %d: %s\n", r, strerror(r));
return 0; return 0;
} }

View File

@ -98,10 +98,10 @@ struct _osd_scalable_lock
#if USE_SCALABLE_LOCKS #if USE_SCALABLE_LOCKS
struct struct
{ {
volatile INT32 haslock; // do we have the lock? volatile INT32 haslock; // do we have the lock?
INT32 filler[64/4-1]; // assumes a 64-byte cache line INT32 filler[64/4-1]; // assumes a 64-byte cache line
} slot[WORK_MAX_THREADS]; // one slot per thread } slot[WORK_MAX_THREADS]; // one slot per thread
volatile INT32 nextindex; // index of next slot to use volatile INT32 nextindex; // index of next slot to use
#else #else
CRITICAL_SECTION section; CRITICAL_SECTION section;
#endif #endif

View File

@ -114,7 +114,7 @@ struct _osd_work_item
{ {
osd_work_item * next; // pointer to next item osd_work_item * next; // pointer to next item
osd_work_queue * queue; // pointer back to the owning queue osd_work_queue * queue; // pointer back to the owning queue
osd_work_callback callback; // callback function osd_work_callback callback; // callback function
void * param; // callback parameter void * param; // callback parameter
void * result; // callback result void * result; // callback result
osd_event * event; // event signalled when complete osd_event * event; // event signalled when complete
@ -586,7 +586,7 @@ static int effective_num_processors(void)
static UINT32 effective_cpu_mask(int index) static UINT32 effective_cpu_mask(int index)
{ {
char *s; char *s;
char buf[5]; char buf[5];
UINT32 mask = 0xFFFF; UINT32 mask = 0xFFFF;

View File

@ -23,13 +23,13 @@
#include "osdsdl.h" #include "osdsdl.h"
//============================================================ //============================================================
// DEBUGGING // DEBUGGING
//============================================================ //============================================================
#define LOG_SOUND 0 #define LOG_SOUND 0
//============================================================ //============================================================
// PARAMETERS // PARAMETERS
//============================================================ //============================================================
// number of samples per SDL callback // number of samples per SDL callback
@ -43,10 +43,10 @@ static int stream_loop = 0;
#define MAX_AUDIO_LATENCY 10 #define MAX_AUDIO_LATENCY 10
//============================================================ //============================================================
// LOCAL VARIABLES // LOCAL VARIABLES
//============================================================ //============================================================
static int attenuation = 0; static int attenuation = 0;
static int initialized_audio = 0; static int initialized_audio = 0;
static int buf_locked; static int buf_locked;
@ -69,7 +69,7 @@ static FILE *sound_log;
static int snd_enabled; static int snd_enabled;
//============================================================ //============================================================
// PROTOTYPES // PROTOTYPES
//============================================================ //============================================================
static int sdl_init(running_machine *machine); static int sdl_init(running_machine *machine);
@ -82,7 +82,7 @@ static void sdl_callback(void *userdata, Uint8 *stream, int len);
//============================================================ //============================================================
// osd_start_audio_stream // osd_start_audio_stream
//============================================================ //============================================================
void sdlaudio_init(running_machine *machine) void sdlaudio_init(running_machine *machine)
{ {
@ -106,7 +106,7 @@ void sdlaudio_init(running_machine *machine)
//============================================================ //============================================================
// osd_stop_audio_stream // osd_stop_audio_stream
//============================================================ //============================================================
static void sdl_cleanup_audio(running_machine *machine) static void sdl_cleanup_audio(running_machine *machine)
@ -131,7 +131,7 @@ static void sdl_cleanup_audio(running_machine *machine)
} }
//============================================================ //============================================================
// lock_buffer // lock_buffer
//============================================================ //============================================================
static int lock_buffer(long offset, long size, void **buffer1, long *length1, void **buffer2, long *length2) static int lock_buffer(long offset, long size, void **buffer1, long *length1, void **buffer2, long *length2)
{ {
@ -183,7 +183,7 @@ static int lock_buffer(long offset, long size, void **buffer1, long *length1, vo
} }
//============================================================ //============================================================
// unlock_buffer // unlock_buffer
//============================================================ //============================================================
static void unlock_buffer(void) static void unlock_buffer(void)
{ {
@ -197,7 +197,7 @@ static void unlock_buffer(void)
} }
//============================================================ //============================================================
// Apply attenuation // Apply attenuation
//============================================================ //============================================================
static void att_memcpy(void *dest, INT16 *data, int bytes_to_copy) static void att_memcpy(void *dest, INT16 *data, int bytes_to_copy)
@ -213,7 +213,7 @@ static void att_memcpy(void *dest, INT16 *data, int bytes_to_copy)
} }
//============================================================ //============================================================
// copy_sample_data // copy_sample_data
//============================================================ //============================================================
static void copy_sample_data(INT16 *data, int bytes_to_copy) static void copy_sample_data(INT16 *data, int bytes_to_copy)
@ -261,7 +261,7 @@ static void copy_sample_data(INT16 *data, int bytes_to_copy)
//============================================================ //============================================================
// osd_update_audio_stream // osd_update_audio_stream
//============================================================ //============================================================
void osd_update_audio_stream(running_machine *machine, INT16 *buffer, int samples_this_frame) void osd_update_audio_stream(running_machine *machine, INT16 *buffer, int samples_this_frame)
@ -343,7 +343,7 @@ void osd_update_audio_stream(running_machine *machine, INT16 *buffer, int sample
//============================================================ //============================================================
// osd_set_mastervolume // osd_set_mastervolume
//============================================================ //============================================================
void osd_set_mastervolume(int _attenuation) void osd_set_mastervolume(int _attenuation)
@ -358,7 +358,7 @@ void osd_set_mastervolume(int _attenuation)
} }
//============================================================ //============================================================
// sdl_callback // sdl_callback
//============================================================ //============================================================
static void sdl_callback(void *userdata, Uint8 *stream, int len) static void sdl_callback(void *userdata, Uint8 *stream, int len)
{ {
@ -420,13 +420,13 @@ static void sdl_callback(void *userdata, Uint8 *stream, int len)
//============================================================ //============================================================
// sdl_init // sdl_init
//============================================================ //============================================================
static int sdl_init(running_machine *machine) static int sdl_init(running_machine *machine)
{ {
int n_channels = 2; int n_channels = 2;
int audio_latency; int audio_latency;
SDL_AudioSpec aspec, obtained; SDL_AudioSpec aspec, obtained;
char audio_driver[16] = ""; char audio_driver[16] = "";
if (initialized_audio) if (initialized_audio)
@ -503,7 +503,7 @@ cant_start_audio:
//============================================================ //============================================================
// sdl_kill // sdl_kill
//============================================================ //============================================================
static void sdl_kill(running_machine *machine) static void sdl_kill(running_machine *machine)
@ -519,7 +519,7 @@ static void sdl_kill(running_machine *machine)
//============================================================ //============================================================
// dsound_create_buffers // dsound_create_buffers
//============================================================ //============================================================
static int sdl_create_buffers(void) static int sdl_create_buffers(void)
@ -535,7 +535,7 @@ static int sdl_create_buffers(void)
//============================================================ //============================================================
// sdl_destroy_buffers // sdl_destroy_buffers
//============================================================ //============================================================
static void sdl_destroy_buffers(void) static void sdl_destroy_buffers(void)

View File

@ -22,9 +22,9 @@
// Check whether SDL has compat interface // Check whether SDL has compat interface
#if defined(SDL_AllocSurface) || (!SDL_VERSION_ATLEAST(1,3,0)) #if defined(SDL_AllocSurface) || (!SDL_VERSION_ATLEAST(1,3,0))
#define SDL_HAS_COMPAT 1 #define SDL_HAS_COMPAT 1
#else #else
#define SDL_HAS_COMPAT 0 #define SDL_HAS_COMPAT 0
#endif #endif
typedef struct _key_lookup_table key_lookup_table; typedef struct _key_lookup_table key_lookup_table;

View File

@ -225,7 +225,7 @@ void sdlvideo_monitor_refresh(sdl_monitor_info *monitor)
XineramaScreenInfo *xineinfo; XineramaScreenInfo *xineinfo;
int numscreens; int numscreens;
xineinfo = XineramaQueryScreens(info.info.x11.display, &numscreens); xineinfo = XineramaQueryScreens(info.info.x11.display, &numscreens);
monitor->center_width = xineinfo[0].width; monitor->center_width = xineinfo[0].width;
monitor->center_height = xineinfo[0].height; monitor->center_height = xineinfo[0].height;
@ -238,7 +238,7 @@ void sdlvideo_monitor_refresh(sdl_monitor_info *monitor)
monitor->center_height = monitor->monitor_height; monitor->center_height = monitor->monitor_height;
} }
} }
else else
#endif // defined(SDLMAME_X11) #endif // defined(SDLMAME_X11)
{ {
static int first_call=0; static int first_call=0;
@ -279,7 +279,7 @@ void sdlvideo_monitor_refresh(sdl_monitor_info *monitor)
monitor->center_height = ch; monitor->center_height = ch;
} }
} }
#elif defined(SDLMAME_OS2) // OS2 version #elif defined(SDLMAME_OS2) // OS2 version
monitor->center_width = monitor->monitor_width = WinQuerySysValue( HWND_DESKTOP, SV_CXSCREEN ); monitor->center_width = monitor->monitor_width = WinQuerySysValue( HWND_DESKTOP, SV_CXSCREEN );
monitor->center_height = monitor->monitor_height = WinQuerySysValue( HWND_DESKTOP, SV_CYSCREEN ); monitor->center_height = monitor->monitor_height = WinQuerySysValue( HWND_DESKTOP, SV_CYSCREEN );
strcpy(monitor->monitor_device, "OS/2 display"); strcpy(monitor->monitor_device, "OS/2 display");
@ -345,10 +345,10 @@ void osd_update(running_machine *machine, int skip_redraw)
// if we're not skipping this redraw, update all windows // if we're not skipping this redraw, update all windows
if (!skip_redraw) if (!skip_redraw)
{ {
// profiler_mark(PROFILER_BLIT); // profiler_mark(PROFILER_BLIT);
for (window = sdl_window_list; window != NULL; window = window->next) for (window = sdl_window_list; window != NULL; window = window->next)
sdlwindow_video_window_update(machine, window); sdlwindow_video_window_update(machine, window);
// profiler_mark(PROFILER_END); // profiler_mark(PROFILER_END);
} }
// poll the joystick values here // poll the joystick values here
@ -466,7 +466,7 @@ static void init_monitors(void)
for (i = 0; i < SDL_GetNumVideoDisplays(); i++) for (i = 0; i < SDL_GetNumVideoDisplays(); i++)
{ {
sdl_monitor_info *monitor; sdl_monitor_info *monitor;
SDL_DisplayMode dmode; SDL_DisplayMode dmode;
// allocate a new monitor info // allocate a new monitor info
monitor = global_alloc_clear(sdl_monitor_info); monitor = global_alloc_clear(sdl_monitor_info);
@ -672,13 +672,13 @@ static void extract_video_config(running_machine *machine)
video_config.mode = VIDEO_MODE_OPENGL; video_config.mode = VIDEO_MODE_OPENGL;
else if (USE_OPENGL && (strcmp(stemp, SDLOPTVAL_OPENGL16) == 0)) else if (USE_OPENGL && (strcmp(stemp, SDLOPTVAL_OPENGL16) == 0))
{ {
video_config.mode = VIDEO_MODE_OPENGL; video_config.mode = VIDEO_MODE_OPENGL;
video_config.prefer16bpp_tex = 1; video_config.prefer16bpp_tex = 1;
} }
else if (SDL_VERSION_ATLEAST(1,3,0) && (strcmp(stemp, SDLOPTVAL_SDL13) == 0)) else if (SDL_VERSION_ATLEAST(1,3,0) && (strcmp(stemp, SDLOPTVAL_SDL13) == 0))
{ {
video_config.mode = VIDEO_MODE_SDL13; video_config.mode = VIDEO_MODE_SDL13;
video_config.prefer16bpp_tex = 1; video_config.prefer16bpp_tex = 1;
} }
else else
{ {

View File

@ -94,10 +94,10 @@ struct _sdl_video_config
int novideo; // don't draw, for pure CPU benchmarking int novideo; // don't draw, for pure CPU benchmarking
// global configuration // global configuration
int windowed; // start windowed? int windowed; // start windowed?
int prescale; // prescale factor (not currently supported) int prescale; // prescale factor (not currently supported)
int keepaspect; // keep aspect ratio? int keepaspect; // keep aspect ratio?
int numscreens; // number of screens int numscreens; // number of screens
int centerh; int centerh;
int centerv; int centerv;

View File

@ -44,16 +44,16 @@
#define WINDOW_DECORATION_HEIGHT (48) // title bar + bottom drag region #define WINDOW_DECORATION_HEIGHT (48) // title bar + bottom drag region
#ifdef MAME_DEBUG #ifdef MAME_DEBUG
//#define ASSERT_USE(x) do { printf("%x %x\n", (int) SDL_ThreadID(), x); assert_always(SDL_ThreadID() == x, "Wrong Thread"); } while (0) //#define ASSERT_USE(x) do { printf("%x %x\n", (int) SDL_ThreadID(), x); assert_always(SDL_ThreadID() == x, "Wrong Thread"); } while (0)
#define ASSERT_USE(x) do { SDL_threadID _thid = SDL_ThreadID(); assert_always( _thid == x, "Wrong Thread"); } while (0) #define ASSERT_USE(x) do { SDL_threadID _thid = SDL_ThreadID(); assert_always( _thid == x, "Wrong Thread"); } while (0)
#else #else
#define ASSERT_USE(x) do {} while (0) #define ASSERT_USE(x) do {} while (0)
//#define ASSERT_USE(x) assert(SDL_ThreadID() == x) //#define ASSERT_USE(x) assert(SDL_ThreadID() == x)
#endif #endif
#define ASSERT_REDRAW_THREAD() ASSERT_USE(window_threadid) #define ASSERT_REDRAW_THREAD() ASSERT_USE(window_threadid)
#define ASSERT_WINDOW_THREAD() ASSERT_USE(window_threadid) #define ASSERT_WINDOW_THREAD() ASSERT_USE(window_threadid)
#define ASSERT_MAIN_THREAD() ASSERT_USE(main_threadid) #define ASSERT_MAIN_THREAD() ASSERT_USE(main_threadid)
#define OSDWORK_CALLBACK(name) void *name(void *param, ATTR_UNUSED int threadid) #define OSDWORK_CALLBACK(name) void *name(void *param, ATTR_UNUSED int threadid)
@ -732,7 +732,7 @@ int sdlwindow_video_window_create(running_machine *machine, int index, sdl_monit
window->windowed_width = config->width; window->windowed_width = config->width;
window->windowed_height = config->height; window->windowed_height = config->height;
} }
window->totalColors = config->totalColors; window->totalColors = config->totalColors;
// add us to the list // add us to the list
*last_window_ptr = window; *last_window_ptr = window;
@ -940,10 +940,10 @@ static void pick_best_mode(sdl_window_info *window, int *fswidth, int *fsheight)
#if defined(SDLMAME_WIN32) #if defined(SDLMAME_WIN32)
/* /*
* We need to do this here. If SDL_ListModes is * We need to do this here. If SDL_ListModes is
* called in init_monitors, the call will crash * called in init_monitors, the call will crash
* on win32 * on win32
*/ */
modes = SDL_ListModes(NULL, SDL_FULLSCREEN | SDL_DOUBLEBUF); modes = SDL_ListModes(NULL, SDL_FULLSCREEN | SDL_DOUBLEBUF);
#else #else
modes = window->monitor->modes; modes = window->monitor->modes;
@ -1119,9 +1119,9 @@ static OSDWORK_CALLBACK( complete_create_wt )
else else
{ {
/* Create the window directly with the correct aspect /* Create the window directly with the correct aspect
instead of letting sdlwindow_blit_surface_size() resize it instead of letting sdlwindow_blit_surface_size() resize it
this stops the window from "flashing" from the wrong aspect this stops the window from "flashing" from the wrong aspect
size to the right one at startup. */ size to the right one at startup. */
tempwidth = (window->maxwidth != 0) ? window->maxwidth : 640; tempwidth = (window->maxwidth != 0) ? window->maxwidth : 640;
tempheight = (window->maxheight != 0) ? window->maxheight : 480; tempheight = (window->maxheight != 0) ? window->maxheight : 480;
@ -1190,8 +1190,8 @@ static void measure_fps(sdl_window_info *window, UINT32 dc, int update)
static OSDWORK_CALLBACK( draw_video_contents_wt ) static OSDWORK_CALLBACK( draw_video_contents_wt )
{ {
UINT32 dc = 0; UINT32 dc = 0;
int update = 1; int update = 1;
worker_param *wp = (worker_param *) param; worker_param *wp = (worker_param *) param;
sdl_window_info *window = wp->window; sdl_window_info *window = wp->window;

View File

@ -10,4 +10,4 @@
***************************************************************************/ ***************************************************************************/
extern const char build_version[]; extern const char build_version[];
const char build_version[] = "0.136 ("__DATE__")"; const char build_version[] = "0.136u1 ("__DATE__")";