Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in - nap
CSDb User Forums


Forums > C64 Coding > Assembler preferences.
2016-02-09 06:03
ChristopherJam

Registered: Aug 2004
Posts: 1378
Assembler preferences.

Two questions:
- what's everyone using these days?
- on large productions, do groups tend to enforce a single assembler for the entire project, or is the code base a bit heterogenous?

I'd like to keep this discussion purely focussed on assemblers; please leave code generators, loader toolchains etc for that other thread.


(as for me, I'm still using xa65 for most projects)
 
... 204 posts hidden. Click here to view all posts....
 
2016-05-04 21:06
Digger

Registered: Mar 2005
Posts: 421
@saimo: I love that :) Could this be ported to JS? I make a lot of prototypes in JS (Coffescript actually) and it would be nice to convert them to gradually into Assembly and then output it as .asm file by the browser :)
2016-05-05 09:39
JackAsser

Registered: Jun 2002
Posts: 1989
Quote: @saimo: I love that :) Could this be ported to JS? I make a lot of prototypes in JS (Coffescript actually) and it would be nice to convert them to gradually into Assembly and then output it as .asm file by the browser :)

That's exactly how I code my complex parts. Start with java code, then gradually replace each function with assembly (in java) and a crude CPU/VIC emulation to verify the correctness.
2016-05-05 09:39
Frantic

Registered: Mar 2003
Posts: 1627
@Saimo: ACME is a 6502/6510 assembler. Not for 68k like devpac etc.
2016-05-05 14:58
saimo

Registered: Aug 2009
Posts: 36
@Digger

Unless I misunderstand you, it sounds like you have something quite different in mind. My stuff does not compile C into assembly (so it doesn't allow to do prototyping in C), and does not output an assembly source. It's simple, but it's kind of weird to explain, so here are more details:
* all I have is a bunch of C files that constitute the framework;
* a C64 program consists of one or more C sources that include some of the framework files;
* the C sources define all the assembly code by means of C functions and macros (f.ex. ldai(0); is the equivalent of lda #0);
* I compile the sources with GCC, which generates an AmigaOS executable;
* I run the AmigaOS executable, which generates the C64 executable.


@Frantic

You've just exposed my ignorance about C64 assemblers :p
Sorry, I took a trip down the memory lane...
2016-05-05 15:06
Oswald

Registered: Apr 2002
Posts: 5017
saimo, congrats, thats a terribly masochistic way of doing it. :)
2016-05-05 16:26
ChristopherJam

Registered: Aug 2004
Posts: 1378
Quote: Quoting ChristopherJam
on large productions, do groups tend to enforce a single assembler for the entire project, or is the code base a bit heterogenous?
As others said already, there is no need to enforce The One Assembler. And why would there be? :) Given the plethora of assembler preferences, no demo coded by many coders would get finished. And already the choice of loader usually gives you the need to work with a second assembler, albeit only once to build the loader with your preferred options.


Good point that enforcing a standard would exclude any coders that didn't wish to switch.

I guess I was thinking it might simplify the build process, or at least make it easier to wrangle linking the handover between parts. (I'm curious as to whether any multiparters use a common kernel for juggling IRQs etc, but that's a whole 'nother topic).

Must admit, it's ca65's linker that's had me considering switching away from xa - as it is I occasionally resort to using a small Python script to parse the .lst from one prg to generate symbols to include into another .a65

Oh, and it also looks like it'd be saner for building and including code targeted for relocation (e.g. to zero page or the disk drive) if I switched to ca65. The hacks I use to get xa to do that are not my favourite thing.
2016-05-05 17:34
saimo

Registered: Aug 2009
Posts: 36
Quote: saimo, congrats, thats a terribly masochistic way of doing it. :)

@Oswald

LOL

Indeed it bothers me a bit to have to write all those () and ;, but the power, freedom and flexibility I get from the rest outweight the nuisance by a long margin.
2016-05-05 18:05
Hypnosis

Registered: Mar 2015
Posts: 36
@saimo: Interesting and odd solution to the problem!

I rolled my own assembler.
2016-05-05 18:07
soci

Registered: Sep 2003
Posts: 473
Writing the instructions directly into the C source to create the desired output is way too easy ;)

Instead of doing that I wrote C program which reads in various text/binary files to describe the output. This way I gained freedom from syntactic limitations of the compiler too.
2016-05-05 18:08
Bitbreaker

Registered: Oct 2002
Posts: 500
So much syntactic sugar and brainwank for so few releases :-D
Previous - 1 | ... | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 - Next
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
Didi/Laxity
Acidchild/Padua
Guests online: 131
Top Demos
1 Next Level  (9.8)
2 Mojo  (9.7)
3 Coma Light 13  (9.7)
4 Edge of Disgrace  (9.6)
5 Comaland 100%  (9.6)
6 No Bounds  (9.6)
7 Uncensored  (9.6)
8 Wonderland XIV  (9.6)
9 Bromance  (9.6)
10 Memento Mori  (9.6)
Top onefile Demos
1 It's More Fun to Com..  (9.7)
2 Party Elk 2  (9.7)
3 Cubic Dream  (9.6)
4 Copper Booze  (9.5)
5 TRSAC, Gabber & Pebe..  (9.5)
6 Rainbow Connection  (9.5)
7 Onscreen 5k  (9.5)
8 Wafer Demo  (9.5)
9 Dawnfall V1.1  (9.5)
10 Quadrants  (9.5)
Top Groups
1 Oxyron  (9.3)
2 Nostalgia  (9.3)
3 Booze Design  (9.3)
4 Censor Design  (9.3)
5 Crest  (9.3)
Top Diskmag Editors
1 Jazzcat  (9.4)
2 Magic  (9.4)
3 hedning  (9.2)
4 Newscopy  (9.1)
5 Elwix  (9.1)

Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.045 sec.