How to get the VICE compatible symbol file from VASM?

Programming the 6502 microprocessor and its relatives in assembly and other languages.
Post Reply
stenlik
Posts: 8
Joined: 28 Nov 2021

How to get the VICE compatible symbol file from VASM?

Post by stenlik »

I am using the VASM assembler with the VICE emulator. I have tried to find the answer to my problem on other forums (https://www.lemon64.com/forum/viewtopic ... 70&start=0) and to figure out that on my own without any succes so far...

I have found that other assemblers, e.g. 64tass has a nice feature when executed with switch --vice-labels. It generates file with labels and breakpoints that could be loaded by VICE and used in the monitor when started with the -moncommands switch. KickAssembler has a similar function (I have never tried it, but it is described in the manual).

Does anyone know if VASM can do it also? The only thing I found is the -L <listfile> switch, which generates a file with many parameters, which could theoretically be post-processed into a format that VICE would understand. There is no other option? Anyone using VASM?

Links
* 64tass: http://tass64.sourceforge.net/
* KickAssembler: http://www.theweb.dk/KickAssembler/KickAssembler.pdf
* VASM: http://sun.hasenbraten.de/vasm/release/vasm.pdf
vbc
Posts: 80
Joined: 23 Apr 2020

Re: How to get the VICE compatible symbol file from VASM?

Post by vbc »

stenlik wrote:
I am using the VASM assembler with the VICE emulator. I have tried to find the answer to my problem on other forums (https://www.lemon64.com/forum/viewtopic ... 70&start=0) and to figure out that on my own without any succes so far...

I have found that other assemblers, e.g. 64tass has a nice feature when executed with switch --vice-labels. It generates file with labels and breakpoints that could be loaded by VICE and used in the monitor when started with the -moncommands switch. KickAssembler has a similar function (I have never tried it, but it is described in the manual).

Does anyone know if VASM can do it also? The only thing I found is the -L <listfile> switch, which generates a file with many parameters, which could theoretically be post-processed into a format that VICE would understand. There is no other option? Anyone using VASM?
To be more flexible, we implemented this feature in our linker vlink rather than the assembler. If you are already using vlink, you can simply add the option: -vicelabels <filename>

If you are creating the binary directly with vasm, you can do an additional pass, e.g.:

Code: Select all

vasm -Fvobj file.s -o file.o
vlink -b cbmprg file.o -o file.prg -viceleabels file.lab
stenlik
Posts: 8
Joined: 28 Nov 2021

Re: How to get the VICE compatible symbol file from VASM?

Post by stenlik »

Hi vbs
Quote:
To be more flexible, we implemented this feature in our linker vlink rather than the assembler. If you are already using vlink, you can simply add the option: -vicelabels <filename>
The vlink works great. I still need small advice - is there any way how to create the breakpoints (?based on some directive in the source file), which will be included in the VICE monitor file produced by -vicelabels, e.g. lines like those below, so the VICE emulator stops on those breakpoints?

Code: Select all

break $1020
break $1020
Thanks a lot
STeN
vbc
Posts: 80
Joined: 23 Apr 2020

Re: How to get the VICE compatible symbol file from VASM?

Post by vbc »

stenlik wrote:
Hi vbs
The vlink works great. I still need small advice - is there any way how to create the breakpoints (?based on some directive in the source file), which will be included in the VICE monitor file produced by -vicelabels, e.g. lines like those below, so the VICE emulator stops on those breakpoints?

Code: Select all

break $1020
break $1020
Thanks a lot
STeN
I am not sure if I correctly understand your question. Do you want to add additional vice commands into your assembly source and have them somehow passed through the label file created by vlink? If yes, I do not think this is not possible.
Post Reply