| |
Optimus
Registered: Jan 2002 Posts: 122 |
C64 crossdeveloping suggestions?
Yep. I am motivated to start coding something on the C64 again. I need to use some helpful tools that will speed up developing and make things less frustrating. I am searching for crossdeveloping tools on the C64.
I am already considering kick assembler. But I might want to hear more suggestions. Btw,. is there a C64 emulator coming with internal assembler? Something like the thing I use on CPC, the Winape32 emulator/assembler? That would be great! |
|
... 66 posts hidden. Click here to view all posts.... |
| |
kamelito Account closed
Registered: Mar 2006 Posts: 14 |
Quote: so is it possible to compile sources without the linker and the awkward segments ? dont think so. ca65 is also a bad choice for one who is not familiar with c compilers. imho its a huge overkill and gives an unnecessary complexity for the average c64 project.
Dbug I agree with you we need something like that for 6502.
http://webster.cs.ucr.edu/AsmTools/WhichAsm.html
Regards
Kamelito |
| |
MagerValp
Registered: Dec 2001 Posts: 1078 |
Frantic: of course you can implement a kind of linker like meta-source with any (decent) assembler. ld65 just gives you a dedicated, powerful, and standard way of doing it. No need to reinvent the wheel each time (and you don't end up with square wheels either :).
It has a bunch of nice features too, like automatic segment labels, output file control, relocation support, BSS/LOWCODE segments, etc - all of which I have used. There are also a bunch of advanced features like CONDES that gives you load-time linkable modules (e.g. in Contiki), but that's beyond the scope of most C64 productions.
|
| |
Dbug
Registered: Aug 2003 Posts: 5 |
Kamelito: Yup, exactly. Could probably contain a section for native assembler, and a section for cross-compilers.
Guess some kind of wiki could be used for that ?
I seem to remember there was a c64 wiki somewhere, with code sample, does it still exist ?
|
| |
MagerValp
Registered: Dec 2001 Posts: 1078 |
http://codebase64.org/
|
| |
Krill
Registered: Apr 2002 Posts: 2980 |
Frantic: What Magervalp said. That loader.a file is an archive which includes at least install.o and loader.o, so just that one file needed. And yes, you'd have to use ca65 and ld65. But there's always the option to just compile to .prg and incbin that in any other assembler. Some day i will set up a build server with web frontend for that, though, so people don't have to wade through all the shit to compile my stuff. :) |
| |
Stainless Steel
Registered: Mar 2003 Posts: 966 |
Quoting Krillso people don't have to wade through all the shit to compile my stuff. :)
Hallelujah!
|
| |
Martin Piper
Registered: Nov 2007 Posts: 722 |
For general purpose C64 development I prefer using the Microsoft Visual Studio IDE, ACME and VICE. Both of the later with my own tweaks to give me:
Automatic symbol loading of whatever file is loaded.
Memory watch window. Useful for watching variables change while single stepping.
CPU Execution history (with extra register and ST info).
The execution history isn't enabled in the standard VICE build but it is really useful feature that shows the last n number of instructions executed and their memory address, so if there is a crash it is possible to see the instructions leading up to the crash. For example this makes it easy to see when an interrupt exits without restoring a register and causing the mainline to use a bad register value.
In this screen shot the execution can be seen returning from an IRQ at $4beb and returning to the mainline at $b1a. The memory watch window is on the right of the picture. I added the register contents and status register to each CPU history entry as well. It makes debugging even easier. :)
If anyone wants the code changes or the built EXEs drop me a PM.
|
| |
Heaven Account closed
Registered: Jul 2008 Posts: 102 |
Martin,
Visual Studio?
not bad... if someone could explain me in detail how to setup such a nice dev system incl. your mentioned features. |
| |
Martin Piper
Registered: Nov 2007 Posts: 722 |
Create a new Makefile project in Visual Studio.
In the build commands use something like:
acme -v3 --msvc HelloWorld.a
The --msvc is part of my tweaks to ACME to get it to integrate its warning and error report with the MS IDE. Basically, after assembly pressing F4 will jump to the next warning or error in the IDE output window.
Then when you press F7 to build it will use ACME to build your project. :)
The whole VICE 2.0 source archive with my tweaks is available from: http://www.wellytop.com/VICE2WithTweaksSrc.zip
Win32 Binary:
http://www.wellytop.com/VICE2WithTweaksBin.zip
ACME With tweaks (adds --msvc and !svl to save labels for VICE):
http://www.wellytop.com/ACMEWithTweaksSrc.zip
Win32 Binary:
http://www.wellytop.com/ACMEWithTweaksBin.zip
|
| |
Heaven Account closed
Registered: Jul 2008 Posts: 102 |
ok. will give it a try... Xpress Studio 2008 would work, too?
and DASM, too? not a fan of ACME to be honest... it looks like the polish scene using QASM with some weird non-common commands like DTA a(adress) instead of .word adress etc...
|
Previous - 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 - Next |