Boot-up data transferred to Real3D

Technical discussion for those interested in Supermodel development and Model 3 reverse engineering. Prospective contributors welcome.
Forum rules
Keep it classy!

  • No ROM requests or links.
  • Do not ask to be a play tester.
  • Do not ask about release dates.
  • No drama!

Re: Boot-up data transferred to Real3D

Postby Bart » Fri Aug 25, 2017 8:15 am

I'll have a look at what's being written to TAP in this and other games. It provides a mechanism to poke internal Real3D memory regions (that's how the VROM, z-buffer RAM, etc. are tested in the service menus), so it's theoretically possible that it is changing some renderer logic.

JTAG data is a nightmare to reverse engineer but if we see anything promising we can sit down and hand translate the code. If we suspect it's messing with the renderer, it will be important to try to find examples of similar commands used in other games.
User avatar
Bart
Site Admin
 
Posts: 2001
Joined: Thu Sep 01, 2011 2:13 pm
Location: New York City

Re: Boot-up data transferred to Real3D

Postby Ian » Fri Aug 25, 2017 9:09 am

Virtua on might be an interesting test case because it appears to be switching logic between different levels
Ian
 
Posts: 1126
Joined: Tue Feb 23, 2016 9:23 am

Re: Boot-up data transferred to Real3D

Postby Bart » Fri Aug 25, 2017 11:12 am

Different levels? Of what? The clamp value?

EDIT: oh, you mean it's switching the logic between different levels of the game. Do you guys suspect it's just a boolean setting of some sort? I guess we'll have to see what's being written. But we need to examine all other games for in-game writes to TAP because we have no idea how common this might be.

EDIT 2: The more I think about this, the more curious I am. As I've mentioned, I found that writing to the TAP was absolutely necessary to get the display to come up. So clearly, some important configuration registers are only accessible through this interface, although I thought that this would be limited to very low-level physical stuff like display timing or some sort of chip enable stuff. I'll try to get something for you guys mid next week. I've come down with a bit of a medical situation that is going to eat up a bunch of my time on Monday that otherwise could have gone into this. I also want to keep my momentum on frame timing.
User avatar
Bart
Site Admin
 
Posts: 2001
Joined: Thu Sep 01, 2011 2:13 pm
Location: New York City

Re: Boot-up data transferred to Real3D

Postby Ian » Fri Aug 25, 2017 11:30 am

EDIT: oh, you mean it's switching the logic between different levels of the game.

Yes exactly :)

Do you guys suspect it's just a boolean setting of some sort?

Yeah that would be my best guess!

I've come down with a bit of a medical situation that is going to eat up a bunch of my time on Monday that otherwise could have gone into this.

Hope you are okay Bart!

This is what unclamped looks like, it actually subtracts from the ambient, so you get a kind of inverse lighting. Look at the guy kneeling
Image
Ian
 
Posts: 1126
Joined: Tue Feb 23, 2016 9:23 am

Re: Boot-up data transferred to Real3D

Postby Bart » Fri Aug 25, 2017 9:05 pm

I'm okay, thanks for asking :) But I lost a substantial amount of low-frequency hearing in my left ear and recovery is not looking hopeful because treatment was not administered soon enough. Better get a new SCSP core in before something happens to my other ear :lol:

I see exactly what you mean by inverse lighting and I noticed it playing LA Machineguns in a build subsequent to the one I recorded my video with. I recognize it -- it's that distinctive "Model 3 look" that has the effect of exaggerating smooth shading and giving objects a distinctive 3D look. I think the ambulance in ECA has it, too.
User avatar
Bart
Site Admin
 
Posts: 2001
Joined: Thu Sep 01, 2011 2:13 pm
Location: New York City

Re: Boot-up data transferred to Real3D

Postby Ian » Sat Aug 26, 2017 2:12 am

What happened to your ear? Infection ?
Ian
 
Posts: 1126
Joined: Tue Feb 23, 2016 9:23 am

Re: Boot-up data transferred to Real3D

Postby Bart » Sun Aug 27, 2017 11:55 am

Yup. No actual visual signs of infection though, so two doctors figured it was eustacian tube disorder following a flight I recently took. The second doctor should probably have prescribed more steroid pills earlier on, when the condition was still stable.

