Archive for the ‘ Commodore 64 ’ Category

MMC64 pros and cons

MMC64 PCBMMC64. Should you buy it? Here I have listed pros and cons of this cartridge after using it for longer than a year:

Pros

  • Inexpensive storage
    SD cards are really cheap nowadays and they are easy to find. A 1gb sandisk that costs about 15$ holds all the HVSC archive and all my games and still have 500mb free space. 
  • Really fast loading times
    Faster than 1581, 64hdd and ide64. Actually the only thing it cannot beat must be a cartridge =)
  • Cheap, cheap, cheap
    Considering the other options, this is the most cost effective modern storage solution for c64. Shipping is also cheap because of its:
  • Small size
    It fits in a standart C= cartridge case. It just needs to be slightly modified to make an sd card slot. It is pretty light so you dont have to put something underneath the cartridge for the fear of breaking the edge connector.

Read more

Popularity: 55% [?]

Ascraeus font editor V1.2

Here is a C64 font editor I wrote in JAVA. It supports 1×1, 1×2 and 2×2 hires fonts.

Ascraeus font editor V1.2

Download it here: Ascraeus Font Editor V1.2

 

Popularity: 22% [?]

A better assembler, Kick Assembler

ACME was the longstanding winner in crossassembling tools for c64, until now that is. Kick Assembler is a crossassembler with a truly original idea. Forget about switching to other tools and programming languages to precalculate your vectors, unrolling your loops, converting your data etc. Kick Assembler is a unique combination of a very good macro assembler and a scripting language.

I feel obliged to spit out an example of this powerful stuff. And when you see the power of scripting combined with assembler on a single source file, I believe you will never look back. This code below is the mandelbrot example that is in the zip file. 
It calculates the mandelbrot set and fills character memory accordingly

.pc = $0400
.function toRe(i) .return -2+2.7*[i-floor(i/40)*40]/39
.function toIm(i) .return -1.6+3.2*floor(i/40)/24
.function mandelbroot(re,im) {
.var zr = 0
.var zi = 0
.var iter=0
.for(;[zr*zr+zi*zi]<4 && iter<20;iter++) {
.var newZr = zr*zr-zi*zi + re
.var newZi = 2*zr*zi + im
.eval zr = newZr
.eval zi = newZi
}
.var colors = List().add($20,$0f,$20,$08)
.return colors.get(iter&3)
}
.fill 25*40,mandelbroot(toRe(i),toIm(i)) 

Edit: Kick Assembler now support user defines pseudo commands (Yeeeeaay! 16 bit operations with one opcode!) and DTV specific opcodes.

Impressive isn't it? Here are the links if I convinced you: 

Popularity: 35% [?]

Commodore 1541 Floppy Rom Commented Disassembly

This should come in handy for programming the 1541 drive. It is fully commented and jmp's are crosslinked. Nice job by Frank Kontros.

Popularity: 30% [?]

Cross Development Tools for C64

I know some people still like the feeling of the original C64 keyboard when they code assembly but memory problems and frequent crashes while directly accessing resources on a real C= give coders who dont own a ram expansion or a cartridge one hell of a headache. Cross development on a PC is a nice alternative. Here is my Cross development toolbox:

Relaunch64 IDE
This IDE is strictly for C64 assembly crossdevelopment and has very nice features. It has syntax highlighting and can easily be configured to use a number of CrossAssemblers, Crunchers and Emulators. The editor has some weird bugs, but if you dont want to configure giant editors like EMACS to do what you want, then this is what you want.

  • The original website offers it in german only:
    Relaunch64 (German) @ Koolpeople Software
  • Popelganda Diskmag offers an english translation by Zeitgeist/Civitas
    Relaunch64 (German/English) @ Popelganda
  • I also keep a local mirror of the english translation
    Relaunch64 (English) @ SymbolEngine Read more
  • Popularity: 27% [?]