Z64

Please login or register.

Login with username, password and session length
Advanced search  

News:

Check out and improve the wiki!

Pages: [1] 2 3

Author Topic: DLViewer - libbadRDP-based viewer for compiled Display Lists  (Read 10581 times)

xdaniel

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 295
    • ICQ Messenger - 136250978
    • View Profile
DLViewer - libbadRDP-based viewer for compiled Display Lists
« on: December 14, 2010, 12:26:59 AM »

DLViewer v0.0.1 (Dec 19 2010 17:49:16), Win32 Binary: http://code.google.com/p/ozmav/downloads/detail?name=DLViewer-v001.rar




Original post below...





Load binary files into RAM segments, scan for Display Lists, set the scaling and you're done. Still buggy - especially the rendering, see the screenshots below - but on a good path, I suppose. Binary, source, etc. coming soon-ish.

http://i.imgur.com/H8e3h.png
http://i.imgur.com/Eekty.png
http://i.imgur.com/5Y0WE.png
http://i.imgur.com/D9sRY.png
« Last Edit: December 19, 2010, 04:56:27 PM by xdaniel »
Logged
cu xdaniel

Nanami - Desktop:

Kazari - Notebook:

Nexus

  • Guest
Re: DLViewer - libbadRDP-based viewer for compiled Display Lists
« Reply #1 on: December 14, 2010, 12:37:54 AM »

Your shit is golden!
Logged

xdaniel

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 295
    • ICQ Messenger - 136250978
    • View Profile
Re: DLViewer - libbadRDP-based viewer for compiled Display Lists
« Reply #2 on: December 14, 2010, 03:06:37 AM »



Logged
cu xdaniel

Nanami - Desktop:

Kazari - Notebook:

Mallos31

  • Full Member
  • ***
  • Posts: 233
    • View Profile
    • Email
Re: DLViewer - libbadRDP-based viewer for compiled Display Lists
« Reply #3 on: December 14, 2010, 04:33:46 AM »

I'm very sorry for my sheer stupidity, but I really don't understand what this is? I'm sure it's freakin' amazing, but I just don't get it.
Logged

marshallh

  • Newbie
  • *
  • Posts: 37
    • View Profile
Re: DLViewer - libbadRDP-based viewer for compiled Display Lists
« Reply #4 on: December 14, 2010, 05:27:44 AM »

very cool. I have a 4mbyte displaylist that i want to try this with :)
Logged

xdaniel

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 295
    • ICQ Messenger - 136250978
    • View Profile
Re: DLViewer - libbadRDP-based viewer for compiled Display Lists
« Reply #5 on: December 14, 2010, 10:25:57 AM »

Mallos31: It's basically a kind of model viewer, but for raw Display Lists. No level data or map headers or anything involved. You load up a file, put it into one of the N64's RAM segments and let the program scan for possible Display Lists. Gonna allow manual entering of Display Lists addresses as well, need to add that feature again (was in initially, but got an idea on how to do this better).

marshallh: You'll get the chance to try it tomorrow or so, still fixing some stuff up, probably gonna add support for loading RAM dumps instead of directly filling segments, etc. :)
Logged
cu xdaniel

Nanami - Desktop:

Kazari - Notebook:

Mallos31

  • Full Member
  • ***
  • Posts: 233
    • View Profile
    • Email
Re: DLViewer - libbadRDP-based viewer for compiled Display Lists
« Reply #6 on: December 14, 2010, 04:58:16 PM »

