Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
  You are not logged in - nap
Executable Image Release 1   [2009]

Released by :
MagerValp

Release Date :
4 March 2009

Type :
Other Platform C64 Tool

AKA :
An Over-Engineered Solution to a Trivial Problem

User rating:awaiting 8 votes (8 left)

Credits :
Code .... MagerValp of M&M

Download :

Look for downloads on external sites:
 Pokefinder.org


Summary
Submitted by MagerValp on 4 March 2009
Executable Image is a perversely over-engineered solution to a very simple
problem: how do I convert a Koala image into an executable program? The sane
solution would be to fire up an assembler, write about a page of code copying
color ram, set up the VIC, and then pucrunch or exomize it to get a sys line.
Scout released a .bat file that does pretty much all that, and it gets the
job done. The implementation gave me an itch that I just had to scratch
though. Actually, judging from the result, more like a full body rash. After
a few evenings of scratching, I present to you Executable Image. It's a plain
console application, and you use it like so:

xi infile.koa outfile.prg

It currently doesn't do any argument parsing, aside from getting the
filenames, so it'll only do the default action: take a Koala image (10003
bytes, load address $6000), compress it with LZSS, and make a RUN:able .prg.
The only advantage it has is that it doesn't rely on any external tools.
However, it's been designed to do a little more. If you take a peek inside
the source, you'll find a bunch of things, such as:

* An embedded assembler, with support for multiple CPU architectures.
* A class hierarchy to support multiple image and file formats.
* Another class hierearchy to support external compression tools.
* Freaking factory patterns to juggle them. I feel dirty.
* How can you make a full class for memory instead of just new char[65536]?
* RAII for the file handling. What was Bjarne smoking when iostreams were
designed?
* The more complicated a program is, the more likely it is to be buggy.
We're basically fucked here.

Oh well, it's too late now. Ian Coog just sent me an Amica Paint unpacker, so
I guess I'd better start working on implementing more image formats. FLI
support would also be good I guess.

The source is hereby released under the Mozilla Public License, version 1.1.
The CamelCased classes and under_scored methods will get you fitted with a
straight jacket in no time (hi JackAsser).
Search CSDb
Advanced
Navigate
Prev - Random - Next
Detailed Info
· Summaries (1)
· User Comments (22)
· Production Notes
Fun Stuff
· Goofs
· Hidden Parts
· Trivia
Forum
· Discuss this release
Support CSDb
Help keep CSDb running:



Funding status:




About this site:
CSDb (Commodore 64 Scene Database) is a website which goal is to gather as much information and material about the scene around the commodore 64 computer - the worlds most popular home computer throughout time. Here you can find almost anything which was ever made for the commodore 64, and more is being added every day. As this website is scene related, you can mostly find demos, music and graphics made by the people who made the scene (the sceners), but you can also find a lot of the old classic games here. Try out the search box in the top right corner, or check out the CSDb main page for the latest additions.
Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.084 sec.