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: 449
Kick Assembler Thread 2

The previous thread took a little long to load, so this is a new fresh one..
 
... 647 posts hidden. Click here to view all posts....
 
2009-09-04 09:50
Frantic

Registered: Mar 2003
Posts: 1661
Just as a side-note, I created a section on Codebase for syntax highlighting files. There is only one file uploaded at the moment (the one just mentioned here), but please add more files, for other editors/assemblers/platforms.

http://codebase64.org/doku.php?id=base:emulation

In order to upload files on codebase, press "edit page", click on the icon that looks like a framed painting, select "sourcecode" in the popup window that appears, select your file (by clicking browse), click on the "upload" button, and when the file is uploaded, click on its name in the list to insert a link to the file on the wiki page. Note that the ".txt" extension is not allowed by the wiki system, so you have to make a ".zip" of it or so. Huh..

//FTC
2009-09-04 10:08
Conjuror

Registered: Aug 2004
Posts: 168
I use Eclipse for all my development including c64 stuff.

I use this plugin: de.fh_zwickau.asmplugin_1.0.1. for asm highlighting. Its not perfect buy its easy to modify the config file. Comments need the semi-colon to make them highlight.

The page for this plugin is down and has been for a while for some reason. If anyone wants it let me know.

Steve
2009-09-04 10:22
pmc
Account closed

Registered: Sep 2009
Posts: 5
@ Frantic - cool, until I read this I didn't realise my little UltraEdit wordfile for KickAssembler was already famous enough to be on Codebase64 ;-D

Nice one :-)
2009-09-04 10:49
Slammer

Registered: Feb 2004
Posts: 449
Conjuror: Im interested. Why don't you upload it to codebase?
2009-09-04 11:42
Conjuror

Registered: Aug 2004
Posts: 168
Done http://codebase64.org/doku.php?id=base:emulation

I added some 6502 instructions that I noticed were missing as I was working with it. Probably a lot more missing. See asm_instruction_set.xml

Enjoy!
2009-09-04 11:53
MagerValp

Registered: Dec 2001
Posts: 1083
TextMate bundle added to codebase.
2009-09-04 17:24
LOGAN
Account closed

Registered: Aug 2003
Posts: 71
I hope The assembler list will include more than just the modded Acme. And hopefully more symtax highlighting for other editors (preferably free and open source editors like, erm, notepad++ :D
2009-09-08 12:58
TWW

Registered: Jul 2009
Posts: 557
Small question regarding syntax;

I do this:

:irqEnd #$32 ; #<irq1 ; #>irq1

.pseudocommand irqEnd d12 ; irqlo ; irqhi {
lda d12
sta $d012
lda irqlo
sta $fffe
lda irqhi
sta $ffff
}

This works fine.

Question is, how would i do a:

:irqEnd #$32 ; irq1

.pseudocommand irqEnd d12 ; irq {
lda d12
sta $d012
lda #<irq
sta $fffe
lda #>irq
sta $ffff
}

So I don't need to pass both the lo- & the hi-byte to the Pseudo?

In other words, How can I splitt up the 'irq' parameter (16 bits adress pointer) into hi & lo-byte pointers wich I can pass to $ffff:$fffe inside a Pseudo?
2009-09-08 13:30
Slammer

Registered: Feb 2004
Posts: 449
Look in the manual under pseudo commands. Here is showed how to define 16 bit pseudo commands. There is a move command which is defined like this:
.function _16bit_nextArgument(arg) { 
	.if (arg.getType()==AT_IMMEDIATE) .return CmdArgument(arg.getType(),>arg.getValue()) 
	.return CmdArgument(arg.getType(),arg.getValue()+1)
}

.pseudocommand mov16 src;tar { 
	lda src
	sta tar 
	lda _16bit_nextArgument(src) 
	sta _16bit_nextArgument(tar)
} 

With this you can do stuff like:
:mov16 #irq ; $fffe
:mov16 irqTable,x ; $fffe
etc.

You can now define you pseudocommand like this:
pseudocommand irqEnd d12 ; irq {
      lda d12
      sta $d012
      :mov16 irq ; $fffe
}

and use it like this:
:irqEnd #$10 ; #irq1  
or 
:irqEnd d012Table,y ; irqTable,x  
2009-09-08 13:54
Slammer

Registered: Feb 2004
Posts: 449
Btw. forgot to tell that if you don't like to code that much then use a normal macro:

.macro endIrq(d012Value, irq) {
lda #d012Value
sta $d012
lda #<irq
sta $fffe
lda #>irq
sta $ffff
}

Pseudo commands gives more flexibility (you can use different addressing modes on the same pseudo command), while macros might be easier. However, once you get the idea, pseudocommands are really effective.
Previous - 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | ... | 66 - 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
Didi/Laxity
Sychamis
Andy/AEG
Hairdog/BOOM!^Dream
Fred/Channel 4
Low Spirit
HCL/Booze Design
Guests online: 438
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Codeboys & Endians  (9.7)
4 Mojo  (9.6)
5 Coma Light 13  (9.6)
6 Edge of Disgrace  (9.6)
7 Signal Carnival  (9.6)
8 Wonderland XIV  (9.5)
9 Uncensored  (9.5)
10 Comaland 100%  (9.5)
Top onefile Demos
1 Nine  (9.7)
2 Layers  (9.6)
3 Cubic Dream  (9.6)
4 Party Elk 2  (9.6)
5 Copper Booze  (9.5)
6 Scan and Spin  (9.5)
7 Onscreen 5k  (9.5)
8 Grey  (9.5)
9 Dawnfall V1.1  (9.5)
10 Rainbow Connection  (9.5)
Top Groups
1 Artline Designs  (9.3)
2 Booze Design  (9.3)
3 Performers  (9.3)
4 Oxyron  (9.3)
5 Censor Design  (9.3)
Top Coders
1 Axis  (9.8)
2 Sailor  (9.8)
3 Lft  (9.8)
4 Graham  (9.8)
5 Crossbow  (9.8)

Home - Disclaimer
Copyright © No Name 2001-2025
Page generated in: 0.443 sec.