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 > C64 crossdeveloping suggestions?
2008-09-05 07:02
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!
2008-09-05 08:13
Stainless Steel

Registered: Mar 2003
Posts: 966
ACME, Exomizer, TextPad & batchfile to compile / pack and autostart in WinVice. Works pretty good.
Not as fancy as KickAss though.
2008-09-05 08:43
SIDWAVE
Account closed

Registered: Apr 2002
Posts: 2238
Relaunch64 + ACME assembler is a good combo.
Just point to ACME and VICE, and you're all done.

You can get Relaunch64 at www.koolpeople.de
ACME: http://www.esw-heim.tu-clausthal.de/~marco/smorbrod/acme/
2008-09-05 09:07
Tao

Registered: Aug 2002
Posts: 115
vim, xa65, vice (with a patched petcat to be able to build C*Base), gimp-cbmplugs, and a bunch of home-brew tools.
2008-09-05 12:17
Graham
Account closed

Registered: Dec 2002
Posts: 990
UltraEdit for editing
DreamAss for assembling
CodeNet for transferring file directly to c64 + execute
2008-09-05 12:34
HCL

Registered: Feb 2003
Posts: 716
What Graham said, but Emacs for editing.
Sometimes using cc65 also.
2008-09-05 13:39
Clarence

Registered: Mar 2004
Posts: 119
What the others said or:

EditPlus (with 6502 syntax), 64tass.
Quick test with WinVice+action cartridge attached.
Real test with a C64 either with:
- RR + RR-net + codenet
- or an Ide64 with any kind of ideserv solution (serial, paralell, ethernet but most preferably newest Ide64 v4.1 with USB connection).
2008-09-05 13:48
Oswald

