Welcome to RetroCollect's Retro Gaming Forum. Here you'll meet a community for both classic game collectors and retro gamers. Should you want to discuss the best retro games or the rarest games around, register now and get involved with the best retro gaming forum online!

Difference in how retro and pc games and programs were made.

All discussions regarding Classic Games belong in here.
No matter which Console or System, it's a welcome discussion in here.

Difference in how retro and pc games and programs were made.

Postby shotblue » Thu May 10, 2012 12:27 pm

Since i'm pretty ignorant when it comes to such matters. I've wondered what's the difference in the process of creating pc and console games as well as the systems/engines created to run them.

I know that nintendo had its own custom basic language. What programs were the games made on, what kinds of computers (were these custom made? for nintendo for example). Were they made on telvesions.? Whats the real difference in designing games for television as opposed to computers screens? Are computer based games made on different programs. ?

How was the nes console engine/program made and the games as well.?

answers would be appreciated
shotblue
 
Posts: 220
Joined: Thu May 10, 2012 9:25 am

Re: Difference in how retro and pc games and programs were m

Postby Killingbeans » Thu May 10, 2012 5:28 pm

shotblue wrote:What programs were the games made on, what kinds of computers (were these custom made? for nintendo for example).


My guess would be:

Assembly language + a lot of custom hardware/software for music, sound fx, graphics, level editing and what have you. The base code itself could be made on any "normal" computer with a text editor, (Brain fart!-->)but for the actual assembling of the code you would have to own/rent time on a powerful computer of some sort. Otherwise it would take a million years. And then you'd have to burn the assembled code into an EPROM in order to test it on real hardware.

shotblue wrote:Were they made on telvesions.?


A TV is just a monitor with a build in tuner. You can't make anything on a television ;)

shotblue wrote:Whats the real difference in designing games for television as opposed to computers screens?


Nothing really. All you'd have to worry about is the limitations of the PPU/VDP/GPU and the interfacing with it.

shotblue wrote:Are computer based games made on different programs. ?


Nope, just Assembly with consideration for different CPUs with different instruction sets and different chips/perpherials to interface with.



Then again, all of this is just me guessing. I have no first hand intel on how they did things back then. But I can imagine it must have been a painstakingly slow process.
Last edited by Killingbeans on Fri May 11, 2012 5:26 am, edited 1 time in total.
User avatar
Killingbeans
 
Posts: 168
Joined: Sat Mar 10, 2012 5:36 pm
Location: Denmark

Re: Difference in how retro and pc games and programs were m

Postby shotblue » Thu May 10, 2012 6:36 pm

No i meant i would assume there was something more than the compostion settings when working/designing for TV based consoles games.
Didn't they use or create something else specifically made for tvs. I'm seen proto games being working on through the tv screens with console. Is the console used in creating the game?


It not like anybody could just create nes styled games on any computer. I think the famicom and the pal/ntsc based nintendo and had their own custom basic.

Plus its important to know what what kind of computers they used. I'm sure they didn't use some brand name. Its good to know. Still interested to know what extent the difference is and the role of tv and console in creating the game.

Thanks for the info but i would still like some more.
shotblue
 
Posts: 220
Joined: Thu May 10, 2012 9:25 am

Re: Difference in how retro and pc games and programs were m

Postby Killingbeans » Thu May 10, 2012 7:37 pm

shotblue wrote:No i meant i would assume there was something more than the compostion settings when working/designing for TV based consoles games.


Not really. Back in the 8-bit days there wasn't that big a difference between a console and a "computer".

shotblue wrote:Didn't they use or create something else specifically made for tvs. I'm seen proto games being working on through the tv screens with console. Is the console used in creating the game?


You have to test/debug the software somehow, right? So in that sense the console is used in the creation of the game.

shotblue wrote:It not like anybody could just create nes styled games on any computer.


Sure they could. Before you assemble the code it's just plain text and some binary resources.
There's nothing that stops you from writing the code on just about any computer you can imagine.

shotblue wrote:I think the famicom and the pal/ntsc based nintendo and had their own custom basic.


Are you sure that's not just a cartridge that lets you write some simple code in a custom version of BASIC?
You can't make anything useful in BASIC for the NES. Assembly is the only way to go.

shotblue wrote:I'm sure they didn't use some brand name. Its good to know.


I'm sure it was different from developer to developer. They probably just used the brand they preferred :)
User avatar
Killingbeans
 
Posts: 168
Joined: Sat Mar 10, 2012 5:36 pm
Location: Denmark

