most popular 6502 assembler
most popular 6502 assembler
Hello everyone!
I need to generate some 6502 assembly code for my project, and I (due to lack of experience) is totally clueless about which assembler to target.
A safe choice probably would be to pick the most popular one providing it runs on Windows or Linux. Which one would you recommend?
I need to generate some 6502 assembly code for my project, and I (due to lack of experience) is totally clueless about which assembler to target.
A safe choice probably would be to pick the most popular one providing it runs on Windows or Linux. Which one would you recommend?
- GARTHWILSON
- Forum Moderator
- Posts: 8775
- Joined: 30 Aug 2002
- Location: Southern California
- Contact:
Re: most popular 6502 assembler
Does it need to be free? The best ones aren't necessarily free, but there indeed seem to be some excellent free ones nevertheless, and "free" of course contributes to popularity. One that comes to mind is Andrew Jacobs' As65 assembler for 6502, 65c02, and 65816, which has program-structure capability built in. I have not used it myself (I use C32 which costs $99) but the specifications for As65 look outstanding, and it has been out for many years, so I would expect it to be relatively bug-free by now.
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
Re: most popular 6502 assembler
GARTHWILSON wrote:
Does it need to be free? The best ones aren't necessarily free, but there indeed seem to be some excellent free ones nevertheless, and "free" of course contributes to popularity. One that comes to mind is Andrew Jacobs' As65 assembler for 6502, 65c02, and 65816, which has program-structure capability built in. I have not used it myself (I use C32 which costs $99) but the specifications for As65 look outstanding, and it has been out for many years, so I would expect it to be relatively bug-free by now.
Given that 6502's popularity peaked a few decades ago I assumed that all commercial assemblers were abandoned long ago.
I expect that most of my code will be generated and not hand written, so a simple assembler will suffice. I mostly care about syntax, I need to generate code that is not painful to look at for a seasoned 6502 programmer.
- GARTHWILSON
- Forum Moderator
- Posts: 8775
- Joined: 30 Aug 2002
- Location: Southern California
- Contact:
Re: most popular 6502 assembler
pokey wrote:
I expect that most of my code will be generated and not hand written, so a simple assembler will suffice. I mostly care about syntax, I need to generate code that is not painful to look at for a seasoned 6502 programmer.
Making your code clear and easy to look at depends on you, not really the assembler. It's something we all need to keep striving for, regardless of what level we're at so far. Visual factoring is important. See the last few paragraphs of the "Debugging" page of my 6502 primer, under "Debugging. Part III. An ounce of prevention..."
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
Re: most popular 6502 assembler
There are lots of tools listed in the reference section of 6502.org - start here:
http://6502.org/tools/
Personally I usually use ca65 (part of the cc65 compiler) or any of several in-browser assemblers.
http://6502.org/tools/
Personally I usually use ca65 (part of the cc65 compiler) or any of several in-browser assemblers.
Re: most popular 6502 assembler
BigEd wrote:
There are lots of tools listed in the reference section of 6502.org - start here:
http://6502.org/tools/
Personally I usually use ca65 (part of the cc65 compiler) or any of several in-browser assemblers.
http://6502.org/tools/
Personally I usually use ca65 (part of the cc65 compiler) or any of several in-browser assemblers.
Good enough for me. Thank you!
Re: most popular 6502 assembler
GARTHWILSON wrote:
The 6502/65C02/65816 syntax will be pretty uniform
Re: most popular 6502 assembler
So, is your handle any reference to a certain audio/IO chip for the Atari? 
Cat; the other white meat.
Re: most popular 6502 assembler
pokey wrote:
Good enough for me. Thank you!
The CC65 suite is quite powerful, but the linking and loading can be very complicated.
Re: most popular 6502 assembler
For simple projects, I've used ca65 in a very simple way. (For more complex ones, you might need to set up a config file which describes your target machine.) See here:
Elsewhere in the forum, these conversations might help:
viewtopic.php?p=25277#p25277
viewtopic.php?p=51226#p51226
viewtopic.php?t=2455#p24636
Code: Select all
ca65 -l boot816.as -D BASE=0x8000
cl65 boot816.o --target none --start-addr 0x8000 -o boot816.bin
viewtopic.php?p=25277#p25277
viewtopic.php?p=51226#p51226
viewtopic.php?t=2455#p24636
Re: most popular 6502 assembler
I can second the recommendation for ca65. The macro system is really powerful and you will probably start using it sooner than you think.
- BigDumbDinosaur
- Posts: 9428
- Joined: 28 May 2009
- Location: Midwestern USA (JB Pritzker’s dystopia)
- Contact:
Re: most popular 6502 assembler
Long-time user of Kowalski's assembler. It doesn't directly support the 65C816, but has an extensive macro capability that makes adding support possible.
x86? We ain't got no x86. We don't NEED no stinking x86!
Re: most popular 6502 assembler
I've been reading the CA65 docs as it comes with CC65. It does look pretty powerful, and supports label scope, anonymous labels, macros, and program sections. These were all standard features in the best macro assemblers, and are helpful as programs grow in complexity.
I've been using the Ophis assembler as it is written in Python, so it is cross platform. It has a similar feature set and remarkably similar syntax to CA65. A global search and replace should port code from one to the other. For example .endscope (CA65) to .scend (Ophis).
I've been using the Ophis assembler as it is written in Python, so it is cross platform. It has a similar feature set and remarkably similar syntax to CA65. A global search and replace should port code from one to the other. For example .endscope (CA65) to .scend (Ophis).