Registered: Apr 2002
Posts: 5017
btw doesnt attaching the AR will spoil the autostart?:(
2008-09-05 14:22
Edhellon

Registered: Aug 2003
Posts: 20
Quote: btw doesnt attaching the AR will spoil the autostart?:(

Nope, you just have to press F3 (normal reset) and it autostarts beautifully.
2008-09-05 20:12
Heaven
Account closed

Registered: Jul 2008
Posts: 102
Coming from Atari scene currently I am using

- Winvice
- Notepad++
- DASM or Atari cross assembler MADS

(mads.atari8.info)

oh...relaunch64 could be usefull for other 6502 work, too? I mean it is fully configurable so should be possible...
2008-09-06 07:27
Hein

Registered: Apr 2004
Posts: 933
64Tass
Crimson (+6502 & Tass syntax)
Vice/Hoxs64
Timanthes
Goattracker
AOMEdit (Cadaver's level editors)
Spritepad (with colourpatch)
DPaint 2
2008-09-06 18:24
null
Account closed

Registered: Jun 2006
Posts: 645
on windows: Relaunc64 + ACME

on Linux: gedit + ACME

( also sometimes nano instead of gedit )

------------------------------------
http://zomgwtfbbq.info
2008-09-06 18:26
null
Account closed

Registered: Jun 2006
Posts: 645
oh, and for pixeling I use ProjectOne on windows, of course :_)

------------------------------------
http://zomgwtfbbq.info
2008-09-06 21:42
algorithm

Registered: May 2002
Posts: 702
Relaunch64, Acme, Winvice,exomizer
And of course my pc tools for graphic based manipulation/compression
2008-09-07 08:21
Shadow
Account closed

Registered: Apr 2002
Posts: 355
UltraEdit
Kick Assembler
VICE
2008-09-07 08:50
tlr

Registered: Sep 2003
Posts: 1714
Assembling: make, dasm, exomizer, gcc (for tools)
Editing: emacs, cvs
Testing: viceplus, dtvtrans to DTV + 1541.
2008-09-07 11:36
wozza

Registered: May 2003
Posts: 18
Same as rambones :

Relaunch64, ACME, hooked into VICE.
Using Project One, which I finished my first logo on last week ;)
Trying to code a flashy intro for it now...8P
2008-09-07 11:43
kamelito
Account closed

Registered: Mar 2006
Posts: 14
I'm just (re)starting playing with the C64.
I'm using relauch64 and KickAss along with winvice. I did pre-order a 1541ultimate too.
The most difficult thing to find are good graphics cross plateform tools for tile editing, tile map, sprite editor...That's why many use their own tools I suppose.
An all in one tool would be perfect, I don't know if that exist yet or not.

Regards
Kamelito
2008-09-07 11:53
Frantic

Registered: Mar 2003
Posts: 1627
Running MacOSX:
- TextMate
- ACME
- make
- codenet
- vice
- pucrunch
- exomizer
- cc1541
- warpcopy
- an rr-rom with codenet support (by J0x)
(..and some other small tools, used only in some occasions)

Running win32:
Exactly the same tools, except for using UltraEdit instead of TextMate.

@Hein: I remember trying an older version of Sprite Pad which bugged a lot, but it seems like a useful sprite editor now. Nice...
2008-09-07 12:05
Hein

Registered: Apr 2004
Posts: 933
Quote: I'm just (re)starting playing with the C64.
I'm using relauch64 and KickAss along with winvice. I did pre-order a 1541ultimate too.
The most difficult thing to find are good graphics cross plateform tools for tile editing, tile map, sprite editor...That's why many use their own tools I suppose.
An all in one tool would be perfect, I don't know if that exist yet or not.

Regards
Kamelito


you can find some nice tile/map/sprite tools here:
http://cadaver.homeftp.net/tools/c64tools.zip
2008-09-07 13:08
kamelito
Account closed

Registered: Mar 2006
Posts: 14
Thanks for the link Hein, I'm going to look at them.

Regards
Kamelito
2008-09-07 13:38
Radiant

Registered: Sep 2004
Posts: 639
ca65 (in the cc65 suite) is an excellent choice of cross assembler if you want to do more fancy/beardy stuff, but the advantages mostly come into play with larger codebases. gvim is my editor of choice, and I use GNU Make for the build system.
2008-09-07 17:45
kamelito
Account closed

Registered: Mar 2006
Posts: 14
RadiantX does CA65 is better than KickAss, I heard that version 3 is planned but don't know the feature list.

Regards
Kamelito
2008-09-07 18:34
kamelito
Account closed

Registered: Mar 2006
Posts: 14
I've read many posts about C64 cross dev but nobody ever recommended Snasm, made by an old DMA design programmer Its bizarre cause this guy is very talented. (dailly.blogspot.com)

Regards
Kamelito
2008-09-07 18:53
Radiant

Registered: Sep 2004
Posts: 639
kamelito: Don't know about that really; I have only looked very briefly at KickAss. How well does it handle things like relocatable code?

My main gripe with ca65 is that the preprocessor language can be a bit odd at times; apart from that I think it's perfect.
2008-09-07 20:00
kamelito
Account closed

Registered: Mar 2006
Posts: 14
RadiantX: there a .pseudopc directive that let you assemble to a specific address while having code be like it was assembled to another.

Regards
Kamelito
2008-09-07 22:13
kamelito
Account closed

Registered: Mar 2006
Posts: 14
I tried CA65 and I got errors, while I think I'm doing no errors.
ld65.exe: Warning: [builtin config](6): Segment `STARTUP' does not exist

I didn't find anything but one msg about it at lemon64 and one at comp.sys.cbm :-(

ca65 -t c64 clearscreen.asm
ld65 -S 4096 -t c64 -o clears.prg clearscreen.o

The file is created I got a clears.prg load ok through Vice but nothing at $1000.
And this error (see above)
Any idea ? (Asmone on the Amiga was easier ;)

Regards
Kamelito

2008-09-08 06:27
Frantic

Registered: Mar 2003
Posts: 1627
cc65/ca65 + linker can be a little tricky to get into in the first place. You have to learn how the linker works, basically and you can't just do "* = $1000" to set the program counter from the code. In that respect KickAss, ACME or something else is a lot easier to get into.

Have you checked the docs?:
http://www.cc65.org/doc/
2008-09-08 06:29
HCL

Registered: Feb 2003
Posts: 716
@kamelito: ca65 generates obj-files, relocatable code. Then later when linking several obj-files they get absolute addresses, just like a C-compiler.

I also recon ca65 needs more setup stuff before you can get running, but i think there is a tutorial in the package..
2008-09-08 11:18
Cruzer

Registered: Dec 2001
Posts: 1048
What Shadow said, although I have on the TODO list to try some of the other tools, although I doubt assembling could get any easier - CTRL+F9, and it pops up in Vice.

Only problem I have with KickAss is that the scripting is too slow to make anything advanced. Don't know if any of the alternative assemblers are better.

2008-09-08 11:58
Zone
Account closed

Registered: Nov 2002
Posts: 7
If you want your code and data to land at certain addresses with ca65, you have to feed the linker with a link configuration file, and compile with eg. `cl65 -C [link file] mysource.s'.

But what the documentation fails to explain is that you have to append "fill=yes" to each memory segment in the link file for it to work as expected. :) It's explained in the FAQ though: http://www.cc65.org/faq.php
2008-09-08 12:55
Radiant

