Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
 Welcome to our latest new user hoist ! (Registered 2024-10-04) 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..
 
... 592 posts hidden. Click here to view all posts....
 
2009-12-09 11:12
Garvin

Registered: Sep 2009
Posts: 5
Yeah, something in the full source is probably causing the parser to freak out (it's quite messy, I think I started coding it in a monitor and later reassembled it, judging for certain label names).

I'll try an get you a pm as soon as I get home =)
2009-12-10 21:47
Slammer

Registered: Feb 2004
Posts: 416
From the start of the KickAssembler project people have asked for executable files so you don't have to install Java. Well now we have it, atleast for Windows, with possibility for Linux support, if there is a demand for it. The executable version is up to 3 times faster than the java version. There will ofcause still be distributed a jar-file so all java platforms are supported.

Check out version 3.12 at http://www.theweb.dk/KickAssembler/Main.php
2009-12-11 21:40
tlr

Registered: Sep 2003
Posts: 1763
It was a while since I tried it, but now I see that you have incorporated mostly everything I missed before, great work!

Linux support would be nice. I suggest you split the binary versions to separate downloads though.
The size of the archive grew from 1 Mbyte to 25 Mbyte, and I think you wouldn't want another 24 Mbytes extra download for each supported platform for all users.

Question:
Is there a way to differentiate between the memory address and the pseudo address for a given label?
(compare to LMA vs. VMA in ELF binaries)
This can of course be done with a fairly simple calculation function but it would be a neat feature.

example:
.pc = $1000
    lda #5
    sta somewhere.mem+1
    :CopyPseudoCodeToTarget()
    jsr somewhere   // pseudo/VMA which is how it works already.
// Acc = 5
    rts
    
.pseudopc $2000 {
somewhere:
    lda #0
    rts
}

2009-12-12 16:48
Slammer

Registered: Feb 2004
Posts: 416
tlr: Right now you can't, but i'll put it on the todo list.
2009-12-12 20:42
LOGAN
Account closed

Registered: Aug 2003
Posts: 71
The only thing I still would like to see is a way to feed it ACME or another assembler based source codes that could be converted on the fly to KickAssembler as a kind of pre-processor pass. This way people could use their old sources without the need to rewrite it.

For example someone using Acme supplies a short routine that's used by someone using KickAss. The source still can be updated by the acme coder and be used seamless in kickassembler.

Anyway would be cool as some translation table as ini files.
(Or able to be implemented as pseudo ops, though remarks using ; would through kickass off. Can't kickass not check somehow if its used as comment or seperator?


off topic:
I almost feel the different assemblers could use their own file extension. For example .tas for turbo assembler, kas for kick assembler, .acm for acme, etc. Is there some standard?

Anyway, keep up the good work, this is my fav assembler. (Hope you have added additional image formats support)
2010-03-12 08:00
Mace

Registered: May 2002
Posts: 1799
The other day I made some 64TASS code to create sprites for a certain routine I'm working on.
The result was 52 lines of code.

I reworked it in Kick Assembler and it became 5 lines!

It could have been even shorter if there was some possibility to do a pattern fill:

.fill [no. of repeats],[comma separated byte pattern]

(There's a feature request hidden inside this post ;-) )
2010-03-12 10:35
Nitro
Account closed

Registered: Aug 2008
Posts: 13
I've just tried the executable version hoping to get the speedup, but it worked the other way: it works very slow when there are many files included. Also file handling is different, it looks for files to include in the kickass directory, not the source directory.
2010-03-12 10:50
Mace

Registered: May 2002
Posts: 1799
I just tried:

.pc = $2000
  .for(var x=0; x<64; x++) {
    .print x
  }
Result:
Made no progress and cant solve the program.. You should have gotten an error. Contact the author!

However, the parsing went okay when I tried:
.pc = $2000
  lda #$01
  sta $d020
  rts
What's wrong?

[edit]
I tried V2.25 and that one worked okay.
So the problem is in V3.12 (both Java and executable).
2010-03-13 10:42
Slammer

Registered: Feb 2004
Posts: 416
Mace:
If you want to fill patterns you can do it like this:
.fill $100, List().add($fe,$82,$82,$82,$82,$82,$fe,$00).get(mod(i,8)) 
There was a minor error in the progress detection in the for loop, if you have a program that assembles in one pass with a forloop the error will occur. I have fixed the problem and there will be a v3.13 out later this weekend.

Nitro:
I haven't noticed that about the speed (but I tend to use the java version). I will check out file problem - the java-compiler has some differences in this area.
2010-03-13 10:46
Mace

Registered: May 2002
Posts: 1799
Quote:
.fill $100, List().add($fe,$82,$82,$82,$82,$82,$fe,$00).get(mod(i,8))
This is so cool :-)
I will see how to modify this into what I need.
Thanks!
Previous - 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | ... | 61 - 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
Guests online: 58
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Coma Light 13  (9.7)
4 Edge of Disgrace  (9.6)
5 Mojo  (9.6)
6 Uncensored  (9.6)
7 Wonderland XIV  (9.6)
8 Comaland 100%  (9.6)
9 No Bounds  (9.6)
10 Unboxed  (9.5)
Top onefile Demos
1 Layers  (9.6)
2 Party Elk 2  (9.6)
3 Cubic Dream  (9.6)
4 Copper Booze  (9.6)
5 Rainbow Connection  (9.5)
6 It's More Fun to Com..  (9.5)
7 Morph  (9.5)
8 Dawnfall V1.1  (9.5)
9 Onscreen 5k  (9.5)
10 Daah, Those Acid Pil..  (9.5)
Top Groups
1 Booze Design  (9.3)
2 Oxyron  (9.3)
3 Performers  (9.3)
4 Nostalgia  (9.3)
5 Censor Design  (9.3)
Top Graphicians
1 Mirage  (9.7)
2 Archmage  (9.7)
3 Facet  (9.6)
4 Carrion  (9.6)
5 Pal  (9.6)

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