Re: Difference in how retro and pc games and programs were m

Postby shotblue » Thu May 10, 2012 7:46 pm

Can you elaborate on this?: for the actual assembling of the code you would have to own/rent time on a powerful computer of some sort.

Going back to what you originally said.. i would like to think that no computers or at least most of them form 1983-1993 had the custom options to create nes color palette, sounds, even exact graphic style, speed etc.. that defined nes styled graphics.
shotblue
 
Posts: 220
Joined: Thu May 10, 2012 9:25 am

Re: Difference in how retro and pc games and programs were m

Postby maD_mAN1983 » Thu May 10, 2012 7:48 pm

i know i have read the process of creating a NES game in a swedish gaming magazine at some point, where i think all the info you wanted was written also, but i can't seem to find it anymore, probaly got lost when i moved at some point, since it's atleast 15 years since i read it :P
Image
User avatar
maD_mAN1983
 
Posts: 1077
Joined: Thu Jul 21, 2011 10:28 pm
Location: Norway
View Collection: http://www.retrocollect.com/search/show ... n-875.html
Collection Stats: http://www.retrocollect.com/search/coll ... s-875.html
Collection Photos: http://www.retrocollect.com/Community/m ... My-Photos/

Re: Difference in how retro and pc games and programs were m

Postby Killingbeans » Thu May 10, 2012 8:20 pm

shotblue wrote:Can you elaborate on this?: for the actual assembling of the code you would have to own/rent time on a powerful computer of some sort.


Maybe not true in 1993, but back in the 70's and early 80's assembling code was a specialized job. I'm not sure whether it was because it required some very powerful hardware to deal with the process in a short time-span, or maybe just because the software (the actual assembler) was very expensive.

..Again, I'm too young to have ever experienced any of this. It's just something I've read somewhere. I'd might be remembering it wrong.

shotblue wrote:i would like to think that no computers or at least most of them form 1983-1993 had the custom options to create nes color palette, sounds, even exact graphic style, speed etc.. that defined nes styled graphics.


I think you're confusing today's homebrew development with the game development of the past.

Today you write the code, assemble it and test/debug it via an emulator, and do all those things on the same PC.

Back in the 80's you wrote the code on one computer, assembled it on another computer and tested/debugged it on a real console. There was really no need for the computer you wrote the code on to be able to do anything the NES could do.
User avatar
Killingbeans
 
Posts: 168
Joined: Sat Mar 10, 2012 5:36 pm
Location: Denmark

Re: Difference in how retro and pc games and programs were m

Postby shotblue » Thu May 10, 2012 8:41 pm

There was really no need for the computer you wrote the code on to be able to do anything the NES could do. Can you elaborate on this?

Also weren't there custom nes options that define the style. How is this structured?

I think it was a certain kind of basic.

So not just any average programmer with 2 years of experience and a c64 or other computer in a basement could create nes games right?
shotblue
 
Posts: 220
Joined: Thu May 10, 2012 9:25 am

Re: Difference in how retro and pc games and programs were m

Postby Killingbeans » Thu May 10, 2012 9:25 pm

shotblue wrote:There was really no need for the computer you wrote the code on to be able to do anything the NES could do. Can you elaborate on this?


Well, the code is just text... nothing else. It's only readable to humans and a specific Assembler. The code makes no sense what-so-ever to a NES. Once the Assembler has been fed the code, it spits out a binary file. This new file makes perfect sense to a NES.

shotblue wrote:Also weren't there custom nes options that define the style. How is this structured?


Assembly is a low-level hardware-specific language. Basically you just tell the hardware directly what to do.
So, the only thing that defines the NES's style is it's hardware structure.

If you want fancy high-level things like structure and libraries, you're out of luck.

shotblue wrote:I think it was a certain kind of basic.


There is no BASIC... only Zool!!!

No seriously, stop with the BASIC ;)

shotblue wrote:So not just any average programmer with 2 years of experience and a c64 or other computer in a basement could create nes games right?


He would need documentation on all relevant chips inside the NES and access to a NES-specific Assembler. Nintendo would probably gladly supply those two thing in exchange for a hefty fee. He would also have to find a way of testing his software on a real NES. Again something that would involve a payment to Nintendo.

So no, making games for the NES was not something a lonely nerd could do in the 80's :(
User avatar
Killingbeans
 
Posts: 168
Joined: Sat Mar 10, 2012 5:36 pm
Location: Denmark

Re: Difference in how retro and pc games and programs were m