Registered: Sep 2004
Posts: 639
Zone: Actually you don't have to add fill = yes unless you're dealing with multiple memory area definitions. I've found that practice to be a bit overused; most of the time you can deal just fine with having a single memory area, "RAM", and then using the "start = $address" attribute for your segments as needed.
2008-09-08 13:47
JackAsser

Registered: Jun 2002
Posts:
Quote: Zone: Actually you don't have to add fill = yes unless you're dealing with multiple memory area definitions. I've found that practice to be a bit overused; most of the time you can deal just fine with having a single memory area, "RAM", and then using the "start = $address" attribute for your segments as needed.

@radiantx: that's what I do aswell unless I have code that is loaded at one place and run at another.
2008-09-08 14:01
Oswald

Registered: Apr 2002
Posts: 5017
many assemblers are only good to make your code look like a highly scientifical unreadable c sources. if you're a beginner go for 64tass, there you can just do stuff which will simply work, instead of spending a week to get a screen clr routine working.
2008-09-08 14:13
chatGPZ

Registered: Dec 2001
Posts: 11110
what oswald123 said \o/
2008-09-08 16:20
Radiant

Registered: Sep 2004
Posts: 639
Quoting Oswald
many assemblers are only good to make your code look like a highly scientifical unreadable c sources

Not all of us find "highly scientifical c sources" unreadable you know. :-) There's a point to all the metacode, though it may not be obvious at first.
2008-09-08 16:29
Testa
Account closed

Registered: Oct 2004
Posts: 197
what oswald said:

i go for:
ultraedit
64tass
vice

2008-09-08 16:51
Oswald

Registered: Apr 2002
Posts: 5017
Quote: Quoting Oswald
many assemblers are only good to make your code look like a highly scientifical unreadable c sources

Not all of us find "highly scientifical c sources" unreadable you know. :-) There's a point to all the metacode, though it may not be obvious at first.


beginners shouldnt be advised to use assemblers where even putting the code to a specified address needs days of learning, and unnecessary complexity. and as it shows there's confusion even amongst who use these assemblers (fill vs no fill)
2008-09-08 17:14
Radiant

Registered: Sep 2004
Posts: 639
Oswald: No confusion, just different ways of doing things, with different sets of advantages and disadvantages. It is very true though that for someone who is just learning to code ca65 is a bad choice, but I haven't gotten the impression that Optimus belongs in that category. As for the complexity it sure is there, but as already stated it is only unnecessary if you don't utilize the functionality it brings.
2008-09-08 18:02
Dbug

Registered: Aug 2003
Posts: 5
Somebody mentioned xa65, it's also what I'm using.

Would be nice to find some kind of comparative table showing the various features of the various assemblers (support for "extra" opcodes, 6502/65c02/65816/variants, conditional assembly, macros, includes, etc...) because I really have no idea of how XA compares to KickAss, or how KickAss compares to CA65 or Acme :-/
2008-09-08 18:03
Oswald

Registered: Apr 2002
Posts: 5017
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.
2008-09-08 19:58
kamelito
Account closed

