December 25, 2006
Merry Christmas!
I wasn't planning on making updates on Christmas, but this one seemed major enough ;-)
One of the most interesting parts of the Taito 3D hardware is the math co-processor that has been integrated into one of the Taito custom chips. The coprocessor does two functions. The first function does 3D point projection to 2D, and was quite straightforward to understand from the DSP disassembly. The second function however, required a lot more head scratching. Eventually I figured out that this function is used to calculate polygon intersection calculations while clipping the polygons against the viewport.
The reason why yet another math unit is needed may not be clear at first. But once you look at how the math functions work, it becomes more clear. Both of the math functions are dividing something, and a quick look at the TMS320C51 datasheet reveals that it doesn't have a division unit at all.
The emulation of the math co-processor, coupled with some additional TMS320C51 bug fixes gives us almost perfectly working 3D.
dendeg_0003.png
dendeg_0004.png
dendeg_0005.png
sbs2_0018.png
sbs2_0023.png
sbs2_0025.png
sbs2_0026.png
sbs2_0027.png
landgear_0008.png
landgear_0009.png
landgear_0010.png
December 17, 2006
Polygons, Taito-style
Lately I've been working on fixing bugs in the TMS320C51 core and trying to understand the 3D hardware in Taito's JC System.
So far I've managed to figure out the polygon format and texture mapping. As a result Side by Side 2 already shows the road polygons and some other stuff.
landgear_0000.png
dendeg_0000.png
sbs2_0002.png
sbs2_0003.png
sbs2_0006.png
sbs2_0007.png
November 24, 2006
Try to map this to your controller...
That's right, I finally managed to emulate the keyboard controller in Keyboardmania 3rd Mix. Unfortunately MAME doesn't support MIDI keyboards, so playing it would be a bit difficult.
September 23, 2006
Five a Side Soccer
This game was part of Konami's failed Ultra Sports experiment. The game is a head-to-head soccer game running on a special cocktail cabinet (The cabinet can be seen in the Ultra Sports flyer: http://www.arcadeflyers.com/?page=thumbs&id=2186)
On the hardware side things are very simple. The main processor is a PowerPC 403GA, for sounds there's a Konami 54539 (better known from Konami GX system), and the video is done with two palette-based framebuffer layers.
fiveside.png
fiveside.png
fiveside.png
fiveside.png
fiveside.png
September 15, 2006
Big N64 update
I've recently continued working on the N64 emulation. After fixing some RSP bugs and adding tons of features to the RDP emulation, many games are starting to look quite good.
For screenshots, check out the N64 screenshots page.
August 14, 2006
I hooked up the inputs and fixed some graphics bugs in Capcom's Magical Tetris Challenge. There are still some graphics bugs, but the game seems to be running OK.
mtet0003.png
mtet0004.png
mtet0005.png
mtet0006.png
mtet0007.png
June 24, 2006
The problem was indeed in the controller emulation. 電車でGO! now works much better.
June 22, 2006
Let's Go by Train!
The progress on Model 2 hasn't been as fast as I thought. I added solid polygons and lighting but texturing really doesn't work yet. There's also some weird geometry problems, probably caused by some bugs in either the i960 or the SHARC core. I haven't bothered to figure which one yet...
In more interesting news, I have made some major improvements to the Taito JC System driver. First I improved and fixed bugs in the M68040 FPU. Then I found the the missing vertical blank interrupt, after which things really started to work. After that, I needed to figure out how the 2D graphics works. Turns out the 2D graphics chip is just a basic object processor, not too different from the one in Konami's Firebeat hardware. The results of all this can be seen in the screenshots below.
Landing Gear and Side by Side 2 already run through their attract modes. 電車でGO! also shows some graphics, but hangs pretty soon. Apparently it needs a bit more of the train controller emulated.
Update: R. Belmont pointed out that the red and green color components were swapped. I've updated the screenshots with that fixed.
dendeg.png
dend0000.png
dend0001.png
sidebs2.png
side0000.png
side0001.png
side0002.png
landgear.png
land0000.png
land0001.png
land0002.png
June 2, 2006
Model 2
I'm finally back at doing some MAME work. I decided to have a go at finally adding 3D support to the Model 2B-CRX. Right now everything is still in wireframe, but things are progressing fast :-)
Also on related note, one of my i960 core fixes fixed the problems Dead or Alive was having.
scha0008.png
scha0009.png
scha0012.png
doa.png
April 10, 2006
Status report
Nothing too interesting has been happening in the past two months. Recently I picked up the Taito JC System driver again in hopes of getting it to do something interesting. The two major roadblocks were the missing FPU stuff from the M68040 core and the missing TMS320C51 DSP core.
The TMS DSP emulation already works well enough that the basic communication and ROM tests are already working. There's also enough of the 68040 FPU emulated that the games won't just crash when they hit FPU opcodes.
None of the games still show anything interesting graphics-wise, but progress is progress nevertheless :-)
February 11, 2006
...
kbm30002.png
kbm30003.png
ppp0007.png
ppp0008.png
February 3, 2006
With the progress made with Keyboardmania 3rd Mix, I was able to get Para Para Paradise somewhat working. It still dies before getting ingame though.
ppp0004.png
ppp0005.png
ppp0006.png
January 28, 2006
Forbidden fruit
Something to keep me sidetracked came up. Don't get your hopes up though, the driver won't be added to MAME in the near future.
January 27, 2006
Some MAME progress
Magical Tetris Challenge now shows the standard Capcom test menu, and Eleven Beat shows its own test menu with a bit more broken graphics.
January 7, 2006
Some more 2D N64 stuff. The RDP emulation is constantly improving, and I'm getting some nice results. Bust-a-Move '99 is playable and Mortal Kombat Mythologies: Sub Zero shows the menu graphics.
bustamove1.png
bustamove2.png
bustamove3.png
bustamove4.png
mkmyth1.png
mkmyth2.png
January 1, 2006
Happy New Year!
I've moved the N64 driver development over to MESS, and I'm currently in the middle of writing an RSP CPU core and emulating the RDP.
Mortal Kombat Trilogy is the first commercial game to show some graphics. It isn't playable yet though.
n64.png
n640000.png
n640001.png