molecularr Posted December 17, 2007 Share Posted December 17, 2007 Hello, I'm researching different lettering and numeral designs used in Atari 2600 games, and I've run into a problem. Basically, the problem is that, whereas for most games I can "print" the text sprites by rendering the binary in some textual form (e.g., X's and .'s), I've come across a few games where that doesn't work. As I understand it, the 2600 lacks any implementation of ASCII, so when a particular character is needed, it's shape has to be stored directly in the game ROM, right? But for Wizard of Wor at least (and several others I've forgotten off the top of my head), this does not appear to be the case. When I print out its binary, I see the other sprites, but no text or numbers. Does anyone know what's going on here? I've seen conflicting information about whether Wizard of Wor uses the RAM+ chip, but if it does, is it possible that there's a small character set stored there? I really have only the most basic understanding of programming for this console, so it's likely that I'm missing something obvious. Any suggestions? Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted December 17, 2007 Share Posted December 17, 2007 As I understand it, the 2600 lacks any implementation of ASCII, so when a particular character is needed, it's shape has to be stored directly in the game ROM, right? Right. But for Wizard of Wor at least (and several others I've forgotten off the top of my head), this does not appear to be the case. When I print out its binary, I see the other sprites, but no text or numbers. That's because the data can be stored in several ways, whatever suits the programmer best. In WoW, the graphics are stored interleaved (10 byte distance) starting at offset $f0a. Unusual, but probably not the only game doing it like that. Quote Link to comment Share on other sites More sharing options...
molecularr Posted December 17, 2007 Author Share Posted December 17, 2007 Thanks. That makes sense to me. So here's another, even more basic question: How do I find $f0a? I can't read/convert binary in my head, so I've just been printing each byte with an ascending decimal. Decimal f0a would be 3850, but upon looking there, I didn't see a character. There's something there, but I can't tell what it is. Am I looking in the right place? Quote Link to comment Share on other sites More sharing options...
Cybergoth Posted December 17, 2007 Share Posted December 17, 2007 I think the key word TJ used in his explanation was that the data is stored "interleaved". Quote Link to comment Share on other sites More sharing options...
molecularr Posted December 17, 2007 Author Share Posted December 17, 2007 Oh, right. I get it now. For some reason I was thinking that the whole character would be "leaved" and interwoven with other stuff, but that's obviously wrong since I would have already seen that. Duh. Thanks!! Quote Link to comment Share on other sites More sharing options...
supercat Posted December 18, 2007 Share Posted December 18, 2007 Different games use different methods of storing shape data. Some are easy to find. Some require a bit of work. Some would be impossible to find without a detailed understanding of 6502 code (the victory message from Toyshop Trouble, for example--can anyone tell me how that's stored without looking at the source code? Feel free to look at object code, trace logs, etc. in making the determination.) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.