| |
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.. |
|
... 592 posts hidden. Click here to view all posts.... |
| |
Dr.j
Registered: Feb 2003 Posts: 277 |
Ok Guyz..10x for the help |
| |
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 |
| |
Slammer
Registered: Feb 2004 Posts: 416 |
I'll check it in the weekend.
(I guess the missing .s in the sourcecode is a typo) |
| |
Pantaloon
Registered: Aug 2003 Posts: 124 |
yes that is a typo :) |
| |
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
|
| |
Pantaloon
Registered: Aug 2003 Posts: 124 |
thanks alot slammer!!! :) |
| |
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?
|
| |
andym00
Registered: Jun 2009 Posts: 45 |
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 :)
|
| |
Slammer
Registered: Feb 2004 Posts: 416 |
Shadow: I don't know Atari coding so you will have to be a little more specific of what solution you had in mind.
Are you looking for something like this:
// Bank 2
.pc=$2000
.pseudopc $1000
{
lda foo
sta bar
..
.align $400
lda foo
sta bar
..
}
Or perhaps some kind of macro that makes it easier to set up the blocks? |
| |
Slammer
Registered: Feb 2004 Posts: 416 |
Andym: I guess making support for files larger than 64k is not that big a problem. But since I'm not doing cartridge development i'll need someone to test it and see that the concept i really useful (eg. is this a good way to do it and what else would you need to do cartridge development).
|
Previous - 1 | ... | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | ... | 61 - Next |