Blog

Awesome Video of Errata

Now, I realize that the "system specs" spewed forth in the above video were probably intentionally skewed so as to follow the whacky, 80s style zaniness, but as an uber nerd and somebody who's intimately familiar with NES hardware, I feel compelled to correct their errors.

Claim #1: 3.58Mhz video core clock speed

The NES video processor, a Ricoh 2C02 "Picture Processing Unit", or PPU, is actually clocked at 5.37Mhz. The CPU is exactly one third of this, or 1.79Mhz. The figure they're quoting is the timing of a color NTSC signal.

Claim #2: 240x226 resolution

The PPU actually worked with an internal resolution 256x240, though most old TVs did not display the first and last eight scanlines effectively making the resolution 256x224. This was the same for both NTSC and PAL models.

Claim #3: 16 sprite pixel depth

I don't even know where to begin on this one. Firstly, the NES had enough sprite RAM (object attribute memory, or OAM) for 64, 8x8 or 8x16 sprites. Secondly, every sprite could have three colors (four if you include transparency) from a palette of 53 colors. Every scanline could hae a maximum of eight sprites, and when this limit was exceeded some sprites were not drawn causing the infamous flicker. Finally, you could have a total of 25 colors per scanline. What the hell they were talking about to begin with baffles me, but there were no 16s involved there at all. Except maybe that internal 16-bit PPU register that could be written to through dual writes to address $2006....

Claim #4: NES has a Zilog Z80 processor

This one's easy. The NES did not have a Z80. It had a Ricoh 2A03, which was a 6502 without decimal mode and a set of sound instructions. The Gameboy, however, had a Z80 and the Sega Genesis used one as its sound processor.

Claim #5 It's an 8-bit system

Well, that's about the only thing they got right. Though, the system did have a 16-bit address bus....

Well, I'm finished. I'm sure somewhere God has smote a kitten for my nerdy rantingness, but it had to be said and I said it. Caio.

SCREW BLOGGER!!!

After writing a beautiful, heartfelt post on Blogger and having it lost because it was never able to upload the stupid thing, I am now using Wordpress. It's completely in house (i.e. on my server) and shouldn't have any of these inane issues. Now, on to that heartfelt entry :-).

Today, Friday, March 17th marks my official last day as a cashier. Starting at 4am on Saturday I will be an Overstock Manager*. Al I looking forward to it? Yes, yes I am. Not only is the cashier job driving me insane right now, but it'll be nice ot have my day back again. I plan on using the extra time to start working towards my GED. I hereby solemnly swear that I, Matthew Scott Hackmann will obtain my GED before May 1st, 2006. There, it's in magnetic bits, can't back out now. It really is something that needs to be done, and Wally World will reimburse me anything I spend on it too :-).

My emulator is coming along quite nicely, though there are more annoying hurdles to get over yet. I can basically say that Mario Bros. and Metroid are completely playable (last I checked). Zelda and Stringer (my two new scrolling test apps) are still buggy (like it's on the wrong table all the time), but otherwise everything is looking pretty sweet. However, I'm going to hold off for now while I pursue a new project.

My Uncle Dave (hey dude :-D) was nice enough to give me his old Handspring Visor (circa 1999) and that will be my new programming toy. The only thing I really have in mind for it right now is an app to take to bowling to score games and give statistical reports on the fly. Luckily Palm has all their development stuff opened up so that'll make it much easier.

I can now say I've played Doom on my iPod. Last week, while still swept up in the initial "wow! this is cool"-ness of the whole iPod thing, I installed Linux on it and played Doom. However, it was borking up music playback on the Apple side of it so I toasted Linux and have my music playing greatness back. I'm really getting into podcasts, my favorites being this WEEK in TECH (TWiT), RevoGaming.net, and Diggnation (gotta love Kevin Rose). Also, I bought an album full of SpongeBob goodness and the theme from Hitchhiker's Guide to the Galaxy (for you old timers, the original Eagles version).

Well, I believe that's all I needed to say. Just remember, vote for Pedro and all your wildest dream will come true :-).

Another reason to hate cats

Now it may be a fairly unkown fact about me, but I can't stand cats. Mainly, if for any reason, it is because at our old house there were cats that made a permanent residence there. And when the males went around marking their territory, it wasn't pretty.

But, anyways, I have another reason to hate cats: It seems I'm allergic to them. Yesterday I went to an allergist to see what the heck I'm allergic to because I have nasty allergies at certain times of the year (and I've got asthma so we were there for that too). Well, I went in and they poked my back with all sorts of pollens and stuff. It appears I'm not allergic to anything organic (as in trees and such), just cats and dust mites (apparently I got a huge welt from the dust mite test). They also put me through a treadmill test to test my lung function and I got another surprise there. I'm not asthmatic enough to even be labelled with having activity enduced asthma. So I'm testing that by laying off my inhaler whilst being active and seeing what gives. I made it through bowling last night without a problem. Tomorrow when I go to work I won't "deasthmaize" and see how I do there.

Speaking of tomorrow it's my first payday (yay!). It's driving me insane to see how much I've made in the last two weeks. I'll probably have a picture of me and my check stub up for you people :-)

In the land of NES development I've gotten two opcodes interpreted but now I'm stuck on something else: it seems I'm not interpreting the ROM data right. I've run my test ROM through a couple of disassemblers and they're reading the first four bytes in as something else (actually, the two disassemblers had different results. Go figure :-P). I'll have to do more research to figure this out. In the mean time you can read a blow-by-blow run-down of development here.