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....
 
2012-08-08 07:08
ruk

Registered: Jan 2012
Posts: 43
@TWW

On the top of my head, and I bet there exists a fancier way =)

      .const table = "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ !\"#$%&'()*+,-./0123456789:;<=>?"
      
      .function byteToString(val){   
           .return table.charAt(val).string()
      }
      
      .function wordToString(val){
            .return byteToString(<val) + byteToString(>val)
      }
      
      .const SomeString =  "ABCDEF" + wordToString($1234)
      
      .print SomeString
2012-08-08 08:01
Cruzer

Registered: Dec 2001
Posts: 1048
@Ruk: That would of course require a 256 chars long table to avoid index out of bound.
2012-08-08 09:44
ruk

Registered: Jan 2012
Posts: 43
@Cruzer

It was merely a proof of concept. But yes, it will break easily. AND:ing 'val' with $3F keeps you in range I suppose =)
2012-08-08 11:26
Slammer

Registered: Feb 2004
Posts: 416
TWW: Im working on a new setup for the manual. Clickable table of contents and clickable list of directives are part of it.

Overkill?, Perhaps so. But Word have been bugging me for some time now, and integrating pdf+html generation in the builder will make new releases easier in the long run.
2012-08-09 03:52
TWW

Registered: Jul 2009
Posts: 541
@ Ruk: Thanx for pointing me in the right direction. I can do hi and lobytes from $00 to $40 8-D.

I'm not sure how I would succeed with and'ing to rid the two MSBs though. Is there a way to build the complete tabel somehow instead of manually typing it?

@ Cruiser: Yeah, and how to fricking fill in the rest of the "special and inverted characters".

@ Slammer: Nice! Looking forward to it. It's a good manual.


So I then have a refined question;

Is there a way to go from a byte (00-ff) to the corresponding petscii character without using a lookup table within the script language (probably not but can't hurt to ask)?

ex:
.print char(0) = "@"
.print char(3) = "C"

etc.
2012-08-09 12:03
Cruzer

Registered: Dec 2001
Posts: 1048
@TWW: Yeah, that's what I was thinking from the start. :)
@Slammer: KickAss IS overkill, that's what makes it awesome :)
2012-09-30 07:05
Conrad

Registered: Nov 2006
Posts: 833
Found another possible bug(?)...

I'm using KickAss (version V3.25) on a linux system (SlackoPuppy)... via the commandline:
"java -jar /mnt/sda3/CBM/TOOLS/KickAssembler/KickAss.jar -maxaddr -1 -aom -binfile -o /mnt/sda3/OC_SERVER/CBM/test.crt %f"
("OC_SERVER" is a mounted directory to a shared network drive of my Windwos PC, where WinVice is installed.)

The source I compile should output a large crt (EasyFlash format) which is roughly 129K... but when compiling the output binary through this shared network drive, it outputs around 69K (i.e. loss of file data).

Compiling the binary locally and then copying that file across to the network drive works fine.

I don't know if this is a Linux-Windows issue or not. When mounting the network drive, I use "nounix" and "noserverino" as parameters.
2012-09-30 13:43
Slammer

Registered: Feb 2004
Posts: 416
>The source I compile should output a large crt (EasyFlash format) which is roughly 129K... but when compiling the output binary through this shared network drive, it outputs around 69K (i.e. loss of file data).

I assume you get no error messages. Since it outputs 69k it seams like you have set the maxAddr correctly.

1. Is the output cut when you compile it normally (no network drive, no binary)?
2. Is the output cut when you compile it as a binary?
3. Is the output cut when you compile it as a binary on the networkdrive?
(Also check if the code reallly should be 69k)

If 1 or 2 fails, i'll need some failing code to see whats wrong.


2012-10-01 00:55
Martin Piper

Registered: Nov 2007
Posts: 629
Network paths can operate slightly differently to local devices.
This problem can be caused by an unflushed fseek.
Before each fseek do a fflush. A flush before a fclose can also help.
2012-10-01 07:54
Conrad

Registered: Nov 2006
Posts: 833
@Slammer
Quote:
1. Is the output cut when you compile it normally (no network drive, no binary)?
2. Is the output cut when you compile it as a binary?
No, in both of these cases it outputs the full size fine. No errors etc.

Quote:
3. Is the output cut when you compile it as a binary on the networkdrive?
Yes, I'm executing KickAss from my laptop (linux OS), but the output path is via a network, where this problem occurs. The source code can be stored on either the network side or local side, but there is no difference. There's nothing wrong with my source code on its own.


@Martin: Yes I agree. I remember having this problem with network drives at where I work... having to using some flushing C functions as you mentioned. Maybe the java functions have the same issue? The JRE libraries on Linux might have issues too, but I don't know.
Previous - 1 | ... | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | ... | 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
csabanw
iceout/Avatar/HF
Andy/AEG
Smasher/F4CG
Laurent
Guests online: 302
Top Demos
1 Next Level  (9.8)
2 Mojo  (9.7)
3 Coma Light 13  (9.7)
4 Edge of Disgrace  (9.6)
5 No Bounds  (9.6)
6 Comaland 100%  (9.6)
7 Uncensored  (9.6)
8 The Ghost  (9.6)
9 Wonderland XIV  (9.6)
10 Bromance  (9.6)
Top onefile Demos
1 Party Elk 2  (9.7)
2 Cubic Dream  (9.6)
3 Copper Booze  (9.5)
4 Rainbow Connection  (9.5)
5 TRSAC, Gabber & Pebe..  (9.5)
6 Onscreen 5k  (9.5)
7 Dawnfall V1.1  (9.5)
8 Quadrants  (9.5)
9 Daah, Those Acid Pil..  (9.5)
10 Birth of a Flower  (9.5)
Top Groups
1 Booze Design  (9.3)
2 Nostalgia  (9.3)
3 Oxyron  (9.3)
4 Censor Design  (9.3)
5 Crest  (9.3)
Top Swappers
1 Derbyshire Ram  (10)
2 Jerry  (9.8)
3 Violator  (9.8)
4 Acidchild  (9.7)
5 Starlight  (9.6)

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