Registered: Mar 2006
Posts: 14
Don't know if its relaunch64 fault or KickAss but it generate an error if you put kickass on a folder with spaces (ex program files)

Regards
Kamel

2008-09-08 20:44
Devia

Registered: Oct 2004
Posts: 401
I like ca65 for the larger projects with makefiles and shit. Works pretty well and has all the config options you'd ever need (almost).
I also use it for the small and simple type-assemble-run type of stuff, although I must admit that the hotkey setup for that in UltraEdit is a bit cumbersome: ca65.exe -o "%p%n.o" -t c64 "%f" & ld65 -o "%p%n.prg" -t c64 "%p%n.o" & codenet.exe -n 10.0.1.64 -x "%p%n.prg"

..for some reason cl65 doesnt work for me.. can't remember why.

Why isn't anyone mentioning DASM, btw? Small, simple, fast, has '.' local labels \o/..
no one ever used it? or is it crap for some reason I never discovered? (i used it for years).
2008-09-09 06:24
MagerValp

Registered: Dec 2001
Posts: 1055
IMHO ca65 is the best 6502 assembler there is, but it's not a beginner's tool. Load up turbo assembler on real hw if you want to learn.
2008-09-09 07:28
Frantic

Registered: Mar 2003
Posts: 1627
@Devia: I have also used DASM a lot in the past. It's nice.
2008-09-09 07:34
chatGPZ

Registered: Dec 2001
Posts: 11110
Quote:
so is it possible to compile sources without the linker and the awkward segments ? dont think so.


it is. you can make ca65 behave almost exactly like 6502tass (or whatever that TASS thing is called). you dont really have to bother about the linker in that case at all. (but ofcourse, it defeats the whole purpose of using ca65 then)

2008-09-09 08:59
MagerValp

Registered: Dec 2001
Posts: 1055
Quote: Quote:
so is it possible to compile sources without the linker and the awkward segments ? dont think so.


it is. you can make ca65 behave almost exactly like 6502tass (or whatever that TASS thing is called). you dont really have to bother about the linker in that case at all. (but ofcourse, it defeats the whole purpose of using ca65 then)



It's like trying to drive a nail with a screwdriver: it may eventually get the job done, but wouldn't it be more efficient to just use a hammer? Use the right tool for the job.
2008-09-09 11:03
kamelito
Account closed

Registered: Mar 2006
Posts: 14
Quote: IMHO ca65 is the best 6502 assembler there is, but it's not a beginner's tool. Load up turbo assembler on real hw if you want to learn.


Can you please elaborate?
2008-09-09 11:23
MagerValp

Registered: Dec 2001
Posts: 1055
I fail to see how that statement could be made any clearer.
2008-09-09 11:37
Oswald

Registered: Apr 2002
Posts: 5017
Quote: It's like trying to drive a nail with a screwdriver: it may eventually get the job done, but wouldn't it be more efficient to just use a hammer? Use the right tool for the job.

yeah, 64tass is a hammer, and ca65 is a laptop. to drive in a nail.... imho :)
2008-09-09 11:47
Devia

Registered: Oct 2004
Posts: 401
so don't use ca65 on a laptop for simple projects, or the laptop will break.. noted.
2008-09-09 13:08
JackAsser

Registered: Jun 2002
Posts:
Bla bla bla bla... u're all lamers. :D Why do u assume C64-newbies are computer illiterates and never have used make, gcc and other tools?
2008-09-09 13:43
Frantic

Registered: Mar 2003
Posts: 1627
Just a little more seriously:

I never understood why people find it so good to have a linker. I mean.. Why exactly is it so much better to have a linker compared to having a non-linker assembler and just structuring the main code file like this:

* = $0800
STARTUP_SEGMENT:
!include "file1.i"
!include "file2.i"

* = $1000
MUSIC_SEGMENT:
!incbin "muzak.bin"

MORE_CODE_SEGMENT:

...etc, setting up memory segments and so on? I fail to see the power in a c64 coding context. You can separate actual code from memory setup anyway (like my example above demonstrates). If you want to produce overlapping code segments there is always the pseudopc directive and that stuff of course, and... Assembling all of the files usually takes 0.001 seconds anyway, unless you're using some lame assembler. So???

