Was Color A Dinosaur written in C? (No wait, it's Norton 7?)

Discuss technical or other issues relating to programming the Nintendo Entertainment System, Famicom, or compatible systems. See the NESdev wiki for more information.

Moderator: Moderators

User avatar
rainwarrior
Posts: 8732
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Was Color A Dinosaur written in C? (No wait, it's Norton 7?)

Post by rainwarrior »

By chance discovered some printf style string formatting in Color A Dinosaur. There's a lot of text in there that is relevant to DOS/PC implementations too, which is kind of interesting because I don't think it got a DOS release? Anyhow, just another one to add to the list of "might have been written in C".
printf style formatting of strings in Color A Dinosaur
printf style formatting of strings in Color A Dinosaur
Edit: Altaz on #nesdev clued me in that this has a TCRF entry: https://tcrf.net/Color_a_Dinosaur

Apparently it's a piece of Norton Utilities 7? O_o
Last edited by rainwarrior on Sun Mar 12, 2017 1:15 pm, edited 1 time in total.
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Was Color A Dinosaur written in C?

Post by tepples »

I'm immediately reminded of "You can't hack me; I got Norton." I wonder if any ROM hackers are up to the challenge of putting a picture related to the "I got Norton" meme (ED; KYM) into the game.
snarfblam
Posts: 143
Joined: Fri May 13, 2011 7:36 pm

Re: Was Color A Dinosaur written in C?

Post by snarfblam »

Random garbage leftover in RAM when they assembled it maybe?
User avatar
thefox
Posts: 3134
Joined: Mon Jan 03, 2005 10:36 am
Location: 🇫🇮
Contact:

Re: Was Color A Dinosaur written in C?

Post by thefox »

There are some other games which have pieces of random leftover data from the disk (or memory?) in their ROM. I can't name any of the top off my head, but IIRC TCRF should have a few of them (I think one of them had pieces of the game source code). I guess some old tools tried to be clever with optimizations by not clearing unused memory, or only writing disk sectors partially.
Download STREEMERZ for NES from fauxgame.com! — Some other stuff I've done: fo.aspekt.fi
User avatar
Punch
Posts: 365
Joined: Sat Feb 16, 2013 11:52 am

Re: Was Color A Dinosaur written in C? (No wait, it's Norton

Post by Punch »

From 1989 onwards the PC Engine had a CDROM attachment, and since 650 mb was an absurd amount of space back then, the PCE CD devkit was a expensive combo of a PC9801VX with a 620 mb HDD and a 8mm master tape unit plus the Hu7 system which was a regular PC Engine with a huge hardware CD emulation board connected into it. http://i.imgur.com/pqofNGI.png (edit: video of the Hu7 unit: https://www.youtube.com/watch?v=ge9aFCnx5tw)

So what? Well apparently some developers also used the 620mb disk to act as a server for their source code or something like that, because there's an almost complete copy of the original SNK Neo-Geo source code for Art of Fighting stuffed inside the PCE port's retail CDs. Talk about "random leftover data".
This is a block of text that can be added to posts you make. There is a 255 character limit.
ccovell
Posts: 1045
Joined: Sun Mar 19, 2006 9:44 pm
Location: Japan
Contact:

Re: Was Color A Dinosaur written in C? (No wait, it's Norton

Post by ccovell »

Punch wrote:the PCE CD devkit was a expensive combo of a PC9801VX with a 620 mb HDD and a 8mm master tape unit plus the Hu7 system which was a regular PC Engine with a huge hardware CD emulation board connected into it.
Sorry to go further off-topic, but you can see how expensive it was back in the '80s here: http://www.chrismcovell.com/secret/PCE_ ... tml#pcedev ... $144,000!
User avatar
rainwarrior
Posts: 8732
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: Was Color A Dinosaur written in C?

Post by rainwarrior »

thefox wrote:I guess some old tools tried to be clever with optimizations by not clearing unused memory, or only writing disk sectors partially.
Actually, if I think about an assembler that needs to output to very slow drive (e.g. tape storage), maybe not clearing unused memory could be a huge time saving on iterations, especially early on in a project when a ROM isn't very full.

An optimization like that which makes little sense now might have been essential on the hardware it was originally written for, and could easily have persisted into the next era where it was no longer necessary.
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Was Color A Dinosaur written in C? (No wait, it's Norton

Post by tepples »

And perhaps then, Symantec wasn't quite as litigious as some companies are nowadays.
User avatar
rainwarrior
Posts: 8732
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: Was Color A Dinosaur written in C? (No wait, it's Norton

Post by rainwarrior »

tepples wrote:And perhaps then, Symantec wasn't quite as litigious as some companies are nowadays.
I think it's probably more to do with them not being omniscient?
User avatar
TmEE
Posts: 960
Joined: Wed Feb 13, 2008 9:10 am
Location: Norway (50 and 60Hz compatible :P)
Contact:

Re: Was Color A Dinosaur written in C? (No wait, it's Norton

Post by TmEE »

When you create a file and write a single byte to say 1MB point, the stuff between first byte and the last one is filled with whatever was on the sectors on the HDD that the new file got assigned. Windows NT explicitly zero's out new memory and files, but DOS and Win9x do not.
User avatar
whicker
Posts: 228
Joined: Sun Dec 13, 2009 11:37 am
Location: Wisconsin

Re: Was Color A Dinosaur written in C? (No wait, it's Norton

Post by whicker »

I'm also trying to think why this junk gets into rom images.

Perhaps the tool that ultimately creates the rom image declares one large chunk of RAM, but never bothers to zero or $FF it.
The system RAM on the host computer of course contains data from other programs that were loaded into its RAM previously.
The tool creating the rom image goes from bank to bank, and just stops copying early if the source data for that bank does not completely fill it.
Ending earlier at the bank of course leaves the previous data there.

When done, the entire chunk of RAM is copied to the rom image file, that is later sent to the EPROM writer or onto a floppy disk.

Otherwise I can't fathom that one would copy raw sectors from a storage disk-- it seems like more effort to read raw sectors than read and write from the filestream.
User avatar
Myask
Posts: 965
Joined: Sat Jul 12, 2014 3:04 pm

Re: Was Color A Dinosaur written in C? (No wait, it's Norton

Post by Myask »

'm gonna expect t was more a tape reuse deal.
lidnariq
Posts: 11432
Joined: Sun Apr 13, 2008 11:12 am

Re: Was Color A Dinosaur written in C? (No wait, it's Norton

Post by lidnariq »

I definitely remember writing programs in C, compiled with Borland Turbo C++ v3.0, running in x86 real mode under DOS, and allocating memory using malloc (which makes no guarantees about the contents of the memory when allocated, unlike calloc) and finding random crap in the allocated memory blocks.

To me, it feels like a safe assumption that this is the entire cause.
User avatar
BillyWM
Posts: 9
Joined: Sat Dec 27, 2014 10:05 am
Location: Sacramento, CA
Contact:

Re: Was Color A Dinosaur written in C? (No wait, it's Norton

Post by BillyWM »

I thought this was a joke entry (like "Uncyclopedia" does) when I saw it recently, but that seemed out of character for TCRF. Then I opened my hex editor and had a good laugh. Wow, it's real.

I wonder if, for similar reasons to those stated above, this could be an artifact of the dumping process (random chunks of the dumper's harddrive sectors or RAM contents). Who knows what silly copying techniques people used when they first dumped this probably 20 years ago?

Well, I'm not gonna be the one to go to Ebay and play repro-roulette at $100 a cart to get a verified dump. I did ping @JayObernolte on Twitter trying to get some info.
User avatar
dougeff
Posts: 3079
Joined: Fri May 08, 2015 7:17 pm

Re: Was Color A Dinosaur written in C? (No wait, it's Norton

Post by dougeff »

I believe you are mistaken, BillyWM.

It's not a "bad dump", like somone making a recent copy screwed up.

In my opinion, it's a build (by the original producers) that didn't zero the contents of its memories it was using (reusing), and just left whatever contents were there. And copied it in entirety onto the original ROM.

There's no reason to believe it won't play correctly.
nesdoug.com -- blog/tutorial on programming for the NES
Post Reply