-
Posts
10 -
Joined
-
Last visited
Content Type
Profiles
Forums
Blogs
Gallery
Events
Store
Community Map
Posts posted by sarnau
-
-
I never used an Atari 400/800 during its hay days – except for 2 days as a loaner. I was in the C64 camp during that time (and later the Atari ST/TT before eventually ending up on the Mac). So I am reading the Atari documentation, etc. for the very first time now!
It seems while a couple of EA games are available as ATX files, a lot are not. Or not in a functional state. Or I simply can't find them. I found a couple of originals plus I found both copies of Seven Cities of Gold and a few others, but I am simply missing a lot as well.
Some are pretty clear: e.g. Hard Hat Mac seems _identical_ to the first version of Seven Cities of Gold. 100% the same protection. -
I've added a new "file format" ATBOOT, which is a file starting with the boot header. Useful for copy protected disks.
-
It was a different times. But FigForth was AFAIK in the public domain: "September 1980
This public domain publication is provided through the courtesy of Forth Interest Group, P.O. Box 1105, San Carlos, CA 94070.
Further distribution must include this notice."
EA used Forth even for 6502 assembly loaders without any Forth code in it. It must have been horrible to read as source code, because the opcodes and parameters are in reverse… How do I know? Well, 6502 Forth routines always start with a pointer to the beginning of the assembly code. In assembly code nobody would do that, because that pointer serves no purpose, but the Forth compiler generates it, so there you have it.
The track alignment protection is clearly older than the overlapping sectors within a track. You can see that the code evolved (they added encryption, etc). But even within the same scheme the code changed, e.g. "Murder on the Zinderneuf" is older than "The Seven Cities of Gold" and has therefore slightly older source code, e.g. they all have a check for the Atari 1200XL (yes!), but only Seven Cities of Gold detects the 600/800XL correctly.
Does anybody have a list of all EA games for the Atari 8-Bits?-
2
-
-
BTW: Very first time in the real-world that I had to work with Forth in my 40 year career as a software developer 🙂
-
1
-
1
-
-
Thanks for the report. My bad: I've added loading to a fixed address, without parsing and broke that part… I've pushed a new version on GitHub with this fix and it loads your XEX file to $A000, etc
-
3
-
-
FigForth was open-source and the 6502 code is available. You will find that they clearly used the _exact_ code and just stripped the symbols. I will publish the Code, because it is actually interesting to see how they checked for "illegal" ROM patches and tested the actual copy protection.
-
1
-
-
i also did work on Electronic Arts games (Seven Cities of Gold is interesting, because two versions with different copy protection schemes exist). EA in Atari used some of the most interesting protections so far: the game loader is written in FigForth and some 6502. Later versions even encrypt the PCODE. Plenty of checksums as well and ROM/RAM checks to avoid hacking.
-
4
-
-
I've never really wrote any code for the Atari 400/800 computers, so this is my first look into the hardware and software by using Pharaoh's Curse as a learning example. 6502 I knew via the C64, etc, but I knew almost nothing about the graphics and sound capabilities.
Documented source code for Pharaoh's Curse for the Atari 400/800 computers. Requires the CA65 assembler to compile. I am using a Macintosh, but it should work on other operating systems as well or with trivial changes. I also wrote some Python scripts to extract the artwork, etc. If you like to have a look into the earlier development of games, this seems to be fun.
https://github.com/sarnau/PharaohsCurse
Interesting "cheat": press Control-Shift-9 to immediately "win" the game… It shows the end of game animations.
I also attach all 16 levels as an image. That was generated by one of my scripts.
-
16
-
3
-
-
After playing with Atari 8-bit software for a bit, I noticed that there is no Ghidra loader for these files. So I dusted off my Java knowledge and wrote one! It does support a bunch of file formats (ATR, ATX, XEX, COM and some CRT), which seems to be the most common formats.
You can either installed directly from the ZIP or build it yourself from the source code.
You can find everything here: https://github.com/sarnau/Atari8BitGhidra
-
9
-
1
-

Pharaoh's Curse
in Atari 8-Bit Computers
Posted
Thanks a lot, that was extremely helpful!