Date (YYYY, YYYYmm, YYYYmmDD), #hashtag, fragment, word, or phrase:     

This is an image from a gallery of photos and art. Sorry.
Friday, February 17th, 2012
Use the following link to share or bookmark this specific image ⇨  ⚓Permlink

More images are available for Friday, February 17th, 2012

CPU Board Design

Ah, memories. January 1985! This is a photo of a design I did for a 6809 based CPU board for an arcade machine. It was put into production as drawn here.

The design incorporates battery backed up ram, volatile ram, rom, watchdog "kick" timer to restart the system if it lost its mind, powerfail and static sensor (people were always trying to confuse these machines) real time clock, stereo sound generation, stereo amplifiers, serial port, and parallel I/O for controls and graphics board connections. It also has an SS-30 compatible memory-mapped card bus.

The graphics board was a 16 color, semi-vector design; you wrote 8-bit X and Y positions to it, and an 8-bit code that specified the color in one nybble, and optionally increment / decrement for the X and Y position after writing. This architecture allows you to implement Bresenham's algorithms for line and circle drawing with the hardware doing much of the work; it also allows very easy pseudo-sprites, you just code up a stream of bytes, write an XY position, then code each byte with the appropriate XY modification to put the next data for the sprite in whatever place you wanted. If you went so far as to include an outer edge on the sprite code that was the backdrop color, and then made certain that you moved them only one pixel at a time, they'd even erase behind themselves, removing any need for keeping track of sprite state. Writing a complete sprite was a matter of simply sending X, Y and then one byte per pixel to the interface without further specific positioning data; the XY increment/decrement on each pixel ensured that the drawing continued in the right place. The bottom line was you could write the pixels in a sprite or draw a line or circle as fast as you could write sequential bytes.

The interface, then, consisted of two bytes driven by a 6522 VIA. One byte for X, Y, and pixel data, and one byte for control to set what the other byte meant at the moment, plus some arbitrary commands such as erase display.

Eventually, I wrote a Windows based emulator for everything you see here, plus the graphics board. Still works great. Runs 6809 Flex for the operating system, has assemblers, c compilers, forth, pascal, you name it. Most important to me, and the reason why I wrote it in the first place, is that it also runs all those old arcade games I designed. 😊

Back in the day, I drew everything by hand on lightly gridded paper, generally in one pass, because it was just too annoying to be sloppy and have to do it over. Me, a drafting table, a mechanical pencil, an eraser shield, an eraser and some basic green plastic templates — which I still have. I'm a packrat, I admit it.

#florida #6809 #design #hardware

Width: 3974
Height: 2996

No EXIF Data

Image Collections:

1:1250 Ships - Amiga - Animations - Aquarium - Arcade - Art - Astro - Audio - Aurora - B&W - Ben - Cars - Cathouses - Cats - Clouds - Comics - Comets - Crepuscular - Dollhouses - Deb - Deer - Designs - DTank - Eclipses - Family - Fireworks - Florida - Fog - Food - Friends - Gear - Ham Radio - Horses - Humor - Infrared - IROC - iToolBox - James Blish - Judy - Library - Meezers - Milford - Minerals - Models - Montana - Moon - Morphing - Motorcycles - Music - OSX - Pareidolia - Pickles - Pinups - Pizza - Portraits - Radios - Rainbows - Recipes - ReFlex - Restorations - Science Fiction - SdrDx - Shortwave - Spaghetti - Stained Glass - Storms - Sunbeams - Sunrises - Sunsets - Superstition - 跆拳道 - Tee Shirts - Trains - Uc&F - Virginia Kidd - Watches - Windows - WinImages

Image and commentary Copyright ©2012 fyngyrz
Gallery software Copyright ©2023...2024 fyngyrz