smf
Fri, 18 Aug 2006 05:34:22 -0700
a) How was vidhrdw/model1.c written? Was it more or less translated (by hand) from the original V60 assembler, or...?
vidhrdw/model1.c is the equivalent of your graphics card, the V60 is the equivalent of your pentium whatever.
Imagine looking at a windows graphics card driver and working out from the values it pokes to the hardware, what it's actually trying to make appear on the screen.
b) How is the process of discovery done with machine/model1.c? By looking at assembler code, or by observing the game?
Emulating anything that is undocumented relies on looking at the code to see what the outputs are and then guessing what the inputs should be, by what the code does with them. If you have access to the real hardware you can see what the outputs and inputs are, but you still have to guess what the hardware is actually doing with the numbers.
Alot of things can be guessed without ever seeing the game before, other times it's not so easy.
The major problem with Virtua Racing is in the maths coprocessor, which is an undocumented TGP running custom software that has not been dumped. Emulating it is like being told to solve an equation using specific values for x, y & z, but not told what the equation is. The only clue is what the results are used for in the code. You can also display the values on screen in realtime to see what values are used and when.
c) Is there any place where model1 operations/development is documented?
src/drivers/model1.c src/vidhrdw/model1.c src/machine/model1.c
Can we set up some sort of page where this is outlined, so it's clearer and bugs/features/optimizations can be taken care of quicker? I know some people might find writing documentation pretty boring, but I think it pays off in the end.
Sure, go ahead. Have fun documenting it.
d) Maybe I didn't search hard enough, but is there any decent document regarding the V60 instruction set + peculiarities?
IIRC Intel sued Nec over the V60 because of a license issue so the documentation is very hard to come by.
e) Is there a disassembler for V60 assembler code? I didn't see one in cpu/v60. Perhaps there's a third party one?
In the debugger type: dasm vr.asm,fc0000,40000, there appears to be rom @ 000000 as well according to the driver. I'll leave that up to you to figure out how to save that.
Phill _______________________________________________ Xmame mailing list Xmame@toybox.twisted.org.uk http://toybox.twisted.org.uk/mailman/listinfo/xmame