| |
MC Account closed
Registered: Jul 2009 Posts: 71 |
Looking for resources
Lads, as its been 20 years since I've last seen a working C64 let alone coding on one... I am in need of resources.
I already found a good set of pdf copies of machine language coding books here: http://www.bombjack.org/commodore/books.htm#MACHINE_LANGUAGE_an..
The programmers reference manual (and other manuals) here: http://www.bombjack.org/commodore/commodore/
And the C64 memory map here: http://www.scribd.com/doc/40443/Commodore-64-Memory-Maps-variou..
What I am still looking for is a good version of Tasm with (if possible) a manual and some source codes to get me back in touch with 8bit code.
After leaving the C64 I taught myself 68000, and later Intel 386 coding (flat memory model, based on a dos extender). I forgot most of the 6502/6510 instructions :(
None of the original dutch usa-team source codes have been kept, I lost everything including the sources of music assembler.
Any good linkage is welcome.
Cheers, Marco
P.S. Strangely I do still remember addresses like $0314/0315, $d012 and the $d400 range (Who would forget SID eh?)... The brain is an odd thing indeed.
|
|
| |
Frantic
Registered: Mar 2003 Posts: 1646 |
Codebase64 contains a lot of code, showing how to do various things:
http://codebase64.org/
AAY64 is imho THE best reference for looking up registers etc:
http://unusedino.de/ec64/technical/aay/c64/
(The site is quite slow, so a tip is to download it and browse it offline. It is always good to carry around anyway.)
Many versions of TASS:
http://turbo.style64.org/
TASS docs:
http://www.fairlight.to/docs/text/xass33.html
Then again, most coders use cross assemblers in these days... |
| |
MC Account closed
Registered: Jul 2009 Posts: 71 |
Hmmmkay. Cross assemblers - I see the advantage in that.
I downloaded acme, dasm and Aart Bik's cross assembler. Will have a look at those tonight...
Some of them allow macros. Good!
Any of you ever used DEVPAC on the 68000 based platforms? Brilliant IDE for its time...
|
| |
Frantic
Registered: Mar 2003 Posts: 1646 |
Never even heard of that Aart Bik thingy. Probably useless. :)
ACME, DASM has been used by many (including myself), and other popular ones are KickAssembler and ca65. |
| |
Yazoo
Registered: Nov 2006 Posts: 227 |
i am using dreamassembler (i think axis and graham use that one too)... it depends on personal taste i guess. btw - nice to see you back on track ;-) |
| |
Frantic
Registered: Mar 2003 Posts: 1646 |
Yeah... I was thinking about mentioning dreamassembler too. It is nice indeed, and I use it too for one project. :) Still I can't remember any real benefits over some of the other assemblers I mentioned, apart perhaps from some functions that are handy when assembling a cartridge image. ...or did I miss something? On the other hand I think it is more or less equivalent in functionality with ACME for example, so why not mention it.. yes.. |
| |
MC Account closed
Registered: Jul 2009 Posts: 71 |
Aart wrote a MOS Technology 6510 cross-assembler, which converts an assembler source file into a target file that can be executed by one of the emulators or, with some effort, uploaded to a real Commodore 64.
Aart Bik is a smartass ;) http://www.aartbik.com/MISC/c64.html
This whole C64 thing started last thursday when I picked up three of em. Now my mind is all creative and stuff and I'm loving it.
There will be new MC stuff. Music and most probably also code.
I have this new concept in mind for music editing (I could never get along with tracker style editing) and manipulating the SID. Let's not jump to conclusions and call it music-assembler 2 yet. But you never know do you...
But first things first, let's testdrive these cross assemblers.
|
| |
MC Account closed
Registered: Jul 2009 Posts: 71 |
Owkay. I chose DASM in combination with Crimson Editor.
DASM because it allows INCBIN and CE because there doesn't seem to be any proper IDE for DASM (CE is already setup to assemble my stuff into a .PRG file when I hit ctrl+shift+A).
Works like a charm! I already managed to play a music-assembler tune and have a little scroller running. Apparently my memory isn't as shite as I like to make people believe. ;)
Thanks everyone I think I have all that I need for the moment.
Cheers, Marco
|
| |
Frantic
Registered: Mar 2003 Posts: 1646 |
All of the assemblers that has been mentioned here (possibly apart from the one I didn't know about) supports inclusion of binary files. It is a standard feature in these days. Not saying that DASM is necessarily a bad choice or so, but what you said is not in itself really a valid argument for choosing DASM specifically. :) |
| |
MC Account closed
Registered: Jul 2009 Posts: 71 |
Well then the fact I didn't see anything about it in the ACME docs is...
LOL
DASM does the job, it assembles stuff and allows me to use the extra bits I like (incbins, macros). Am toying with it while keeping an eye on the forum atm... This is good stuff for an old fart like moi.
|
| |
Frantic
Registered: Mar 2003 Posts: 1646 |
In ACME, it is "!binary" (or the alias "!bin"):
Examples:
!binary <Own/menudata.b> ; insert ibrary file
!bin "asc2pet.b", 256, 2 ; insert 256 bytes from file offset 2.
!bin "table", 2, 9 ; insert 2 bytes from offset 9
!bin "list",, 9 ; insert from offset 9 to EOF
(From the ACME manual...)
Anyway, DASM will most likely do the job. There are different versions around. Some of them with better error reporting than others. I think the version available on the following page is the one with better error handling:
http://cadaver.homeftp.net/tools.htm |
| |
Devia
Registered: Oct 2004 Posts: 401 |
DASM is a lot like DevPac syntax wise, so it's a quick transition to the C64 if you remember DevPac.
Local .label labels, DC.B/DS.B and stuff like that. It's really rather irellevant, but helps one to quickly get familiar with C64 code again.
Personally I moved from Amiga DevPac to Amiga DASM to PC DASM and later on to ca65 from the cc65 package.
Learning to fully exploit the possibilities of ca65/ld65 is a bit of work though, but it IS worth it imo.
|
| |
cba
Registered: Apr 2002 Posts: 935 |
Use Exomizer V2.0 Beta 7 to crunch, further do check out Kick Assembler V3.13 |
| |
Perplex
Registered: Feb 2009 Posts: 255 |
Quoting DeviaLearning to fully exploit the possibilities of ca65/ld65 is a bit of work though, but it IS worth it imo.
Seconded! The CC65 suite is also well-documented, well-maintained and there is an active mailing list for support.
|
| |
Oswald
Registered: Apr 2002 Posts: 5086 |
if you prefer something simple&easy with the same syntax as the native turbo ass try this:
64TASS V1.45
(incbin, macros, are in there + more) |
| |
MC Account closed
Registered: Jul 2009 Posts: 71 |
I'll look at cc65, exomizer and 64tasm when I get home lads. Thanks for the linkage. |