Are PS2 and XBox games written in some common language like C or C++ or do they have proprietary languages and/or development platforms?
Mostly C and C++, with bits of assembly language. They often use third-party libraries, toolkits, and graphics engines. Sometimes higher level languages are used for non-performance sensitive parts of the program.
Thanks! I was just curious
Not to hijack, but what about the games I still play? NES, Sega Genesis, Atari? They still in C++ or are they in something more like Basic?
The old games were most likely written in C/assembly. Basic’s not exactly something you can make blazingly fast.
Assembly language dominated the era of 8-bit CPUs and ROM cartridges. It was the only way to meet the space and speed limitations of these systems. With the exception of FORTH, high-level languages were too slow and resource intensive.
Mainly C/C++ with pretty large chunks of assembly. The xbox is pretty similar to a PC using DirectX, PS2 is totally different and requires alot of crazy low-level stuff. The AI is often written using a scripting language such as LUA or Python (or a completely propriatary language).
The 2600 was (in fact, still is by dedicated homebrewers) programmed entirely in 6809 assembler (more or less the same as 6502) altough enterprising 2600 coder Batari from AtariAge recently wrote a high level BASIC compiler for the 2600 that runs under Windows. Obviously because of the difficulties inherent in programming on a machine with 128 bytes of RAM and no screen buffer, you’re very limited as to what kind of display kernel you can use, but it’s enough to knock out some simple and entertaining games without twisting your brain in knots learning to code the venerable VCS the old fashioned way.
Yup. Even in the 16-bit days (e.g., SNES), assembly language coding was the norm. I think somebody has made a C compiler specifically for the SNES (5A22), but I doubt anything like that was actually used back in the day. I’ve done a fair bit of SNES disassembly / hacking myself, and to be honest, I didn’t even use an assembler most of the time. I used to have almost half of the 5A22/65c816 instruction set memorized, but it’s been a while now.
The Atari 2600 used a version of the 6502. The 6809 was a distant cousin of the 6502, as it descended from the 6800. The 6502 was designed by engineers who had previously worked on the 6800 for Motorola. At the time of its introduction in 1975, the 6502 was considerably cheaper than its competition, the Intel 8080A and Motorola 6800. Motorola introduced the 6809, a considerably enhanced version of the 6800, about four years later.
:smack:
Sorry. Long days at work don’t help my brain congeal. I meant 6507, of course.
Nowadays Microsoft is touting their XNA environment, which is sort of a unified platform for games development on the XBox 360 and (in future) on Windows itself.