Previous 199869 Revisions Next

r36227 Tuesday 3rd March, 2015 at 22:03:20 UTC by David Haywood
notes (nw)
[src/emu/cpu/i386]x87ops.inc
[src/mame/video]hng64_3d.c

trunk/src/emu/cpu/i386/x87ops.inc
r244738r244739
226226
227227void i386_device::x87_set_stack_underflow()
228228{
229   m_x87_sw &= ~X87_SW_C1;
230   m_x87_sw |= X87_SW_IE | X87_SW_SF;
229   m_x87_sw |= X87_SW_C1 | X87_SW_IE | X87_SW_SF;
231230}
232231
233232void i386_device::x87_set_stack_overflow()
234233{
235   m_x87_sw |= X87_SW_C1 | X87_SW_IE | X87_SW_SF;
234   m_x87_sw &= ~X87_SW_C1;
235   m_x87_sw |= X87_SW_IE | X87_SW_SF;
236236}
237237
238238int i386_device::x87_inc_stack()
trunk/src/mame/video/hng64_3d.c
r244738r244739
463463         // GATHER A SINGLE TRIANGLE'S INFORMATION //
464464         ////////////////////////////////////////////
465465         // SINGLE POLY CHUNK FORMAT
466         // [0] ??-- - ???
467         // [0] --xx - Chunk type
468         //
469         // [1] ?--- - Flags [?000 = ???
470         //                   0?00 = ???
471         //                   00?0 = ???
472         //                   000x = low-res texture flag]
473         // [1] -x-- - Explicit 0x80 palette index.
474         // [1] --x- - Explicit 0x08 palette index.
475         // [1] ---x - Texture page (1024x1024 bytes)
476         //
477         // [2] x--- - Texture Flags [x000 = Uses 4x4 sub-texture pages?
478         //                           0?00 = ??? - differen sub-page size?  SNK logo in RoadEdge.  Always on in bbust2.
479         //                           00xx = Horizontal sub-texture page index]
480         // [2] -?-- - ??? - barely visible (thus far) in roadedge
481         // [2] --x- - Texture Flags [?000 = ???
482         //                           0xx0 = Vertical sub-texture page index.
483         //                           000? = ???]
484         // [2] ---? - ???
485         //////////////////////////
466         ////////////////////////////////////////////
467         // GATHER A SINGLE TRIANGLE'S INFORMATION //
468         ////////////////////////////////////////////
469         // SINGLE POLY CHUNK FORMAT
470         // [0] 0000 0000 cccc cccc    0 = always 0 | c = chunk type / format of data that follows (see below)
471         // [1] u--l pppp pppp ssss    u = unknown, always on for most games, on for the backgrounds only on sams64, l = low-res texture?  p = palette?  s = texture sheet (1024 x 1024 pages)
472         // [2] S?XX *--- -YY# ----    S = use 4x4 sub-texture pages?  ? = SNK logo roadedge / bbust2 / broken banners in xrally,  XX = horizontal subtexture  * = broken banners in xrally  YY = vertical subtexture  @ = broken banners in xrally
473
474         // we currently use one of the palette bits to enable a different palette mode.. seems hacky...
475         // looks like vertical / horizontal sub-pages might be 3 bits, not 2,  ? could be enable bit for that..
476
477         // 'Welcome to South Africa' roadside banner on xrally | 000e 8c0d d870 or 0096 8c0d d870  (8c0d, d870 seems key 1000 1100 0000 1101
478         //                                                                                                               1101 1000 0111 0000 )
479
480
486481         UINT8 chunkType = chunkOffset[0] & 0x00ff;
487482
488483         // Debug - ajg
r244738r244739
850845   }
851846}
852847
848// note 0x0102 packets are only 8 words, it appears they can be in either the upper or lower half of the 16 word packet.
849// We currently only draw 0x0102 packets where both halves contain 0x0102 (2 calls), but this causes graphics to vanish in xrally because in some cases the 0x0102 packet only exists in the upper or lower half
850// with another value (often 0x0000 - NOP) in the other.
851// If we also treat (0x0000 - NOP) as 8 word  instead of 16 so that we can access a 0x0102 in the 2nd half of the 16 word packet then we end up with other invalid packets in the 2nd half which should be ignored.
852// This would suggest our processing if flawed in other ways, or there is something else to indicate packet length.
853
853854void hng64_state::hng64_command3d(const UINT16* packet)
854855{
855856


Previous 199869 Revisions Next


© 1997-2024 The MAME Team