Postby BuckoA51 » Fri May 11, 2012 12:25 am

No 'ultra powerful' computer is required to assemble assembly language, each assembly language instruction directly relates to one machine code instruction. Its not that processor intensive to translate it into raw machine code. All the best C64 games were written in assembly and you could really by and large do that with a C64 and an assembler cartridge.

When I developed for 68k platforms (same CPU as Megadrive, Amiga) we used a ROM emulator, this was a little box that sat on the ROM socket where the cartridge/game board would normally go. You then wrote your code in assembly language or C, compiled it using a cross-compiler (a compiler that knew the instruction set of the 68k chip) and downloaded it to the ROM through a parallel cable where it would run. You then tested the results and tweaked accordingly.

More advanced development kits go further, and let you see an actual CPU's registers (on board memory) and freeze the program for debugging.
BuckoA51
 
Posts: 294
Joined: Sun Jun 19, 2011 2:57 pm
Location: UK

Re: Difference in how retro and pc games and programs were m

Postby Killingbeans » Fri May 11, 2012 5:46 am

BuckoA51 wrote:No 'ultra powerful' computer is required to assemble assembly language, each assembly language instruction directly relates to one machine code instruction. Its not that processor intensive to translate it into raw machine code.


That's true. Don't know where I got that whole "super computer thing" from. Brain fart! :D

I remember reading somewhere that assembling code was expensive and time consuming back in the days.
I guess I'm just remembering completely wrong. Can't really see the logic in it when I think about it either :lol:

BuckoA51 wrote:When I developed for 68k platforms (same CPU as Megadrive, Amiga) we used a ROM emulator, this was a little box that sat on the ROM socket where the cartridge/game board would normally go. You then wrote your code in assembly language or C, compiled it using a cross-compiler (a compiler that knew the instruction set of the 68k chip) and downloaded it to the ROM through a parallel cable where it would run. You then tested the results and tweaked accordingly.

More advanced development kits go further, and let you see an actual CPU's registers (on board memory) and freeze the program for debugging.


That's very interesting. I had a feeling they would be using some sort of hardware to make the testing pseudo real-time. But I couldn't imagine how it would work.
User avatar
Killingbeans
 
Posts: 168
Joined: Sat Mar 10, 2012 5:36 pm
Location: Denmark

Re: Difference in how retro and pc games and programs were m

Postby BuckoA51 » Fri May 11, 2012 10:43 am

Well in the very early days of computing there were no assemblers, so somebody wrote assembly code and then this had to be translated by hand into binary. So something like

MOVE $200,D0

you would look up the opcode for MOVE and it might be 0100 or whatever. It didn't take long for people to realise a computer could do this more efficiently of course.
BuckoA51
 
Posts: 294
Joined: Sun Jun 19, 2011 2:57 pm
Location: UK

Re: Difference in how retro and pc games and programs were m

Postby shotblue » Mon May 14, 2012 5:04 pm

Writing a code consists of creating and setting what?

Check out this link which is a walkthrough of a Famicom game:

http://www.chrismcovell.com/secret/week ... puter.html

It could be written on any computer. This link may explain that aside of assembling, programming for nes was done on these kinds of computers:

http://en.wikipedia.org/wiki/HP_64000
shotblue
 
Posts: 220
Joined: Thu May 10, 2012 9:25 am

Re: Difference in how retro and pc games and programs were m

Postby Killingbeans » Mon May 14, 2012 9:34 pm

BuckoA51 wrote:Well in the very early days of computing there were no assemblers, so somebody wrote assembly code and then this had to be translated by hand into binary.


I think that actually explains my confusion. The book i read, stated that "self assembling code" was the thing that finally made programming fast and affordable. I just thought: " what the #¤#¤ is self assembling code?!" I guess it was merely referring to the introduction of software assemblers. I makes sense now :lol:

shotblue wrote:Writing a code consists of creating and setting what?


Don't quite understand the question. Do you mean writing a piece of software for the NES?

I've only written some simple stuff for the Master System. But it's not that different from programming the NES. It's very much down to basics. You just move bits and bytes around between registers, ports and memory addresses and do a bit of Boolean algebra. There's a lot of things to keep track of, and it takes a lot of work to make a functional piece of software.. that is if you don't cheat and use a high level language like C :)
User avatar
Killingbeans
 
Posts: 168
Joined: Sat Mar 10, 2012 5:36 pm
Location: Denmark


Return to Retro Gaming

Who is online

Users browsing this forum: No registered users and 3 guests