<Rant>
There's definitely an opportunity here to revolutionize the medical field, which at least in the USA is stifled by a Kafka-esque private/public bureaucracy and doctors whose supply is artificially constrained and that have been elevated into some sort of priestly class. Obviously, there's no lack of entrepreneurs trying to make a dent but I think machine learning (effective at the sort of pattern recognition and inference that define a good doctor) and cheap personal diagnostics are going to eventually break through the medical bureaucracy and regulatory frameworks that are desperately trying to keep them out of the hands of ordinary people. They're just becoming too useful. Take for instance hearing tests. I'm surprised I didn't think of it until a few days earlier but you can administer a useful test via YouTube videos and a pair of iPhone earbuds. The more detailed (and super expensive) test I received a couple days ago (after a 2-week waiting period!) wasn't any better because at the end of it, all the doctor looked at (for all of 5 seconds) was a frequency vs. detection volume plot that I could have produced myself!

I don't think I'm motivated or skilled enough to tackle this field but it has given me a lot to think about!
</Rant>

Anyway... back to Model 3 ;)
User avatar
Bart
Site Admin
 
Posts: 2001
Joined: Thu Sep 01, 2011 2:13 pm
Location: New York City

Re: Boot-up data transferred to Real3D

Postby Ian » Mon Aug 28, 2017 5:27 am

Healthcare .. yeah I could talk for hours on that.

My guide to staying alive.
Amalgams leak mercury vapor which is insanely toxic -> https://www.youtube.com/watch?v=9ylnQ-T7oiA
Root canals grow anaerobic bacteria, poisoning your body -> https://www.youtube.com/watch?v=xRrlgYqtDjM
They also using materials in them which are known to carcinogenic
Dentists also use metals in people which are allergic to them causing full blown auto immune diseases -> https://www.youtube.com/watch?v=OTNmTWMDbfk
Abscesses and extractions can cause jawbone cavitations which will also grow anaerobic bacteria, slowly killing you off -> https://www.youtube.com/watch?v=O6fatrZ96Do

Here is a few fun ones
Look at this fucking idiot -> https://www.youtube.com/watch?v=fq8E84PgP3g

I actually had a disease which officially has no treatment for, and got better. It is possible, sometimes you need to educate yourself and step outside of the box.
Ian
 
Posts: 1126
Joined: Tue Feb 23, 2016 9:23 am

Re: Boot-up data transferred to Real3D

Postby Bart » Wed Aug 30, 2017 1:01 pm

Re: the VON2 TAP stuff... I don't know which levels are affected by suspected lighting model changes nor how to get to them. Can we get our hands on save states? They must be produced carefully or they'll be worthless. They should be taken immediately upon winning the preceding match (e.g., as the defeated robot is exploding) because the TAP values are loaded early on during the transition screen. It would also be a nice bonus to have save states for each level leading up to that.

The games definitely write to TAP intermittently. It doesn't prove the lighting model can be changed but it's worth a look. I can't think of any reason why the games are doing this and I haven't tried correlating it to any other kind of access yet (for example, I'm not simultaneously logging Real3D DMA transfers). At least within the first stage, VON2 issues two particular instructions via TAP. LA Machineguns uses them too (with the same data written as far as I can tell). The latter game also writes a lot more stuff using other commands. No idea what it could be.

Charles MacDonald pointed out to me that a lot of times, this kind of mysterious hardware register poking is just leftover debug code accessing debug registers. It apparently happens far more frequently than we'd think. Could also be some sort of misunderstanding about when one-time initialization commands need to be sent. For example, one of the mystery tilegen registers that every game seems to write in its main loop once per frame is probably an IRQ enable of some sort and it probably only needs to be written once. I noticed that I write it once in my Model 3 test program and both the display and tilegen IRQs were definitely working permanently thereafter.
User avatar
Bart
Site Admin
 
Posts: 2001
Joined: Thu Sep 01, 2011 2:13 pm
Location: New York City

Re: Boot-up data transferred to Real3D

Postby Ian » Wed Aug 30, 2017 2:06 pm

I think it's just enough to let attract mode roll, as it cycles through a few of the levels I think. I'll check. I totally get the left over debug code. Be interesting to see if the game writes different data between levels
Ian
 
Posts: 1126
Joined: Tue Feb 23, 2016 9:23 am

PreviousNext

Return to The Dark Room

Who is online

Users browsing this forum: No registered users and 2 guests