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


Forums > C64 Coding > Kickass symbols export
2020-12-26 20:24
Fresh

Registered: Jan 2005
Posts: 91
Kickass symbols export

Hi all,
I'm having some issues recompiling old stuff with kickass 5.16: it looks like the command line option "-symbolfile" doesn't always export data labels.
For example, take this code:
.pc=$0800
code:
	lda data1
	lda data2
	lda data3
	rts
	
data1:
.for(var i=0;i<1;i++) .byte $00

data2:
.if (1==1) .byte $00
	
data3:
.byte $00

I'd expect 4 labels in sym file, but I only get these:
.label code=$800
.label data3=$80c

Am I missing something or is it a bug?
2020-12-27 13:32
Walt

Registered: May 2004
Posts: 30
I get the same result (KA 5.13).

If I insert a .byte 0 before the .for and .if statement it works as expected (I get all 3 data labels in symbol file).

My guess is that the preprocessor skips the data labels with .for and .if as they are undefined at first loop and by forcing explicit data values before the .if and .for they are included.

I would say it is an error...
2020-12-27 22:43
Slammer

Registered: Feb 2004
Posts: 410
Thanks for noticing. It is corrected now and will be in version 5.17. You will then get the defined labels. If you define labels inside your if, you will also get these if the condition is evaluated to true. Labels defined inside the .for { .. } can't currently be reached. It will be implemented if people have a need for it, but it will require a new and rather wierd label array definition directive.

Walt: The explanation is not that sophisticated. Instead of just inserting integers in the scope table, special values are inserted for labels before '.if' and '.for' directives since they should also give access to the labels inside these directives. Exports where simply not implemented for these values.

If you want a workaround that doesn't damage the code (.byte 0 inserts a value) use '.eval true' instead
2020-12-27 23:33
Walt

Registered: May 2004
Posts: 30
That's a quick reply :)

Building an assembler is a huge task, keeping it bug-free even more so - Thank you for a great tool :)
2020-12-28 15:12
Peacemaker

Registered: Sep 2004
Posts: 199
maybe a good moment to thanks slammer for kickass. keep of the good work. i love kickass =)
2020-12-28 20:07
Krill

Registered: Apr 2002
Posts: 1743
Tower Power 92% >= Kickass >>>> Tower Power 100%. =)
2020-12-30 00:20
Fresh

Registered: Jan 2005
Posts: 91
Thank you very much Slammer!
I agree with Peacemaker: you’ve done a great job, kickass makes easier lot of things.
Keep it up!!
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
HCL/Booze Design
Erol
Black Beard/Abyss, A..
MWR/Visdom
Six/G★P
Nightlord/Glance
Devia/Ancients
Murphy/Exceed
Brittle/Demozoo
Impetigo/Crescent
TheRyk/MYD
JCH/Vibrants
Dano/Padua
Jak T Rip/DMAgic
Guests online: 85
Top Demos
1 Christmas Megademo  (9.7)
2 Uncensored  (9.6)
3 Edge of Disgrace  (9.6)
4 Unboxed  (9.6)
5 Coma Light 13  (9.6)
6 Memento Mori  (9.6)
7 Lunatico  (9.6)
8 Comaland 100%  (9.6)
9 The Shores of Reflec..  (9.5)
10 Protogeo 100%  (9.5)
Top onefile Demos
1 Copper Booze  (9.8)
2 To Norah  (9.8)
3 Lovecats  (9.6)
4 Elite Code Mechanics  (9.6)
5 The Sprite Demo  (9.6)
6 Square Booze  (9.5)
7 Daah, Those Acid Pil..  (9.5)
8 Dawnfall V1.1  (9.5)
9 Quadrants  (9.5)
10 Hyperborea  (9.5)
Top Groups
1 Booze Design  (9.4)
2 Censor Design  (9.4)
3 Fossil  (9.4)
4 Oxyron  (9.3)
5 PriorArt  (9.3)
Top Cover Designers
1 Duce  (9.8)
2 Electric  (9.8)
3 Junkie  (9.7)
4 The Elegance  (9.4)
5 Mermaid  (9.3)

Home - Disclaimer
Copyright © No Name 2001-2021
Page generated in: 0.04 sec.