Then there might be other reasons for using ca65 (I have used it too), but that is another story.
2008-09-09 13:46
AüMTRöN

Registered: Sep 2003
Posts: 42
Ultraedit
DASM (iAN CooG mods)
VICE

BTW: For metal testing I have a simple and quaint solution. Save .prg to 3.5" floppy on PC -> insert floppy into 64HDD server.
2008-09-09 14:08
Zone
Account closed

Registered: Nov 2002
Posts: 7
Frantic: The only advantage of using a linker, I think, is that you can easily move around your program without having to change all your sources. Just give your linker new instructions.

Historically, the problem with your code was that Turbo Assembler failed when assembling to disk... I don't know why, really.
2008-09-09 14:11
Krill

Registered: Apr 2002
Posts: 2839
Frantic: Imagine you have an obscure file like "loader.a" which some lamer gave you, and which you can link to your various projects to a memory location which is different for every one of them.

Now, each of your projects comes with a link file saying where each of the three loader segments (LOADERZP, LOADER, and INSTALL) are to be placed.

Et voilà.

I could think up more real-world examples, maybe.. :)
2008-09-09 14:58
Frantic

Registered: Mar 2003
Posts: 1627
@Zone/Krill: I fail to see the advantage. In both cases you could easily move around the code by placing it somewhere else in the "linker"-like sourcefile that I exemplified in my previous post, since, as I said, the exact memory locations could be specified outside the files containing actual code anyway when doing it that way.

Well, if I understood Krill's example correctly, the "loader.a" would have to be distributed as three separate files, rather than one, to be included where you want to have them, but that's not a very big deal I guess? The code of this "lamer" ;) would also be more close to being compatible to a lot of different cross-assemblers. I mean, it is a fact that many people do not use ca65, no matter if it is the "best" or not. My point is that using a linker, you would have to learn a separate "linker syntax" and when doing it the way I exemplified above, you would simply do this "linking" stuff using the ordniary syntax of the assembler which you are more likely to be familiar with.

Anyway... It doesn't matter THAT much... :) I'm fine with ca65 and linking too. I just never really understood the "ca65 is so good because you have a linker"-argument.
2008-09-09 18:33
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
2008-09-10 08:48
MagerValp

Registered: Dec 2001
Posts: 1055
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.
2008-09-10 18:13
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 ?
2008-09-10 19:49
MagerValp

Registered: Dec 2001
Posts: 1055
http://codebase64.org/
2008-09-10 20:07
Krill

Registered: Apr 2002
Posts: 2839
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. :)
2008-09-11 11:26
Stainless Steel

Registered: Mar 2003
Posts: 966
Quoting Krill
so people don't have to wade through all the shit to compile my stuff. :)


Hallelujah!
2008-09-16 04:41
Martin Piper

Registered: Nov 2007
Posts: 634
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.

2008-09-16 08:43
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.
2008-09-16 11:43
Martin Piper

Registered: Nov 2007
Posts: 634
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
2008-09-16 14:12
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...

2008-09-17 01:52
Martin Piper

Registered: Nov 2007
Posts: 634
Xpress Studio 2008 should work too as well as dasm, all you are doing is giving the IDE a command line to execute to assemble your files.

When I'm not so busy I'll have another look at DASM, but I'll need to see if I can get it to save labels in VICE format and in a decent label order as well. Most assemblers will dump immediate values and memory addresses in the symbol table without any indication that they are memory addresses, which isn't a lot of good because it causes VICE to display immediate values as zero page labels. :(

*Thinks* A proper debug file format would enable VICE to display the source code for each disassembled memory location. Hmm...
2008-09-17 05:25
Heaven
Account closed

Registered: Jul 2008
Posts: 102
my dream is always to have at least a kind of realtime debugger...

like the no$gba emulator ones. but haven't found any c64 or atari 800 emulator giving me that feature...

2008-09-17 05:43
Martin Piper

Registered: Nov 2007
Posts: 634
A debugger that allows the machine state to be rewound, code changes made and then continue debugging would be nice. :)
2008-09-17 07:51
Krill

