Previous 15994 Revisions Next

r9074 Thursday 9th September, 2010 at 11:20:13 UTC by Angelo Salese
[PCE]: bare minimum implementation of Arcade Card handling
[src/mess/includes]pce.h
[src/mess/machine]pce.c

src/mess/machine/pce.c
r9073r9074
10681068   logerror("%04X: write to CD interface offset %02X, data %02X\n", cpu_get_pc(space->cpu), offset, data );
10691069   pce_cd_update(space->machine);
10701070
1071   if(offset & 0x200 && pce_sys3_card) // emulate Arcade Card
1072      return pce_cd_acard_w(space,offset,data);
1073
10711074   switch( offset )
10721075   {
10731076   case 0x00:   /* CDC status */
r9073r9074
11991202{
12001203   UINT8 data = pce_cd.regs[offset & 0x0F];
12011204
1205   logerror("%04X: read from CD interface offset %02X\n", cpu_get_pc(space->cpu), offset );
12021206   pce_cd_update(space->machine);
12031207
1204   logerror("%04X: read from CD interface offset %02X\n", cpu_get_pc(space->cpu), offset );
1208   if(offset & 0x200 && pce_sys3_card) // emulate Arcade Card
1209      return pce_cd_acard_r(space,offset);
1210
12051211   switch( offset )
12061212   {
12071213   case 0x00:   /* CDC status */
r9073r9074
12661272   return data;
12671273}
12681274
1275
1276/*
1277
1278PC Engine Arcade Card emulation
1279
1280*/
1281
1282READ8_HANDLER( pce_cd_acard_r )
1283{
1284//   printf("ACARD access R %04x\n",offset);
1285
1286   if((offset & 0x2e0) == 0x2e0)
1287   {
1288      switch(offset & 0x2ef)
1289      {
1290         case 0x2ef: return 0x51;
1291      }
1292   }
1293
1294   return 0;
1295}
1296
1297WRITE8_HANDLER( pce_cd_acard_w )
1298{
1299//   printf("ACARD access W %04x %02x\n",offset,data);
1300}
src/mess/includes/pce.h
r9073r9074
4444WRITE8_HANDLER( pce_cd_bram_w );
4545WRITE8_HANDLER( pce_cd_intf_w );
4646READ8_HANDLER( pce_cd_intf_r );
47WRITE8_HANDLER( pce_cd_acard_w );
48READ8_HANDLER( pce_cd_acard_r );
4749
50
4851extern struct pce_struct pce;
4952DRIVER_INIT( pce );
5053DRIVER_INIT( tg16 );

Previous 15994 Revisions Next


© 1998-2018 The MESS Team