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 > Kick Assembler Thread 2
2009-07-21 17:20
Slammer

Registered: Feb 2004
Posts: 416
Kick Assembler Thread 2

The previous thread took a little long to load, so this is a new fresh one..
 
... 590 posts hidden. Click here to view all posts....
 
2011-11-03 10:20
Dr.j

Registered: Feb 2003
Posts: 276
i want to do something like that.. but i guess its not possible...

.macro mymacro(location) {
.define mymacro {
 .var mylist=List()
 .for (i=0;i<256;i++)
 mylist.add (value of location)
 mylist.add ($06) - lets say add to all elements..
 //;dump to memory

 .fill mylist.size(),mylist.get(i)


 }

}
:mymacro($0400)

2011-11-03 15:21
Cruzer

Registered: Dec 2001
Posts: 1048
Nope, not possible. But since you're in control of what gets into $0400-$0500 in the first place, you should wait with the dumping to memory and keep the data elsewhere so it can be used in the macro. And when all calculations are done, it's time for dumping.
2011-11-03 15:37
Dr.j

Registered: Feb 2003
Posts: 276
Ok Guyz..10x for the help
2011-11-03 17:38
Pantaloon

Registered: Aug 2003
Posts: 124

Slammer, the bug with .importonce and .struct is really annoying for me :) could you take a look at it and perhaps fix it :) please :)

It's very easy to reproduce:

File1

.importonce
.struct TRACKSECTOR { track, sector }

fILE2

.import source "File1"
.var tracksector_hashtable = Hashtable()
.eval tracksector_hashtable.put("STARTUP",TRACKSECTOR(1,0))

parsing
flex pass 1
.import source "File1.s"
.var tracksector_hashtable = Hashtable()
.eval tracksector_hashtable.put("STARTUP",TRACKSECTOR(1,0))
^

Error: Unknown function : TRACKSECTOR

/Panta
2011-11-03 19:47
Slammer

Registered: Feb 2004
Posts: 416
I'll check it in the weekend.

(I guess the missing .s in the sourcecode is a typo)
2011-11-03 19:51
Pantaloon

Registered: Aug 2003
Posts: 124
yes that is a typo :)
2011-11-05 15:17
Slammer

Registered: Feb 2004
Posts: 416
Ok, bug is corrected. There will be an official released version later, but until then you can use this:
www.theweb.dk/tmp/KickAss.jar

2011-11-05 22:55
Pantaloon

Registered: Aug 2003
Posts: 124
thanks alot slammer!!! :)
2011-12-01 11:48
Shadow
Account closed

Registered: Apr 2002
Posts: 355
I apologize in advance for discussing non-C64 related stuff on CSDB, but since this is the defacto thread for everything KickAssembler related, I'll take my chances here.
I'm using kickass for my Atari 2600 coding, and I have some minor issues when doing bankswitching stuff.
For example, say I have two 4k banks, each should be assembled with $1000-$1fff addressing. Then I can do like this:
// Bank 1
.pc=$1000 

lda foo
sta bar
..


.pc=$1400 "Some routine"
lda this
sta that
...

// Bank 2
.pc=$2000 

.pseudopc $1000   
{
	lda foo
	sta bar
	..
}




And it works fine. However, say I want to place a routine at $1400 in the second bank. Then I have to break the pseudpc block, set the pc to $2400, and then start a new pseudopc block, like this:

// Bank 2
.pc=$2000 
.pseudopc $1000   
{
	lda foo
	sta bar
	..
}

.pc=$2400 
.pseudopc $1400   
{
	lda foo
	sta bar
	..
}


While it works, it gets a bit cumbersome to keep track of all the pc's and pseudopc blocks when you get more than a few.
Anyone have a good idea on how to work around this?
2011-12-02 09:23
andym00

Registered: Jun 2009
Posts: 44
In a really tenuous connection to Shadow's question above, but I figure now's the time to ask :) Is there ever likely to be support of the .pc directive for addresses >64K ?

It would make life assembling cartridge based stuff that's destined for >64K cartridge images a lot easier without a link stage to bolt all the banks together afterwards, and that's the simple case where there isn't code spanning these other banks and you want to share symbols etc..

I don't imagine it's a small change though, but had too ask :)
Previous - 1 | ... | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | ... | 60 - 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
iAN CooG/HVSC
Grue/Extend
Marq/Fit^Lieves!Tuor..
Mike
jmin
celticdesign/G★P/M..
Acidchild/Padua
kbs/Pht/Lxt
hedning/G★P
Guests online: 136
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 Memento Mori  (9.6)
10 Bromance  (9.5)
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 Wafer Demo  (9.5)
8 Dawnfall V1.1  (9.5)
9 Quadrants  (9.5)
10 Daah, Those Acid Pil..  (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 Original Suppliers
1 Black Beard  (9.5)
2 Derbyshire Ram  (9.5)
3 hedning  (9.2)
4 Baracuda  (9.1)
5 Irata  (8.5)

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