You are here

Misc Commodore Projects

Greyscale renderer for JPX

renderer screenshot

Above is a shot of my renderer displaying 'pup.jpg'

- it uses standard hires bitmap mode and a floyd-steinburg error diffusion dither. For each 8x8 area of pixels, it finds the minimum and maximum grey levels of the image, and picks the two nearest VIC greys for that block and dithers using those levels. This means that only the nearest appropriate grey levels are used, but for some parts of the image it can mean some blocking effects (for example, around the pups ear on the left).

Adrian Gonzales original renderer used standard bitmap mode also but used the same 2 grey levels for the entire screen. It also used dark grey & light grey which results in a loss of contrast compared with using white & black. This is the renderer I first saw and thought I could improve on, as above.

Adrian has since made two more renderers:

  • MCM-lace greyscale renderer which uses 2 multicolour mode bitmaps interlaced in alternate frames, in a mode sometimes called 'drazlace'. By mixing different grey levels with each alternate frame you get an in-between grey level, but at the expense of noticable flicker. (Note, you can't see this flicker in the screenshot becasue it is a merged image of both frames)
  • IFLI full-colour renderer using two interlaced FLI mode screens. I'm not completely sure how he did the colour selection for this, but it's pretty damn good!. Again, this mode suffers from flicker (see comment above)

These two modes use lots of memory (18 and 32k respectively) and require tricks to maintain the display. My renderer uses standard hires bitmap mode with no code required to maintain the display once it is rendered.

C64 'laptop'

A combination of a c64c keyboard/motherboard, 1581 disk drive internals and sealed 12v batteries into a compact, portable, battery powered c64 system. Built into the keyboard is a 'button joystick' - similar to the mouse pointers found on some modern laptops. The screen is presently an external 5" b/w dc tv which can sit on top of the unit. The system uses a high efficiency power supply to extend battery life, and can operate either on internal batteries, 12vdc (eg. in a car) or mains power (via 12vdc adapter).

After mucking around with dozens of ideas for a case, I've finally found a case that, with little modification, fits all the components perfectly - a 64c case! It occured to me that I could use the case from the c64c, but just add about a 2cm spacer between the top & botton halves. This will leave enough space below the keyboard for the batteries, and above the main PCB for a 1581 drive mechanism & controller. Perfect!
 

Lightgun for the c64

Sometime in the past I managed to come across an atari lightgun, and this device works perfectly with a c64/128 using the lightpen interface on joystick port 1. I wrote an article about it which appeared in the now defunct 'Commodore Fever' paper magazine, and you can read it here.

Robotics with the c64

Using a c64 to control robots and other devices.

(these pages still in development)

Tags: 
Plus/4 version of d64it Sun, 20/05/2012 - 12:44