From d8a44f44e35ebd2abd654212fdd0c9896988d055 Mon Sep 17 00:00:00 2001 From: angelosa Date: Sun, 20 Aug 2023 03:29:00 +0200 Subject: video/mb86292.cpp: finalize register documentation --- src/devices/video/mb86292.cpp | 121 ++++++++++++++++++++++++++++++------------ 1 file changed, 88 insertions(+), 33 deletions(-) diff --git a/src/devices/video/mb86292.cpp b/src/devices/video/mb86292.cpp index eef4d29c64b..8556e352029 100644 --- a/src/devices/video/mb86292.cpp +++ b/src/devices/video/mb86292.cpp @@ -54,6 +54,7 @@ void mb86292_device::vregs_map(address_map &map) // map(0x00044, 0x00047) LCO display List COunt // map(0x00048, 0x00048) LREQ display List transfer REQuest // map(0x0fffc, 0x0ffff) MMR Memory I/F Mode Register + // 0x1fd0000 Display engine DisplayBase // map(0x10000, 0x10001) DCM Display Control Mode // map(0x10002, 0x10003) DCE Display Controller Enable @@ -71,52 +72,106 @@ void mb86292_device::vregs_map(address_map &map) // map(0x1001c, 0x1001d) WW Window Width // map(0x1001e, 0x1001f) WH Window Height // map(0x10020, 0x10023) CM C[onsole] layer Mode -// map(0x10024, 0x10027) COA C[onsole] layer Origin Address -// map(0x10028, 0x1002b) CDA C[onsole] layer Display Address -// map(0x1002c, 0x1002d) CDX C[onsole] layer Display position X -// map(0x1002e, 0x1002f) CDY C[onsole] layer Display position Y +// map(0x10024, 0x10027) COA C layer Origin Address +// map(0x10028, 0x1002b) CDA C layer Display Address +// map(0x1002c, 0x1002d) CDX C layer Display position X +// map(0x1002e, 0x1002f) CDY C layer Display position Y // map(0x10030, 0x10033) WM W[indow] layer Mode -// map(0x10034, 0x10037) WOA W[indow] layer Origin Address -// map(0x10038, 0x1003b) WDA W[indow] layer Display Address +// map(0x10034, 0x10037) WOA W layer Origin Address +// map(0x10038, 0x1003b) WDA W layer Display Address // map(0x10040, 0x10043) MLM M[iddle] L[eft] layer Mode -// map(0x10044, 0x10047) MLOA0 M[iddle] L[eft] Origin Address 0 -// map(0x10048, 0x1004b) MLDA0 M[iddle] L[eft] Display Address 0 -// map(0x1004c, 0x1004f) MLOA1 M[iddle] L[eft] Origin Address 1 -// map(0x10050, 0x10053) MLDA1 M[iddle] L[eft] Display Address 1 -// map(0x10054, 0x10055) MLDX M[iddle] L[eft] Display position X -// map(0x10056, 0x10057) MLDY M[iddle] L[eft] Display position Y +// map(0x10044, 0x10047) MLOA0 ML Origin Address 0 +// map(0x10048, 0x1004b) MLDA0 ML Display Address 0 +// map(0x1004c, 0x1004f) MLOA1 ML Origin Address 1 +// map(0x10050, 0x10053) MLDA1 ML Display Address 1 +// map(0x10054, 0x10055) MLDX ML Display position X +// map(0x10056, 0x10057) MLDY ML Display position Y // map(0x10058, 0x1005b) MRM M[iddle] R[ight] layer Mode -// map(0x1005c, 0x1005f) MROA0 M[iddle] R[ight] Origin Address 0 -// map(0x10060, 0x10063) MRDA0 M[iddle] R[ight] Display Address 0 -// map(0x10064, 0x1004f) MROA1 M[iddle] R[ight] Origin Address 1 -// map(0x10068, 0x10053) MRDA1 M[iddle] R[ight] Display Address 1 -// map(0x1006c, 0x1006d) MRDX M[iddle] R[ight] Display position X -// map(0x1006e, 0x1006f) MRDY M[iddle] R[ight] Display position Y +// map(0x1005c, 0x1005f) MROA0 MR Origin Address 0 +// map(0x10060, 0x10063) MRDA0 MR Display Address 0 +// map(0x10064, 0x1004f) MROA1 MR Origin Address 1 +// map(0x10068, 0x10053) MRDA1 MR Display Address 1 +// map(0x1006c, 0x1006d) MRDX MR Display position X +// map(0x1006e, 0x1006f) MRDY MR Display position Y // map(0x10070, 0x10073) BLM B[ase] L[eft] layer Mode -// map(0x10074, 0x10077) BLOA0 B[ase] L[eft] Origin Address 0 -// map(0x10078, 0x1007b) BLDA0 B[ase] L[eft] Display Address 0 -// map(0x1007c, 0x1007f) BLOA1 B[ase] L[eft] Origin Address 1 -// map(0x10080, 0x10083) BLDA1 B[ase] L[eft] Display Address 1 -// map(0x10084, 0x10085) BLDX B[ase] L[eft] Display position X -// map(0x10086, 0x10087) BLDY B[ase] L[eft] Display position Y +// map(0x10074, 0x10077) BLOA0 BL Origin Address 0 +// map(0x10078, 0x1007b) BLDA0 BL Display Address 0 +// map(0x1007c, 0x1007f) BLOA1 BL Origin Address 1 +// map(0x10080, 0x10083) BLDA1 BL Display Address 1 +// map(0x10084, 0x10085) BLDX BL Display position X +// map(0x10086, 0x10087) BLDY BL Display position Y // map(0x10088, 0x1008b) BRM B[ase] R[ight] layer Mode -// map(0x1008c, 0x1008f) BROA0 B[ase] R[ight] Origin Address 0 -// map(0x10090, 0x10093) BRDA0 B[ase] R[ight] Display Address 0 -// map(0x10094, 0x10097) BROA1 B[ase] R[ight] Origin Address 1 -// map(0x10098, 0x1009b) BRDA1 B[ase] R[ight] Display Address 1 -// map(0x1009c, 0x1009d) BRDX B[ase] R[ight] Display position X -// map(0x1009e, 0x1009f) BRDY B[ase] R[ight] Display position Y +// map(0x1008c, 0x1008f) BROA0 BR Origin Address 0 +// map(0x10090, 0x10093) BRDA0 BR Display Address 0 +// map(0x10094, 0x10097) BROA1 BR Origin Address 1 +// map(0x10098, 0x1009b) BRDA1 BR Display Address 1 +// map(0x1009c, 0x1009d) BRDX BR Display position X +// map(0x1009e, 0x1009f) BRDY BR Display position Y // map(0x100a0, 0x100a1) CUTC Cursor Transparent Control // map(0x100a2, 0x100a2) CPM Cursor Priority Mode -// ... +// map(0x100a4, 0x100a7) CUOA0 CUrsor 0 Origin Address +// map(0x100a8, 0x100a9) CUX0 CUrsor 0 X position +// map(0x100aa, 0x100ab) CUY0 CUrsor 0 Y position +// map(0x100ac, 0x100af) CUOA1 CUrsor 1 Origin Address +// map(0x100b0, 0x100b1) CUX1 CUrsor 1 X position +// map(0x100b2, 0x100b3) CUY1 CUrsor 1 Y position +// map(0x100b4, 0x100b5) BRATIO Blend RATIO +// map(0x100b6, 0x100b7) BMODE Blend MODE +// map(0x100bc, 0x100bd) CTC C layer Transparent Control +// map(0x100c0, 0x100c1) MRTC MR layer Transparent Control +// map(0x100c2, 0x100c3) MLTC ML layer Transparent Control // map(0x10400, 0x107ff) CPAL C layer PALette // map(0x10800, 0x10bff) MBPAL M & B layer PALette // 0x1fd8000 Video capture CaptureBase -// map(0x18000, ...) +// map(0x18000, 0x18003) VCM Video Capture Mode +// map(0x18004, 0x18007) CSC Capture SCale +// map(0x18008, 0x1800b) VCS Video Capture Status +// map(0x18010, 0x18013) CBM video Capture Buffer Mode +// map(0x18014, 0x18017) CBOA video Capture Buffer Origin Address +// map(0x18018, 0x1801b) CBLA video Capture Buffer Limit Address +// map(0x1801c, 0x1801d) CIHSTR Capture Image Horizontal STaRt +// map(0x1801e, 0x1801f) CIVSTR Capture Image Vertical STaRt +// map(0x18020, 0x18021) CIHEND Capture Image Horizontal END +// map(0x18022, 0x18023) CIVEND Capture Image Vertical END +// map(0x18028, 0x1802b) CHP Capture Horizontal Pixel +// map(0x1802c, 0x1802f) CVP Capture Vertical Pixel +// map(0x1c000, 0x1c003) CDCN Capture Data Count NTSC +// map(0x1c004, 0x1c007) CDCP Capture Data Count PAL + // 0x1fe0000 Internal texture memory TextureBase // map(0x20000, ...) // 0x1ff0000 Drawing engine DrawBase -// map(0x30000, ...) +// map(0x30400, 0x30403) CTR ConTrol Register +// map(0x30404, 0x30407) IFSR Input FIFO Status Register (CTR bits 14-12 alias) +// map(0x30408, 0x3040b) IFCNT Input FIFO CouNTer (CTR bits 19-15 alias) +// map(0x3040c, 0x3040f) SST Setup engine STatus (CTR bits 9-8 alias) +// map(0x30410, 0x30413) DST DDA STatus (CTR bits 5-4 alias) +// map(0x30414, 0x30417) PST Pixel engine STatus (CTR bits 1-0 alias) +// map(0x30418, 0x3041b) EST Error STatus (CTR bits 24-22 alias) +// map(0x30420, 0x30423) MDR0 MoDe Register 0 (miscellaneous) +// map(0x30424, 0x30427) MDR1 MoDe Register 1 (line) +// map(0x30428, 0x3042b) MDR2 MoDe Register 2 (polygon) +// map(0x3042c, 0x3042f) MDR3 MoDe Register 3 (texture) +// map(0x30430, 0x30433) MDR4 MoDe Register 4 (BitBLT) +// map(0x30440, 0x30443) FBR Frame Buffer Register base address +// map(0x30444, 0x30447) XRES X RESoultion +// map(0x30448, 0x3044b) ZBR Z-Buffer Register base address +// map(0x3044c, 0x3044f) TBR Texture memory Base address +// map(0x30450, 0x30453) PFBR 2d Polygon Flag Buffer base address +// map(0x30454, 0x30457) CXMIN Clip X MINimum +// map(0x30458, 0x3045b) CXMAX Clip X MAXimum +// map(0x3045c, 0x3045f) CYMIN Clip Y MINimum +// map(0x30460, 0x30463) CYMAX Clip Y MAXimum +// map(0x30464, 0x30467) TXS TeXture Size +// map(0x30468, 0x3046b) TIle Size +// map(0x3046c, 0x3046f) TOA Texture buffer Offset Address +// map(0x30480, 0x30483) FC Foreground Color +// map(0x30484, 0x30487) BC Background Color +// map(0x30488, 0x3048b) ALF ALpha Factor +// map(0x3048c, 0x3048f) BLP Broken Line Pattern +// map(0x303e0?, 0x303e3?) BLPO Broken Line Pattern Offset <- assume doc mistake, 0x490 seems more realistic +// map(0x30494, 0x30497) TBC Texture Border Color +// Other stuff in the area are apparently r/o copies of the drawing engine internals. // 0x1ff8000 Geometry engine GeometryBase // map(0x38000, ...) } -- cgit v1.2.3