Atari.Org
Click Here
HomeNewsServicesForumsSupport

Talk Atari

Atari.Org Forums


16/32-Bit

8-Bits

Classics

Emulation

Jaguar

Lynx

Classic Consoles Forum 8-Bits Forum 16/32 Forum
Emulation Forum Jaguar Forum Lynx Forum
 
 Subject: RE: Compiling Atari Basic on XL.
Author: Bill Collins (209-250-50-59.wispnet.net)
Date:   02-23-2010 10:39

Over the years, many techniques have been employed to obscure/hide the basic source code. (Replacing the variable_name_table with weird bytes, compiling, etc.)

There's an atari disk called "Pirates Treasure Chest" which has details on how to break those techniques, including a utility to replace the variables in the variable_name_table back to something human-readable. Any search for this ATR image will yield a downloadable copy. The documentation that accompanies that disk is worth reading.

Most compilers use pseudo-code, converting basic into tokens, which can be reverse-engineered from the tokens back into the original basic. Writing in direct assembly language is even more obvious, as the 6502 opcodes "are" the source code. The only hope to obscure your code is to use a compiler that converts to true binary, and to occasionally place weird/useless statements in your source code, and use ridiculous branching and unnecessary variable references. This is basically writing spaghetti code, and employing every bad design technique that your pascal/fortran/cobol teacher in college told you never to do. :)

Look at how the pompey pirate/automation CD's were made for the atari ST: They decompact before they run. Just place an assembly routine at the front of the program that decrypts the real code and then does a branch to the code after it is decrypted. An emulator with a "save state" function could then save the contents of ram (all 64k of it), which can be examined with a hex editor later, so even that method has vulnerabilities.

I just realized that I'm writing at 3am about security measures for obfuscating source code on an outdated, 30-year-old, 8bit operating system....This antiquated stuff means more to me than dhtml/java/css, blog monetization, page rank, and ad revenue...No wonder I'm behind the times.

 Topics Author  Date
  Compiling Atari Basic on XL. new Hermann Samso 01-23-2007 22:34 
   RE: Compiling Atari Basic on XL. new Lyverbe 01-27-2007 16:55 
    RE: Compiling Atari Basic on XL. new Fox-1 02-09-2007 02:31 
     RE: Compiling Atari Basic on XL.  Bill Collins 02-23-2010 10:39 

 Reply To This Message
 Your Name:
 Your Email:
 Subject:
 Human verification:   What's this?
               _    __     _ _     
 _ __  ___ _ _| |_ / _|___| (_)___ 
| '_ \/ _ \ '_|  _|  _/ _ \ | / _ \
| .__/\___/_|  \__|_| \___/_|_\___/
|_|                                
    



Copyright © 1997-2024 Atari.Org 
Atari is registered trademark of Infogrames