Previous 15994 Revisions Next

r2170 Sunday 30th March, 2008 at 17:44:20 UTC by Dirk Best
[COUPE] LPEN and HPEN register emulation, fixes ESIStarDemo (and probably others)
[src/mess/drivers]coupe.c
[src/mess/includes]coupe.h
[src/mess/video]coupe.c

src/mess/includes/coupe.h
r2169r2170
4343extern UINT8 SOUND_ADDR;   /* Current Address in sound registers */
4444extern UINT8 SOUND_REG[32]; /* 32 sound registers */
4545extern UINT8 LINE_INT;      /* Line interrupt register */
46extern UINT8 LPEN,HPEN;    /* ??? */
4746extern UINT8 STAT;         /* returned when port 249 read */
4847
4948void coupe_update_memory(void);
src/mess/video/coupe.c
r2169r2170
162162{
163163   int scanline = video_screen_get_vpos(screen);
164164
165   HPEN = scanline;
166
167165   /* line interrupt? */
168166   if (LINE_INT == scanline) coupe_irq(screen->machine, 0x01);
169167
src/mess/drivers/coupe.c
r2169r2170
8080      return SOUND_ADDR;
8181
8282   if (offset==HPEN_PORT)
83      return HPEN;
83   {
84      /* return either the current line or 192 for the vblank area */
85      int line = video_screen_get_vpos(machine->primary_screen);
86      return video_screen_get_vblank(machine->primary_screen) ? 192 : line;
87   }
8488
8589   switch (offset & 0xFF)
8690   {
r2169r2170
101105      wd17xx_set_side((offset >> 2) & 1);
102106        return wd17xx_data_r(machine, 0);
103107   case LPEN_PORT:
104      return LPEN;
108      return video_screen_get_hpos(machine->primary_screen) & 0xfc;
105109   case STAT_PORT:     
106110      return ((getSamKey2((offset >> 8)&0xFF))&0xE0) | STAT;
107111   case LMPR_PORT:

Previous 15994 Revisions Next


© 1998-2018 The MESS Team