Got mine! It’s a thing of beauty. 😀
Just received my Space Pinball CIB. It’s very well done. Highly recommended for any VB fan!
Thanks UncleTusker!
There are two things wrong with that auction:
1) Collector mentality.
2) That ridiculous arbitrary grading system.
To the lucky winner: Enjoy your $5,000 game! ^_^
You have my support! (And payment.)
u32 buff[0x1800];
That’s over 1/3 of available memory. 🙁
Like I said, I would love to. I just have other things to get finished before I can.
Also, everything I mentioned would be valuable information for developers to create optimization strategies based on how much work the hardware has to do. There is also emulation accuracy to consider, so I don’t see it beyond the scope of technical documentation at all.
Not quite; the operation of the VIP is entirely undocumented. It’s essentially a black box that just “works”, on the principles of magic and voodoo, for all we know.
There is absolutely no information on how long it takes to render anything, with exception that it will set the OVERTIME flag in XPSTTS when drawing takes longer than 20 * (FRMCYC + 1) ms. (Which itself will trigger the TIMEERR interrupt.) How does the VIP use the “write prohibited” work areas within the world attributes? So many questions remaining in just this one area alone.
There are also a number of questions about the NVC. Especially the pipeline. We can gleam a little info from the [much better documented] v850, disregarding that the upgraded architecture has a more refined (efficient) pipeline. The pipeline explains the instruction cycle counts. And yet nothing has explained the cycle counts for float or bitstring instructions. And then there’s also the multiple-load and multiple-store limitations.
(As far as I can tell, load instructions have their memory access stage where you expect to find the execute stage on other instructions. This explains why it’s more efficient to group loads; the memory access stage in a load conflicts with the memory access stage on the preceding instruction. But just try to explain why it’s more efficient to separate stores! These cases seem to be mutually exclusive!)
Anyway, it’s nice to see a “reimagining” of VB technical documentation, and by far the best resource apart from Nintendo’s Virtual Boy Development Manual.
The best developers I know don’t have a CS degree. And let’s face it, the best developers I know are making over $100K/yr. That stereotype was broken long, long ago. 😉
What I’m saying is, all it will take to make your first game is persistence. maybe a little patience, but mostly persistence! I would suggest downloading some demo and game source code, and go through it. Ensure you can compile it, then start hacking on it. See how you can change it. Make it better (or worse). Experiment!
I’m waiting for it to get more complete. 🙂
In the meantime, I’m in a bit of a holding pattern on my own projects before I could even begin to contribute.
http://brennanthl.wordpress.com/2013/01/11/vbsd-update-1112013/
Coming along, I see…
… The tech manual is hosted on this very site. But even it is far from complete!
KRI55E has you covered: http://forums.lostlevels.org/viewtopic.php?t=2876
Purchased. 😀
Thanks for doing this; it’s definitely in the spirit of the community!
When I did the patches to enable the debug menus long ago, there was something I researched but wasn’t able to track down. There’s some back-story to it, so please bear with me.
Back in the late 90’s I finally managed to get my hands on Virtual Boy Wario Land. And like any teenager would, I starting searching for tips, hints, cheats, and secret codes on the internet. I found a few different variations of a “level select code”, but none of them worked. [1][2]. In fact, there’s a very complete walk-through/FAQ for the game written by Brian Hodges which explains as much [3].
I thought I would never see any kind of level select in the game.
Fast-forward a few years, I decided to look for any hidden stuff in Virtual Boy games. I dug up the three debug menus and a handful of previously-undiscovered codes for Jack Bros. (Including some that only work on the Japanese release; they can be re-enabled in the US release with a patch.)
And then there was VB Wario Land. I admit, it’s my favorite red game ever. But no matter how hard I tried, I couldn’t find anything valuable hidden within the game. The only thing I came up with was a small skull icon that can be seen in VRAM while on the title screen. (The skull is never actually displayed anywhere, to my knowledge.)
This seems to suggest that there is some truth to the old level select rumors; I always imagined the skull was used as a cursor to select items on a menu of some sort. This is just conjecture, however.
I traced a lot of code to find out what – if anything – the skull is used for, but all I could find was the code that loads it into VRAM. There doesn’t seem to be anything that will make it visible.
Alas, I don’t have any way to get a picture of it at the moment (Red Dragon could dump individual worlds from VRAM). But there’s not much to see, anyway. Just a small (8×8-ish) skull sitting in the corner of a blank canvas.
Sources:
[1] http://www.gamewinners.com/virtual_boy/WarioLand.htm
[2] http://www.angelfire.com/home/nintendo/Wario_Land_cheat_VB.htm
[3] http://www.planetvb.com/modules/games/?r018ff023
- This reply was modified 12 years ago by Parasyte.
:[
If you give me one of your free carts, we can pretend like I won’t pay for it. Will that help? (P.S. Bonus for the CIB as initially planned.)
Now that I know what it was you were trying to sell me a few months back, I do want one! 🙂 I will be purchasing.
I will purchase one of these.
DevkitPro (wintermute, et al) was an obvious inspiration for the project. The work of David Tucker, dasi, and M.K. here on PVB has also been inspiring. I would like to look at some of their patches, and get those integrated into the project, so that it can generate proper NVC code (right now it only builds the v850 targets).
I’ll try to work on that a bit, today. 🙂
Oh, and I just noticed the 2010 coding competition is allowing “supplemental tools for VB development”. So if we combine forces, we might be able to make a release in time for the compo! I’m not personally interested in prizes, so if “I” win any of them, I’ll gladly donate to anyone who has a greater need! (Although, I do kind of want that shirt… :P)
DogP has already come pretty close in that regard.
The build script is incredibly simple, currently. All it does it download the source distributions, extract them, and build them. There are no patches for the NVC architecture; it builds v850.
The script works great on Linux (Ubuntu 9.10) but fails on OS X (gcc 4.2.1). I’m going to be away from home for the next week, but I might get a chance to work on it while away. At the very least, I can try to fix the OS X build. I would also like to start on the port to NVC, which will be based almost entirely on David Tucker’s gccvb distribution.
And after that, I’ll work on porting the crt0 and library.
Here’s a list of what currently builds:
binutils-2.20
gcc-4.4.3
newlib-1.18.0
gdb-7.0.1
Note that these are all modern versions! I might have to roll back to building gcc 4.3, since 4.4 doesn’t want to cooperate on OS X.
Anyway, that’s what I’m currently doing. (And this all started just because I wanted to update my emulator. Hmph.)