Does it use OpenGL or what? (I can't use anything that uses OpenGL for my own stupid reasons until I get a new graphics card)
Logged

xdaniel

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 295
    • ICQ Messenger - 136250978
    • View Profile
Re: DLViewer - libbadRDP-based viewer for compiled Display Lists
« Reply #7 on: December 14, 2010, 05:13:11 PM »

Mallos31: Like all my 3D-related programs, yeah. In that regard it's pretty much identical to OZMAV2 and ZSaten, especially since it, too, is using libbadRDP which in turn uses OpenGL. I once tried using Direct3D a few years ago, but - at least to me - it seemed way to complicated - not to mention there's no DirectX under Linux or any other OS besides Windows.
Logged
cu xdaniel

Nanami - Desktop:

Kazari - Notebook:

Tilocoma

  • Newbie
  • *
  • Posts: 3
    • View Profile
    • Email
Re: DLViewer - libbadRDP-based viewer for compiled Display Lists
« Reply #8 on: December 15, 2010, 11:38:51 AM »

I love your work X. It's been awhile since I have had anything to do with you guys *BK-SNS-BT at ZSO*, but I remember that you helped me out on more than one occasion. What you have been doing now is amazing and, in my opinion, overtaking Cooliscool's work. (Not to be disrespectful to him. He was a huge help.)
Logged

xdaniel

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 295
    • ICQ Messenger - 136250978
    • View Profile
Re: DLViewer - libbadRDP-based viewer for compiled Display Lists
« Reply #9 on: December 15, 2010, 05:30:40 PM »

Heh, nice to read a familiar name, it's really been a while :)  As for overtaking cool, while that might be the case now, I wouldn't have stuck with this map viewer business as long as I did without him and ZAVAP/UoT - seeing UoT get better and better was a motivation for me to ex. improve OZMAV's rendering.

Anyway, as for this thread:



Showcasing some new features: For one, manual entering of Display List addresses is now in, instead of having to scan for them. Also - mainly because it got tedious to manually load an object, load gameplay_keep (used ex. by object_gi_arrow for textures), set the scaling, etc. - I've implemented loading of a kind of command script, which, as visible above, is simply a text file containing to commands to execute in order. Like so:

loadseg 0x04 gameplay_keep
loadseg 0x06 object_gi_coin
adddlist 0x06000560
adddlist 0x060005E0
adddlist 0x06000768
setscale 0.05


This loads up gameplay_keep into segment 0x04, object_gi_coin into segment 0x06, adds the object's DL addresses 0x06000560 (one of four possible colors, the others come in 0x20 increments), 0x060005E0 (the coin itself) and 0x06000768 (the "N") and sets the scaling to 0.05.

Also:



Loading RAM dumps and executing their "master Display List" is in, which required a bunch of modifications to libbadRDP. The actors' and other elements' translation/rotation appears broken because matrix emulation sucks as badly as ever - I probably just copy the old DumpOZMAV's MTX approximation, which isn't accurate but worked. Once this RAM dump stuff works - and badRDP isn't too bad/eventual bugs have been fixed -, the output shown should be pretty much identical to one frame of what an emulator should display.

Download (well, at least a Windows binary) should be coming up either this evening or tomorrow.

EDIT:



loadseg 0x03 spot00_room_0
loadseg 0x02 spot00_scene
finddlists 0x03
setscale 0.005


Funny how DLViewer renders maps better than OZMAV2 does, huh? On the other hand...



A RAM dump from Sin and Punishment. While the inaccurate matrix faking I mentioned works, uh... let's say quite a bit of other stuff apparently doesn't.

EDIT 2:

Download: DLViewer v0.0, Win32 Binary
« Last Edit: December 15, 2010, 10:20:52 PM by xdaniel »
Logged
cu xdaniel

Nanami - Desktop:

Kazari - Notebook:

xdaniel

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 295
    • ICQ Messenger - 136250978
    • View Profile
Re: DLViewer - libbadRDP-based viewer for compiled Display Lists
« Reply #10 on: December 15, 2010, 10:30:08 PM »

...actually, why not bump this thread a bit, since there's a download available now and all...
Logged
cu xdaniel

Nanami - Desktop:

Kazari - Notebook:

Jason777

  • Wiki Contributor
  • Full Member
  • ***
  • Posts: 116
    • View Profile
Re: DLViewer - libbadRDP-based viewer for compiled Display Lists
« Reply #11 on: December 15, 2010, 11:06:04 PM »

I've had an idea ,Mr. xdaniel, why not take all the programs that you have written for OoT/MM and combine them all into one program with a really fancy interface to choose which option (DList viewing for example) you would like to use? Like OZMAV2, ZSaten, DLViewer, and any others i forgot to mention combined into one mega awesome program :P
Logged

spinout

  • Administrator
  • Sr. Member
  • *****
  • Posts: 309
    • View Profile
    • Email
Re: DLViewer - libbadRDP-based viewer for compiled Display Lists
« Reply #12 on: December 15, 2010, 11:13:21 PM »

I've had an idea ,Mr. xdaniel, why not take all the programs that you have written for OoT/MM and combine them all into one program with a really fancy interface to choose which option (DList viewing for example) you would like to use? Like OZMAV2, ZSaten, DLViewer, and any others i forgot to mention combined into one mega awesome program :P
I don't know if this is xdaniel's view, but I think programs should do one thing, and do it well.
Logged
biggrin.gif

xdaniel

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 295
    • ICQ Messenger - 136250978
    • View Profile
Re: DLViewer - libbadRDP-based viewer for compiled Display Lists
« Reply #13 on: December 15, 2010, 11:23:34 PM »

Yeah, while I do believe in sharing code between programs instead of reinventing the wheel each time (which is why MISAKA and badRDP exist in the first place), I don't believe in stuffing as much functionality as possible into one single program. In addition, OZMAV2 alone, for example, might already be a bit intimidating for someone new to it - console interface, rudimentary GUI and all -, and adding ZSaten, DLViewer and possibly even SM64toZ64 would only make it worse.
Logged
cu xdaniel

Nanami - Desktop:

Kazari - Notebook:

Tilocoma

  • Newbie
  • *
  • Posts: 3
    • View Profile
    • Email
Re: DLViewer - libbadRDP-based viewer for compiled Display Lists
« Reply #14 on: December 15, 2010, 11:30:55 PM »

Heh, nice to read a familiar name, it's really been a while :)
Ha ha. I can't imagine anyone actually remembering me. :D It feels like it has been years since I have even thought about ZSO. How long has it been really?
Logged
Pages: [1] 2 3