Megalextoria
Retro computing and gaming, sci-fi books, tv and movies and other geeky stuff.

Home » Digital Archaeology » Computer Arcana » Commodore » Commodore 8-bit » Free software cross-assembler for Commodore 64
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Free software cross-assembler for Commodore 64 [message #44025] Thu, 21 March 2013 13:07 Go to previous message
Luca Saiu is currently offline  Luca Saiu
Messages: 3
Registered: March 2013
Karma:
Junior Member
As many of you I have very fond memories of my very first computer, a
Commodore 64. However, living in a culturally backward and isolated
setting as I did, with nobody to teach me and only books on BASIC, I
never had the opportunity of learning 6502 assembly programming back in
the time -- or much complex programming at all, as I can see now in
retrospect. I've written a somewhat personal and sentimental post about
my learning experience of those days in my personal blog, which has
received some positive comments: [1].

I'm a grown man now, a computer scientist. I moved to Paris, one of the
centers of the world. But even if now I work on compilers every day, I
still regret the missed opportunity: from the middle-to-late Eighties to
1993, BASIC V2 was all I had; I never did "the real thing".

And so, for nostalgia and because at some level it seems "right", I've
decided to add the Commodore 64 as one target of GNU epsilon, my
ambitious, modern programming language [2] for which I'm now working on
compiler backends. Even if it's only one sub-project for my spare time
and twenty-five years late, this one glorious hack is the least I owe to
that machine.

I need some tools, first of all a cross-assembler running on Unix
machines; and it must be free software -- because epsilon is part of GNU,
and because that's what I decide. The assembler included in cc65 would
actually qualify, even if compiler doesn't [3], and I'd prefer to avoid
it as a dependency for that reason. Is there some other popular
alternative everybody uses? I've seen a couple projects which might be
usable, even if I suppose some sort of "linking" to also be necessary --
or at least some initialization code. How do I load the code in RAM,
from a disk file? I've seen BASIC code containing just a SYS jumping to
the machine language routine, so I guess that's how. What should I read
to learn more about these details?

And what about I/O, or other library routines? Is there some body of
code I can reuse, or does the ROM already contain everything needed?

What documentation would you recommend to me? I'm not a beginner and I
already know several other assembly languages (for "bigger" processors),
but I'm comparatively ignorant about the Commodore low-level workings.

Thanks for any suggestions.

[1] http://ageinghacker.net/blog/posts/5/
[2] http://www.gnu.org/software/epsilon
[3] http://en.wikipedia.org/wiki/Cc65 , third paragraph as of March 2013

--
Luca Saiu
Home page: http://ageinghacker.net
GNU epsilon: http://www.gnu.org/software/epsilon
Marionnet: http://marionnet.org
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Re: love group but getting over 200 spam ads from google so need leave
Next Topic: SIDS??
Goto Forum:
  

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Tue Apr 23 15:36:55 EDT 2024

Total time taken to generate the page: 0.05925 seconds