diff options
author | therealmogminer@gmail.com <therealmogminer@gmail.com> | 2015-06-20 00:45:57 +0200 |
---|---|---|
committer | therealmogminer@gmail.com <therealmogminer@gmail.com> | 2015-06-23 21:01:39 +0200 |
commit | dec289707039f1d3b7b15d1634d6efd8a8f338cc (patch) | |
tree | b295b20eee2c8f580f5fa721bcb1e139215f2aa0 | |
parent | 70a4871beba4659b95af2ca3eb187e0aa8096f3f (diff) |
Add logging
-rw-r--r-- | src/mame/video/n64.c | 5 | ||||
-rw-r--r-- | src/mame/video/n64.h | 1 | ||||
-rw-r--r-- | src/mame/video/rdptpipe.c | 9 |
3 files changed, 14 insertions, 1 deletions
diff --git a/src/mame/video/n64.c b/src/mame/video/n64.c index 3a4310ac7cf..603ce4e0a47 100644 --- a/src/mame/video/n64.c +++ b/src/mame/video/n64.c @@ -2112,7 +2112,7 @@ void n64_rdp::draw_triangle(bool shade, bool texture, bool zbuffer, bool rect) xright += xright_inc; } - if(!new_object && valid) + if(!new_object && valid && !ignored) { render_spans(yh >> 2, yl >> 2, tilenum, flip ? true : false, spans, rect, object); } @@ -2467,6 +2467,8 @@ void n64_rdp::cmd_set_tile_size(UINT32 w1, UINT32 w2) void n64_rdp::cmd_load_block(UINT32 w1, UINT32 w2) { //wait("LoadBlock"); + ignored = false; + if (w1 != 0xf3000000 || w2 != 0x070ff200) ignored = true; n64_tile_t* tile = m_tiles; const INT32 tilenum = (w2 >> 24) & 0x7; @@ -3029,6 +3031,7 @@ void n64_rdp::process_command_list() n64_rdp::n64_rdp(n64_state &state) : poly_manager<UINT32, rdp_poly_state, 8, 32000>(state.machine()) { + ignored = true; m_aux_buf_ptr = 0; m_aux_buf = NULL; m_pipe_clean = true; diff --git a/src/mame/video/n64.h b/src/mame/video/n64.h index 034d1236cbf..c7b1537265c 100644 --- a/src/mame/video/n64.h +++ b/src/mame/video/n64.h @@ -378,6 +378,7 @@ private: INT32 m_gamma_table[256]; INT32 m_gamma_dither_table[0x4000]; + bool ignored; static UINT32 s_special_9bit_clamptable[512]; static const z_decompress_entry_t m_z_dec_table[8]; diff --git a/src/mame/video/rdptpipe.c b/src/mame/video/rdptpipe.c index 184f7ca98fb..b1ada230132 100644 --- a/src/mame/video/rdptpipe.c +++ b/src/mame/video/rdptpipe.c @@ -389,18 +389,25 @@ void n64_texture_pipe_t::cycle_linear_lerp(color_t* TEX, color_t* prev, INT32 SS UINT32 index = (tile.format << 4) | (tile.size << 2) | ((UINT32) object.m_other_modes.en_tlut << 1) | (UINT32) object.m_other_modes.tlut_type; INT32 sss1 = SSS, sst1 = SST; + printf("%08x %08x ", sss1, sst1); bool maxs, maxt; shift_cycle(&sss1, &sst1, &maxs, &maxt, tile); + printf("%08x %08x %d %d ", sss1, sst1, maxs ? 255 : 0, maxt ? 255 : 0); INT32 sfrac = sss1 & 0x1f; INT32 tfrac = sst1 & 0x1f; + printf("%d %d ", sfrac, tfrac); + clamp_cycle(&sss1, &sst1, &sfrac, &tfrac, maxs, maxt, tilenum, tile, userdata); + printf("%08x %08x %d %d ", sss1, sst1, sfrac, tfrac); + INT32 sss2 = sss1 + 1; INT32 sst2 = sst1 + 1; mask_coupled(&sss1, &sss2, &sst1, &sst2, tile); + printf("%08x %08x %08x %08x ", sss1, sst1, sss2, sst2); const UINT32 tbase1 = tile.tmem + ((tile.line * sst1) & 0x1ff); const UINT32 tbase2 = tile.tmem + ((tile.line * sst2) & 0x1ff); @@ -423,6 +430,8 @@ void n64_texture_pipe_t::cycle_linear_lerp(color_t* TEX, color_t* prev, INT32 SS sfrac <<= 3; tfrac <<= 3; + printf("%d %d %d %d\n", sfrac, tfrac, invsf, invtf); + if (!center) { if (upper) |