More documentation ...

This commit is contained in:
Angelo Salese 2011-05-13 00:47:26 +00:00
parent d715b4237b
commit 073cfd746c
3 changed files with 60 additions and 5 deletions

View File

@ -187,6 +187,7 @@ EMUMACHINEOBJS = \
$(EMUMACHINE)/jvsdev.o \
$(EMUMACHINE)/jvshost.o \
$(EMUMACHINE)/k033906.o \
$(EMUMACHINE)/k053252.o \
$(EMUMACHINE)/k056230.o \
$(EMUMACHINE)/latch8.o \
$(EMUMACHINE)/ldcore.o \

View File

@ -137,7 +137,7 @@ static ADDRESS_MAP_START( dbz_map, AS_PROGRAM, 16 )
AM_RANGE(0x4ec000, 0x4ec001) AM_WRITE(dbzcontrol_w)
AM_RANGE(0x4f0000, 0x4f0001) AM_WRITE(dbz_sound_command_w)
AM_RANGE(0x4f4000, 0x4f4001) AM_WRITE(dbz_sound_cause_nmi)
AM_RANGE(0x4f8000, 0x4f801f) AM_DEVREADWRITE8("k053252",k053252_r,k053252_w,0x00ff) // 251 #1
AM_RANGE(0x4f8000, 0x4f801f) AM_DEVREADWRITE8("k053252",k053252_r,k053252_w,0xff00) // 251 #1
AM_RANGE(0x4fc000, 0x4fc01f) AM_DEVWRITE("k053251", k053251_lsb_w) // 251 #2
AM_RANGE(0x500000, 0x501fff) AM_RAM_WRITE(dbz_bg2_videoram_w) AM_BASE_MEMBER(dbz_state, m_bg2_videoram)

View File

@ -9003,7 +9003,7 @@ viostorm: 01 FF 00 16 00 39 00 00 01 07 11 0E 75 00 00 00 384x224 ~ 385x224
mtlchamp: 01 FF 00 21 00 37 00 00 01 07 11 0E 74 00 00 00 384x224 ~ 384x224
dbz: 01 FF 00 21 00 37 00 00 01 20 0C 0E 54 00 00 00 384x256 ~ 384x256
dbz2: 01 FF 00 21 00 37 00 00 01 20 0C 0E 54 00 00 00 384x256 ~ 384x256
xexex: 01 FF 00 21 00 37 01 00 01 20 0C 0E 54 00 00 00 384x256 ~ 384x256 (*)
xexex: 01 FF 00 21 00 37 01 00 00 20 0C 0E 54 00 00 00 384x256 ~ 384x256 (*)
(all konamigx, cowboys of moo mesa, run & gun, dj main)
(*) hblank duration 512 (0x200), hdisp 384 (0x180), vblank duration 288 (0x120), vdisp 256 (0x100)
@ -9013,23 +9013,31 @@ xexex: 01 FF 00 21 00 37 01 00 01 20 0C 0E 54 00 00 00 384x256 ~ 384x256 (*)
0-1: bits 9-0: HC - Total hblank duration (-1) Hres ~ (HC+1) - HFP - HBP - 8*(HSW+1)
2-3: bits 8-0: HFP - HBlank front porch
4-5: bits 8-0: HBP - HBlank back porch
6 : bits 7-0: INT1EN
7 : bits 7-0: INT2EN
8-9: bits 8-0: VC - Total vblank duration
a : bits 7-0: VFP - VBlank front porch Vres ~ VC - VFP - VBP - (VSW+1)
b : bits 7-0: VBP - VBlank back porch
c : bits 7-4: VSW
c : bits 3-0: HSW
c : bits 7-4: VSW - V-Sync Width
c : bits 3-0: HSW - H-Sync Width
d : bits 7-0: INT-TIME
e : bits 7-0: INT1ACK
f : bits 7-0: INT2ACK
Read-only:
e-f: vits 8-0: VCT
e-f: bits 8-0: VCT
TODO:
- xexex sets up 0x20 as the VC?
*/
typedef struct _k053252_state k053252_state;
struct _k053252_state
{
UINT8 regs[16];
UINT16 hc,hfp,hbp;
UINT16 vc,vfp,vbp;
UINT8 vsw,hsw;
};
/*****************************************************************************
@ -9057,7 +9065,53 @@ READ8_DEVICE_HANDLER( k053252_r )
WRITE8_DEVICE_HANDLER( k053252_w )
{
k053252_state *k053252 = k053252_get_safe_token(device);
k053252->regs[offset] = data;
//printf("%04x %02x\n",offset,data);
switch(offset)
{
case 0x00:
case 0x01:
k053252->hc = (k053252->regs[1]&0xff);
k053252->hc |= ((k053252->regs[0]&0x03)<<8);
k053252->hc ++;
logerror("%d (%04x) HC set\n",k053252->hc,k053252->hc);
break;
case 0x02:
case 0x03:
k053252->hfp = (k053252->regs[3]&0xff);
k053252->hfp |= ((k053252->regs[2]&0x01)<<8);
logerror("%d (%04x) HFP set\n",k053252->hfp,k053252->hfp);
break;
case 0x04:
case 0x05:
k053252->hbp = (k053252->regs[5]&0xff);
k053252->hbp |= ((k053252->regs[4]&0x01)<<8);
logerror("%d (%04x) HBP set\n",k053252->hbp,k053252->hbp);
break;
case 0x08:
case 0x09:
k053252->vc = (k053252->regs[9]&0xff);
k053252->vc |= ((k053252->regs[8]&0x01)<<8);
k053252->vc ++;
logerror("%d (%04x) VC set\n",k053252->vc,k053252->vc);
break;
case 0x0a:
k053252->vfp = (k053252->regs[0x0a]&0xff);
logerror("%d (%04x) VFP set\n",k053252->vfp,k053252->vfp);
break;
case 0x0b:
k053252->vbp = (k053252->regs[0x0b]&0xff);
logerror("%d (%04x) VBP set\n",k053252->vbp,k053252->vbp);
break;
case 0x0c:
k053252->vsw = ((k053252->regs[0x0c]&0xf0) >> 4) + 1;
k053252->hsw = ((k053252->regs[0x0c]&0x0f) >> 0) + 1;
logerror("%02x VSW / %02x HSW set\n",k053252->vsw,k053252->hsw);
break;
}
}