Registered: Apr 2002
Posts: 2839
Isn't an emulator's built-in monitor good enough for that?
2008-09-17 08:46
Martin Piper

Registered: Nov 2007
Posts: 634
Not for anything except really simple code changes. Also the monitor isn't going to display comments or nicely formatted source to edit. Then if the monitor is used to make several code changes there is the problem of reconciling those changes with the source code.
2008-10-17 14:06
cavey

Registered: Jul 2002
Posts: 68
Quote: Isn't an emulator's built-in monitor good enough for that?

it's the tool for manky!
2008-10-18 19:29
Warnock
Account closed

Registered: Sep 2007
Posts: 27
How do you set up WinVice to work with Relaunch64? I have Tass as my assembler but when I go to run the program in Vice, I get line error codes. I can't remember what the error message was. I was wondering if there was some type of setting that is needed to activate WinVice without getting an error message. Please help!!

2008-10-19 20:02
Richard

Registered: Dec 2001
Posts: 619
You would need to go to *setup emulator*. Find the path and .exe for where x64 (inside winvice directory) lies and then change textbox (where -autostart lies) to where your assembled .prg lies.
2009-05-06 09:56
Scout

Registered: Dec 2002
Posts: 1568
For the cross-developers on Windows who use Editplus (http://www.editplus.com) as an programmer's editor, I've extended the syntax file (for syntax highlighting) with the 6510 illegal opcodes and the new C64DTV opcodes.

Get it here:
http://members.ziggo.nl/rolando/tools/asm6502.zip
2009-09-15 08:16
Hermit

Registered: May 2008
Posts: 208
I just started experiment of cross-development.

I use Ubuntu Linux, and 'GEANY' seems a great, light, fast IDE with syntax-highlighting (.asm) and split-window plugin.
(You have to use .asm extension if not set another in cfg.)

For compiling I think the best way is '64TASS', because it has the same syntax as Turbo Assembler on C64. E.g. it was easy to port&compile my Turbo Assembler source to PC..and maybe won't be problem with using it back on C64..
(Be careful, the 64tass won't compile source & write output with normal CR-endings, you have to convert the source with Geany to have CR+LR endings (Windows form))

The tester is (of course) Vice. There were two things to do to make things faster: Attach the tfr08.bin (Final Replay) as retro-replay cartridge into Vice, then set it as default & save settings. This fastens bootup of Vice.

The Vice '.prg'-autostart (from commandline) is delayed 3 seconds by default, it's slow when you want to test your program, because every test will start a new Vice.
The delay value can be found in the 'c64.c' in '/src' of Vice-source folder. Search second result for 'autostart' then rewrite '3' to '1' and recompile Vice...if you need I can send my Ubuntu compilation (.deb package) of Vice with 1s delay, ask it from me at hmtmade@gmail.com.
(0 delay didn't work, Vice couldn't autostart program, maybe the cartridge didn't came up fast enough')

Now, when you have 64tass and x64 in their places, only thing you have to do is opening a source code in geany with 64tass syntax & .asm extension. Then in build menu you can 'Set Includes And Arguments'. Type the next text into this box if you want to compile .asm to .prg, and then start Vice with the compiled .prg autostarted:
64tass "%f" -o "%e.prg" | x64 "%e.prg"
(In Windows 'x64.exe' and paths may be required.)

I think it's an useful set, I can compile my code&run it in Vice, all in around 2 seconds, then simply quit Vice by Alt+Q or Alt+F4 (and in Vice menu, should disable quit-confirmation then save settings). Though, the tfr08.bin cartridge seems slowing down the prg-autoload, so maybe some empty/non-fastload cartridge images with this fast machine-start would be better...:)

Hermit Software Hungary
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
Alakran_64
Freeze/Blazon
Exploding Fi../Techn..
algorithm
Knut Clausen/SHAPE/F..
TheRyk/MYD!
Didi/Laxity
Mojzesh/TGR🇬🇧
Menace/Spaceballs
Guests online: 170
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 Rainbow Connection  (9.5)
6 TRSAC, Gabber & Pebe..  (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.125 sec.