HARDWARE HACKING VILLAGE - The Cactus: 6502 Homebrew Computer

Video thumbnail (Frame 0) Video thumbnail (Frame 1143) Video thumbnail (Frame 3860) Video thumbnail (Frame 5070) Video thumbnail (Frame 6075) Video thumbnail (Frame 7064) Video thumbnail (Frame 8866) Video thumbnail (Frame 10303) Video thumbnail (Frame 11318) Video thumbnail (Frame 12333) Video thumbnail (Frame 13659) Video thumbnail (Frame 14990) Video thumbnail (Frame 16214) Video thumbnail (Frame 17243) Video thumbnail (Frame 18713) Video thumbnail (Frame 19943) Video thumbnail (Frame 21411) Video thumbnail (Frame 22658) Video thumbnail (Frame 23961) Video thumbnail (Frame 25457) Video thumbnail (Frame 26497) Video thumbnail (Frame 27554) Video thumbnail (Frame 28616) Video thumbnail (Frame 29725) Video thumbnail (Frame 31650) Video thumbnail (Frame 32998) Video thumbnail (Frame 34410) Video thumbnail (Frame 36500) Video thumbnail (Frame 37653) Video thumbnail (Frame 40161) Video thumbnail (Frame 45560) Video thumbnail (Frame 46939) Video thumbnail (Frame 51369)
Video in TIB AV-Portal: HARDWARE HACKING VILLAGE - The Cactus: 6502 Homebrew Computer

Formal Metadata

HARDWARE HACKING VILLAGE - The Cactus: 6502 Homebrew Computer
Alternative Title
The Cactus 6502 Blinkenlights 40 Years Late
Title of Series
CC Attribution 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Release Date

Content Metadata

Subject Area
Context awareness Service (economics) Context awareness Building Demo (music) Buckling Building Demo (music) Virtual machine Computer Bit Mereology Computer Computer Computer programming Process (computing) Commodore VIC-20 Process (computing) Commodore VIC-20 God
Revision control Microprocessor Intel Thermal radiation Multiplication sign Microprocessor Damping Cartesian coordinate system Raw image format Computer Coprocessor
Microprocessor Arithmetic logic unit Logic Multiplication sign Synchronization Maize Series (mathematics) Mereology Family Computer Exception handling
Shift register Logic Cellular automaton Series (mathematics) Whiteboard Computer Software development kit
Microprocessor Multiplication sign Moving average Sound effect Menu (computing) Bit Computer Mereology Software development kit Product (business)
Structural load Multiplication sign Direction (geometry) Virtual machine 1 (number) Maxima and minima Computer Mereology Coprocessor Semiconductor memory Term (mathematics) Personal digital assistant Address space Software development kit
Revision control Pairwise comparison Bootstrap aggregating Digitizing 1 (number) Bit
Term (mathematics) Multiplication sign Virtual machine Mereology Address space Bookmark (World Wide Web) Power (physics)
Mainframe computer View (database) Content (media) Set (mathematics) Bit Content (media) Computer Computer programming Single-precision floating-point format Arithmetic mean Software Read-only memory Semiconductor memory Single-precision floating-point format Software Process (computing) Endliche Modelltheorie Mikrocomputer Address space Address space
Radical (chemistry) Punched tape Standard deviation Key (cryptography) Multiplication sign Keyboard shortcut Touch typing Data storage device Arrow of time Position operator
Touchscreen Personal digital assistant Computer configuration Keyboard shortcut Tape drive Data storage device Moving average Right angle Endliche Modelltheorie Computer Graph coloring Computer
Building Keyboard shortcut Floppy disk Virtual machine Data storage device Computer Data storage device Library catalog Regular graph Software Read-only memory Compact Cassette Software Electronic visual display Mikrocomputer Spacetime Software development kit
Radical (chemistry) Serial port Dependent and independent variables Link (knot theory) Serial communication Right angle
Simulation Hexagon Befehlsprozessor Buffer solution Virtual machine Data storage device Moving average output Electronic visual display Function (mathematics) Opcode
Simulation Existence Virtual machine 1 (number) Raw image format Computer Computer programming Befehlsprozessor Hexagon Software Hooking Computer hardware Electronic visual display Website output Commodore VIC-20
Point (geometry) Befehlsprozessor Serial port Multiplication sign Buffer solution Virtual machine Computer
Revision control Virtual machine
Personal identification number Socket-Schnittstelle Decision tree learning Multiplication sign Bus (computing) Moving average Plastikkarte Computer Proper map Local ring
Existence Synchronization Computer
Revision control Personal identification number Buffer solution Core dump Bus (computing) Moving average Core dump Address space Product (business) Identical particles Indian Remote Sensing
Logic Virtual machine Special unitary group Microcontroller Data conversion Series (mathematics) Emulation Value-added network
Point (geometry) Trail Context awareness Game controller Multiplication sign Virtual machine 1 (number) Plastikkarte Bit Thermal expansion Distance Computer Process (computing) Computer configuration Static random-access memory Buffer solution Commodore VIC-20 Game theory Whiteboard Address space Row (database)
Dataflow Befehlsprozessor Buffer solution Virtual machine Bus (computing) Bit Flip-flop (electronics) Line (geometry) Address space Row (database)
Revision control Type theory Execution unit Process (computing) Key (cryptography) Moment (mathematics) Virtual machine Computer Computer
Game controller Multiplication sign Cellular automaton Virtual machine 1 (number) Plastikkarte Maxima and minima Function (mathematics) Raw image format Medical imaging Process (computing) Population density Bit rate Software Single-precision floating-point format Infinite conjugacy class property output Energy level Commodore VIC-20 Cycle (graph theory)
Single-precision floating-point format Digital electronics Cycle (graph theory) Computer network Commodore VIC-20 Metropolitan area network Hand fan
Personal identification number Real number Coroutine Content (media) Virtual machine Plastikkarte Coprocessor Computer Befehlsprozessor Bus (computing) Right angle Quicksort Whiteboard Monster group Resultant
Point (geometry) Pulse (signal processing) Game controller Multiplication sign Structural load Virtual machine 1 (number) Content (media) Plastikkarte Flip-flop (electronics) Sequence Revision control Mathematics Befehlsprozessor Object-oriented programming Single-precision floating-point format Green's function Bus (computing) Electronic visual display Right angle Series (mathematics) Cycle (graph theory) Address space
Game controller Multiplication sign Computer Plastikkarte Bit Function (mathematics) Control flow Mereology Computer Logic Buffer solution output Right angle Address space
Multiplication sign Mathematical singularity Commutator Bit Shape (magazine) Computer Computer programming Hypercube Non-volatile memory Radical (chemistry) Commodore VIC-20 Core dump Whiteboard Form (programming)
Digital electronics Run time (program lifecycle phase) Weight Multiplication sign Direction (geometry) Range (statistics) Coroutine Set (mathematics) Bit rate Mereology Computer programming Dressing (medical) Mathematics Virtual memory Bit rate Hooking Different (Kate Ryan album) Semiconductor memory Computer configuration Core dump Bus (computing) Videoconferencing Damping Data conversion Monster group Social class Simultaneous localization and mapping Structural load Gradient Data storage device Bit Control flow Computer Opcode Type theory Radical (chemistry) Process (computing) Exterior algebra Befehlsprozessor Computer science MiniDisc Normal (geometry) output Right angle Figurate number Whiteboard Cycle (graph theory) Inverter (logic gate) Sinc function Row (database) Point (geometry) Laptop Game controller Virtual machine Graph coloring Number Latent heat Crash (computing) Goodness of fit Punched tape Programmschleife Peripheral Term (mathematics) Operator (mathematics) Touch typing Computer hardware Commodore VIC-20 Punched card Address space Computer architecture Software development kit Rule of inference Information Content (media) Plastikkarte Voltmeter Flip-flop (electronics) Letterpress printing Line (geometry) Magnetic-core memory Film editing Software Logic Personal digital assistant Calculation Compact Cassette Game theory
all right so ladies and gentlemen if you're here that means you're probably here for the cactus talk if you're not um you should stick around anyway I'm Commodore Z you can call me Z and so this is my homebrew computer and we're gonna do this a little interesting differently so there's gonna be some history lesson to this I'm a vintage computer geek I love old computers primarily Commodore machines I don't know if you can tell by my belt buckle I really like Commodore 64 so let's get started first part here some historical
context then after that design and build process and then a little bit of front panel demo and then we'll give you guys a chance to play with it we'll run some basic programs cuz the demo God seems to be shining on me today so what will let you actually get in there so first
things first the 1970s how many of you remember this 1970 show of hands okay I don't the rest of you we're in the same boat here and how many of you are familiar with the 6502 processor cool that's awesome how many of you have seen one with a front panel that's what I thought okay so it's a 1970s micro
processors are a big thing we got the Intel 8008 in 1972 it's a good start that's a picture one and two years later we get really things start to heat up with the 8080 and the motorola 6800 finally people are starting to make computers based on these instead of from scratch the next year MOS technology specifically some guys spun off from motorola you ever heard of the name Chuck peddle he kind of let's just say they decided to make their own version the 6501 and motorola sued them because it was a drop-in replacement and it was faster and it was simpler and it was cheaper and they were like uh-uh you're not doing this so they modified a few things after that whole lawsuit and the 6502 is the now a thing it's popular it's cheap same kind of thing on 1976 zilog does the same thing with the z80 they create something cheaper they had some features but it's very much like an 8080 RCA at the same time as combining two of their chips they combined two separate things and make one microprocessor you see it on spacecraft applications believe it or not because it's a very radiation hardened some people say oh it's on Voyager it's on pioneer no no no Galileo that's where you'll see it anywhere else somebody's probably pulling your leg but
for the first time ever we have these not just microprocessors chips that will go with them seen here we got one of these 8255 s with an 8080 a some these are chips to help you out using a microprocessor things are getting easy things are getting fun we don't have to do it all in 7400 series logic 6 502 is no
exception it's got its own family of parts but for
the first time ever you don't have to be like this guy this is Bob lash he home brews his own computer from the ground up this guy's a pure badass everything he's doing here is from the ground up he you know instead of having to build your own ALU from the from scratch or take an existing ALU and then building everything up around it to use that you just buy a microprocessor things are easy now home brewing is finally a thing
now this is not a homebrew but this is a kit we're gonna go through a handful of kits for front panel references first this is a kin back one from 72 by John Blankenbaker push buttons but it's all done in 7400 series logic it's got 256 bytes of RAM using shift registers but the push buttons that's fun I like that and then in 74 you got the Selvi and the
mark 8 these are things that you would see in radio electronics you could buy the board's at least for the mark 8 no mark 8 looks the same as any other mark 8 you just got the board's you populated you added your other stuff as you saw fit same goes for the cell beam and then
we got the watershed 75 everybody loves that issue of popular electronics with the Altair 8800 this front panel is amazing and we'll get to what inspired it in a bit here but it's simple it's effective you're doing front panel DMA it's nice and easy for the most part um but this is a kit that you can buy you can start with 256 bytes of RAM and you're getting somewhere and then the same time Southwest
technical products comes out 6,800 it's also based off of you know microprocessor but no front panel here it's assuming that you're gonna use a terminal okay that means we can do basic that's nice and then mitts comes back
and says well we'll make our own 6800 based machine and you get the under engineered and some people say poorly engineered Altair 680 it's got a front panel sure but there's not much to it you have to manually increment your addresses it's it's kind of tiny it's assuming that you're gonna be running from wrong which is annoying because it's only got a 1k of memory built in
then if you want to get to really cheap fun stuff 75 from November of popular electronics this is the cosmic elf based on the 1802 processor I like this guy the idea was you could read through the article and build it yourself with parts that you picked up from RadioShack I mean there's nothing much here in terms of pre-made kit it's you got to make it how you want to make it but this is a good blueprint very minimal front panel like the previous ones here failed mention it but it's using a processor to help you do that direct memory access in this case it's automatically incrementing your address for you and the processors running at this time to help you with this DMA but there's not much to it it's kind of minimal but it's cheap really cheap you can make one of these for under 100 and 75 or sorry
excuse me 76 and then a couple of Steve's from from California make this thing here this is an Apple one look at that beautiful ceramic and gold 6502 it's amazing but there's no front panel we're finally getting to more sophisticated stuff but we're also much more expensive six hundred and sixty six dollars they didn't sell too many of these but the idea is there's no front panel here and then going back a little further just for front panel comparisons this is a digital equipment corporation's pdp-8 II amazing front panel experience it assumes that you're going to be doing a lot of data entry so they made it as well as they could to make it you know ease-of-use is important it's a twelve bit and he can this is one of the later revisions from I want to say 69 or 70 something like that the original ones from 1965 it's huge about the size of a mini-fridge and
then we'll get to UNIX territory with the 1170 oh yeah we're 16-bit now but this front panel su still super easy to use because it assumes that you're gonna be doing bootstrapping and stuff like that from the panel this is what HP was
up to at the time this is the HP 1000 there's no lack latching switches here no toggles that lock it's all push buttons and if you want to see different registers or if you want to actually enter something or change what address that you're working at you have to change it with that little switch at the very bottom here and move left and right must even get this off of here perfect awesome
this guy this is one of my favorites in terms of design this is the data general Nova 1200 this has two influences two major machines but first off this is what they came up with to undercut Digital Equipment Corporation they thought hey we can make that same machine and we can make it cheaper with less parts and do the same kind of thing same amount of power that lesson goes and influences Wozniak and he says I can make these things simpler and cheaper do more with less but at the same time the layout of the front panel the way that the switches are operating for the most part this is what influences the alter eighty eight hundreds of design and then
we got the mother of all front panels in my opinion this from an IBM system/360 this is the model 90 I want to say I mean it's things like six foot wide look at all those blinking lights and switches this thing's beautiful but it's a mainframe everything else up until here has been a micro computer or a mini computer this this is something different but out of
all of these four front panel DMA we've got a mandatory set of viewing the contents of memory modifying the contents of memory starting and stopping processing and if we're lucky we have software addressable IO switches that we can turn on and off to play stuff like killed a bit love playing killed a bit we can also single step the clock or single instruction and those are not the same thing but those are useful and hopefully protect some memory maybe we don't want to write over our program and then if
you're really extra if you have the money you get yourself an ASR 33 teletype and if you'll notice that you have not only a keyboard and a place to see printouts but you have a paper tape reader we have storage we can punch tape now we're not just limited to whatever he typed in at that time we have storage and it's cheap and that's nice and if
you're really really living it up you can afford yourself like the last terminal this is a ADM 3a anybody uses vim a lot you'll notice where the positions of the arrow keys are on the home row that's why it's all because there is no arrow keys dedicated on there they program it on something like this that's compatible you can run vim on there's no problem stuff like the the vt100 standard same kind of thing hazel teens but then 77 happens 77 is a
watershed year we finally start seeing appliance computers the Apple 2 here it's got a screen it's got a keyboard it's in a nice case it also does color by the way which is nice Commodore comes
out with the pet 2001 this is the dash 8 model it's got a screen built-in it's got pet ski graphics it's got a tape drive so you can use storage that's awesome Tandy Radio Shack trs-80 model 1
it's actually all contained in that keyboard everything else is just extra but you've got graphics it's the cheapest option and they dominated the market for a couple of years about three or so years before they started getting edged out but that right there that was your cheap computer but these are
appliance machines you don't have to homebrew anymore you don't have to build a kit because a lot of those machines during the the my curly microcomputer era you're building it yourself you're getting it out of a catalog they've keyboards they have displays they got basic and roms so you can just turn it on there turn-key machines it's beautiful commercial software is finally available storage is cheap you can use a cassette drive you can just use regular audio tape and store your programs and read them back later if you really need the space you get a floppy drive that's nice but memories cheap and all of these are under two grand to get you started that's pretty nice
so the front panels dead our IP 77 that's that that's the death knell for it so I was looking around I thought you
know front panels why aren't were there done with his six 502 somebody had to have done this right I couldn't find any good answers and I asked about it and this was the response I got that's
because the 6502 was late enough that folks use the serial link to a terminal the Apple one had that built in quite a step forward from a front panel with switches and lights or folks whose exposure with the 6530 with a Tim monitor and ROM to a serial terminal I call these are expensive options if you're using graphical output up until 77 that means you're investing a lot of money if you're using a terminal either glass or or a teletype again you're making a significant investment not everybody could do that a front panel is cheap a 6502 is cheap there's got to be a reason some of these these two technologies weren't combined so what were people
doing this is a sinner Tech sim one it's got a hex display it's got a keypad it's got a lot of i/o it's actually pretty fully featured machine and you can run basic on it that's nice but it's a good start and then I found this 2015 this is
an OSI 300 oh hi Oh scientific maybes to teach you the opcodes of six 502 really really cheap 99 but it's just switches LEDs a handful of buffers the CPU and 128 bytes of RAM and that's it you are doing your DMA directly into the RAM and then you're running it from there but there's no i/o there's no storage you have one latch Abal TTL output and that's it you don't get anything else that's it no no I don't believe that
this is what most people think of when they think of a minimal 6502 machine this is a Kym one this is mos technologies design later on Commodore sold them to after they required hexadecimal display hex keypad a bunch of i/o over 65 30s and you could run basic on this you could hook up to a teletype or whatnot but you'd have to really expand it to do any kind of serious work on there now this is only one I've discovered in the last three or so months after this is built but this is AC GRS Microtech add-on for the sim one it's a software controlled front panel the idea is you're running it in software you can do your DMA but the machine is running the site the CPU is active and it's helping you through it it's running a program to do your data entry that's interesting the other ones are doing it kind of in hardware they're running the the CPU kind of sitting there quietly but this one this is different and then I just found out
about this one very recently this is the computer from a late 1977 issue of byte magazine it's spelled with a k and to use this is just somebody's homebrew that they put into it and I'm sure you a byte magazine said here here's how you build it I looked through the schematics it's incredibly convoluted I can't find any evidence of any of these still in existence if you find one please tell me I want to see it I just recently got the issue and I kinda want to flip through it more in detail and see if it's you know if you can replicate it but it looks decently fully-featured but it's a one-off let's put it that way this is
that that OSI 300 schematic you'll notice though it's shutting off the CPU and it's just the buffers are opening up such that you can write directly into RAM you're not using the CPU you have to tell it to go be quiet and sit in the corner and about the same time after I
saw the OSI 300 I also came across grant Searles minimal 6502 design seven chips you can build a six 502 machine that'll run basic serial Ram ROM CPU and a couple of you know something for glue just to make sure that you get your addressing right but for the first time it made sense and I saw this and I thought now this is this is a great starting point I need to use this why didn't somebody
combine that with the OSI 300 so I started I built with his design I thought that's nice I like this he's got something going here I talked with him you can run basic on it that's really nice this is OSI six 502 basic this is the revision 3.2 it's it's Microsoft's basic with a couple of tricks added into it but it's a really fast basic compared to its contemporaries I thought no no I'm
gonna make my own machine I'm gonna combine these two things together and create something that's actually gonna be filling this this niche because those those last two the CG RS Microtech and the the compute are only found out about those really really recently so I start
building just a couple of cards thank you I want this modular I found a backplane at a local electronics shop I thought 35 pins I can fit a bus on that right turns out yes but at the time I wasn't really sure and it's actually grown beyond that and there's a couple of jumper wires but it was a good start
how many of you have done wire wrapping raise your hands you have okay I've technically never done it either I'm using wire wrap wire but I'm soldering cards are too tightly packed in there I can't fit the the the proper kinds of sockets with the square pins too and I don't have the tools for it but the wire I can find and it's nice and tiny you can really pack them in there so uh I
got this great idea I'm gonna go out to tech shop when they were still in existence I'm gonna use their laser cutter I'm just gonna cut out a front panel the way I think it should look based on what I've seen from like front panels I like this seems like this will do and I'll adjust if I need to there's no electronics back there yet it's just the switches and well we'll see where we
go um so in my in my travels I was like I want a single step the 6502 I think that would be super cool and every tells me you can't single step the sex 502 in fact you can't do a lot of this DMA stuff you're talking about you're nuts you have to do some tricks here and I was like okay fine and somebody points out hey
Western Design Center still makes a CMOS version it's got a static core that's nice it'll go up to 14 megahertz whoo I don't want to go that fast but I like that but the pin outs nearly identical they're new in production but the design it's basically been out since 1978 that's all that's all right I thought it was like 80s notes like 78 it's got a bus enable pin I don't have to add buffers I don't have to add in a ton of buffers to shut off the address the data bus and a bunch of other stuff to tell it to be quiet I just let just flip that that's nice so I start wiring I'm
working on the front panel I had ribbon cables by the way this rainbow ribbon
cable smells absolutely awful it's like 1970s was tied up and thrown in the back of a conversion van and died of heatstroke in the Sun it is awful it's this phenol if that crap don't mess with it um a lot of folks when they try
to make their own modern machines using classic processors 8-bit or otherwise they use stuff like an atmel or a pic or some other modern microcontroller to do all the glue logic and the heavy lifting for them I think that's cheating I don't want to
do that I want to do it the traditional methods all 7400 series logic oh yeah
Ram I'm making a little bit of a cheat here so if I wanted to do era-appropriate Ram I'd have to do one of two things I'd go with a ton of DRAM which would basically take up half of the machine and you have to do timing no thank you or I go with SRAM of the era again kind of not so dense if I went with original Motorola 6800 are 128 bytes I would need 256 of them to get up to a full 32 K no thank you the other option is these are 2k ones this is from a Vic 20s expansion board to give you up to like 24 K or something like that again it's a lot of chips a lot of wiring for not really any game and I say that you know even within the context of this I can do in one chip
but then we also have what's actually controlling the front panel itself here and now we're getting into what's actually going on here so this is the address control card its job is to keep track of what address you're at for doing DMA the top row is just cascaded counters therefore gets a piece together we get a full 16-bit address plus and then a buffer uh when it comes to entering in data I thought to myself you know I like the idea of push buttons toggle switches are nice but the idea that I can press a switch and I can set and clear a bit I like that a lot I thought that's got to be I got to be onto something there right so I start working on my circuitry and then I go out two digits computer festival Midwest and somebody has that HP 1000 and I had never released I seen him at a distance I thought they were locking switches he comes you know this guy's demonstrating it Michael oh and he goes listen sit down let's enter in a program okay sure I sit down I start pressing the buttons I'm like wait a minute this is this is the idea I had somebody did it that's awesome that means I can do it I wasn't sure until this point that it was feasible I like this so that's what
it takes to make it happen the top row is just a bunch of flip-flops to store each bit two bits per chip and the rest is just interlocking buffers to make sure that data flows in and out when it should and then when you turn the machine to run and the CPUs in charge that the data lights illuminate correctly without interfering with whatever is going on in there before and this is what it ends up
looking like when it's running you have that top row of locking switches to set your address you can see what address you're actually at got the flip switches for for your data bus a switch is in
particular though I really like the MSI 80 80s design I think this is fun most folks that mess with an Altair will prefer this because of how big the switches are and the extra things that they added in down the line those paddle switches are so nice the problem is there are pain to get seen
Kay switches these are what 70 205 something like that there moment Aires they're really expensive and also you can't get them anymore with this type of paddle they discontinued the j4 and the j5 paddle years ago so if you want to find them you get them online somewhere surplus I found wine at electronic goldmine um I bought out their entire stockpile all 19 switches turns out that NK k makes a new version it's a little crunchy err but it gets the job done I like that but I also wanted a turnkey I wanted to be able to get up and walk away I wanted to take my keys with me so nobody messes with my machine cuz the best mini computers had that because it was expensive technology you leave your mini computer unattended well I want that on my cactus see if I get it - there we go we're back in business so it starts to
come together it's a mess it's all packed in there I want some IO 65 22 VI
a by the way you can still get new ones of these they're CMOS now it's nice right now I'm only doing uh LEDs for output still learning input this is a learning process I've been at this for over a year and I'm still living all kinds of new stuff about building a machine but that's fun cereal this is the old cereal card this is actually the gen 2 cereal Carver based on the 6850 it's Motorola sparked that whole right side that's just for doing baud rate control screw that I don't want to do that I don't have to change a jumper every time I want software control enter the 65 51 Thank You Commodore it's dense it's software controlled baud rate I can fit two of them on a card in that nice okay one other cheat that you can see on here the max 232 s for level shifting for rs-232 because I really really don't want to mess with what does it Motorola's 14 88 and 89 s I don't like those chips I don't want to mess with those I don't wanna have to add do extra stuff with transistors this is cheap and easy and really there's no benefit of doing it the older way then again I you know Who am I kidding here all right let's see if the next one to load let's go to single stepping this this is a large image I'm only at 800 by 600 so give it a second I found an old MOS
document about single stepping this is what they suggest is their circuitry for it it is insane but use single cell step and cycle I can't find any evidence of anybody actually doing this and then I
found some guy on the net by the name of thrash bard he came up with this and I was like oh that's interesting I want to see how that worked out I talked to him he goes yeah I never used it that was 15 years ago look man just you don't want to use that circuit okay looking through the Apple 1 manual begrudgingly I'm not an Apple fan I'm a Commodore fan I don't want to look through their documentation this is wisest idea for a single-step circuit look at that it's simple but I can't find any evidence of anybody using it after a while thrash mark says look
try this this will get you where you're going ok I build it doesn't work I'm
probably doing something wrong but I thought you know what let me just try it the way I think it should be done this is probably too simple right I mean it's really just a multiplexer to to choose between step and 1 megahertz clock with a run halt and bus enable and stuff like that it sort of works kinda sorta something I didn't expect to actually run but sometimes it actually will do it once you get to serial routines it doesn't want to it doesn't want to chew chew and the result is an entire pile of
cards now some of these are duplicates um this one up here is for running a reel and Moss CPU and it's mostly buffers just to shut off the buses just last weekend I was out at vintage computer festival Midwest or sorry West Mountain View California and the guy with the monster 6502 is out there raise your hand if you know the mouth monster 6502 ok we talked this guy he's got a you know it's a 6 502 but it's big it's made up of individual transistors and I go that would be a lot of fun to connect up to my machine and I talked with him and said yeah that'd be fun wouldn't it just jokingly and he goes yeah that would be awesome he's serious and I'm like okay I guess I'm building an N Maus card now but I got to run at 50 kilohertz that's a little slow so I built a separate board for it you can actually see it right there that little green guy with the three chips on him that's just for the monster we first day didn't go so good I had bus contention on one pin after we got that settled the next day we ran it'll work with a you know a real n Moss processor but it'll also work with the monster and this is the result
it runs it actually somehow runs surprises the hell out of me every time
so let's get into the actual switches that are controlling stuff pardon me first things first we got reset switch all on the far side here we want to be able to reset most of the smarter chips next to that we have a run halt switch we want to be able to stop and start the CPU at will when the CPU is running the rest of the front panel locks down you can't do anything that's a good thing we don't want to mess with the CPU as it's trying to execute stuff but the second you halt the CPU says okay I'm taking a back seat it goes and has a smoke and everything else is in control now next to that we've got our single step switch so we can give a single pulse at that same time it's briefly locking down the front panel and briefly unlocking the CPU just for that one cycle next to that we have the broken protects which it never seems to want to work for me the idea is to protect Ram turning into ROM temporarily that's nice then the next two these are my favorite switches because these are the ones that do real work the paints coming off of the the green exam and switch because of how much I press it so if we press it upwards we can do an examine oops I halted wrong green switch what we've done now is two different things in one quick sequence we've checked this whatever the address switches are at and we've loaded that into the counters we've pre-loaded them then afterwards the data control card says okay it's my turn and it loads up whatever is at that address and displays it on the LEDs right now it's zero but what if we want to go to the next address if I've got an OSI 300 I've got to manually set and increment these switches one by one that is a pain in the ass let's let's do an exam 'next let's just move through it seamlessly why not and then if we want to go back we do another examine we hop back to where we started deposit what if I want to make a change I bring the deposit switch up it opens up the right latches and the data flows back from the data control card out to the bus and writes to the RAM or whatever other devices out there obviously we can't write to ROM but we can write to some of the other peripheral chips which is nice but what if I want to do a lot of data entry really fast we got a deposit next switch and this is a point of contention between me and inside guys because this is doing three different things here it's sequence together oh thank you it's doing three different things here in quick succession the first is it's copying it's writing to ram or whatever it may be and then it's immediately being followed up with an increment address and then after that a load data bus three things all in quick succession it's run by a 555 timer I also got the the the broken out version of the 555 I was thinking about putting it in there just to have one more thing from eel mad-scientist hooked into my machine that's gonna be fun but it's just a series of flip-flops that are in quick succession 1 2 3 4 5 1 2 3 4 5 to make sure that we we do each thing instead of having to have individual switches for ok first I increment and then I load no we want to doing it for us and then that's actually what it looks
like here 5 5 5 timer up top we got some stuff to lock out parts of the front panel debouncing yeah we got it all most of the rest of is just blue logic to make sure the timing happens correctly
it's back to that address control card I don't know why this is in here twice
data control card again so input buffers output buffers it's it's a nightmare I figured out how to do it with like two buffers now because I discovered the wonders of the 74 to 45 I love that chip
so here a couple of takeaways front panels are really really really tedious but you get a ton of control you are talking right to the bits wiring computer for the ground up is very time-consuming but you know what I it's fun and the blinking lights make it all worth it I I think so anyway I want to
give a shout out to all these guys these are folks that helped me out in some way shape or form either with encouragement or pointing out a technical fault or suggestion or helping me debug something along the way these guys are awesome plenty er from the vintage commuter community and I want to thank all of you of course for coming out and listening me ramble about my computer built 40 years too late any questions the week before we actually let you guys you know run loose run some basic or stuff like that or do you want me to run basic on here and I mean I've got a couple of programs to demo if you guys ready to play I don't know how much time we got all right first questions thank you thank you very much all right I wrote this last night and I wrote and I stored it up in nvram cuz I've got two K of battery-backed NVRAM because I don't have core yet I say yet because next month the guy is hooking me up with 4k core boards and I'm like yes please if I'm doing everything tedious might as well try so first things first let's see where did I put this yep there it is okay I just want to make sure that we jump to the right okay so we're gonna jump to where this program actually exists and this will only take a little bit Oh 20 minutes awesome thank you okay we got that and it's at 0-0 sometimes deposit doesn't always play nice be a awesome Larsson scanner all right so we're running something more importantly hopefully it'll led us will it nope 65 22 does not play nice with single stepping oh well we'll live we'll just run in at full speed why not that took me I don't know 50 or so bytes last night I thought it was fun you guys want to run basic let's run some basic all right I actually have to switch ROM chips here we just want to make sure it's actually there and we'll hop into hyper terminal
so we can show you guys what's actually
going on this is from the last time when I tested it so all right good all right cold start 32 is in 768 because we have a third full 32k of ram we could do a lot with this terminal with 80 columns because why not there we are we're in basic want me to load up a program alright I don't want to type the whole thing so I actually prepared a few that I figured you guys might like let's see who doesn't love a good Mandelbrot set this is gonna take a minute so it's gonna load itself up yeah I'm still learning clear to send and request to send specifics to make sure the timing works out perfectly so what I do is I just slow it down and it runs seriously any questions anybody want to come and play with it yeah go ahead sure okay I'm running everything off of 5 volts right now we're actually running off of a USB battery pack and we'll be good for a while we're actually also running my converter for the laptop to turn it into HDMI it's less than an amp we're not drawing all that much the core memories gonna make that spike what was the second one okay I'm still working on those calculations because I get this question a lot when's the kit coming out I'm working on it I swear all of these boards are hand wired I don't want to force you guys to do that I want one board just for the front pants you sock it in those switches but vfc East VCF West people are asking me like hey when's this coming out just pay attention to my website I've got business cards afterwards with little information about it if you're curious but hey look the programs ready first things first let's just make sure it all ended oh I'm not high caps-lock it gets mad about lower case okay it's there and there we go it's running a Mandelbrot set it's gonna take a little while I'm it's about eight minutes or so well when we had this hooked into the monster since it's 20 times slower you do the math it took a while just to get like three lines done especially when it got into the really nitty-gritty computing yeah we gave up on that really quickly any of their questions curiosities you want to come touch the front panel be my guest since it's locked down right now go nuts oh we got two questions all right you in the back first you're gonna have to speak up okay some of that needs debunking yes the top row stuff because we're first going we're locking down and we're going into something that's only going to be read once in a great while the load side of the address control counters we don't need any debouncing there for these here yes we are debouncing just a little bit it's not too crazy with the flip flops it seems to be okay without extra too much extra circuitry there these guys over here for the momentary zuv examine deposit yes we are debouncing for sure it's like a little RC circuit with a an inverter it seems to work out alright gotcha yeah most of what's going on for at least the status control card a lot of it only one of those is doing the debouncing everything else is lockout and sequencing to make sure that it's pulling stuff high and low accordingly as it's going through the sequencing operation so only one of those is doing debounce you had a question we're stepping by clock cycle not by instruction with simpler programs you can actually watch it go through and you can see doing a right back to the data bus it's really fun you might do one of those in a bit here y'all are curious now we don't have to go through the whole thing but the point is we're running we're doing heavy computing and you can see the lights when it gets to something really tough see a dress lights will kind of choke up for a bit all right let's go to something fun people like fun games and stuff like that all right we actually have control C which is nice okay anybody all play lunar lander before I found the book from 1977 and I thought I got to play this so far nobody actually wants to play the game every time I demonstrate it somebody goes oh no I'm gonna crash like yet we know you're gonna crash that's the point of the game you got to try anyway and yes I went through all the text because I'm I want to pay homage to the folks that came before me cuz I don't know if you can tell um I'm 28 today this is my birthday I'm a little young to remember this stuff thank you yeah we're gonna be here awhile any other questions curiosity's all right did I have an electronics experience before this um I dabbled I'm more dangerous than anything else this is how I've learned a lot of stuff in hardware and software assembly I'm I never had any need for assembly until I did this and one of the few things that's actually doing anything of importance in here that I had to rewrite was the serial routines I had to change them over to use a different chipset but in terms of 7403 logic I played with small circuits once in a great while and not really I just kind of learned by the seat of my pants I'm surprised nothing has lit on fire in the process I haven't blown any capacitors I haven't made anything go poof yet give me time it surprises the hell out of me I'm gonna make circuit boards because that's a skill I don't have I can i can solder i love to solder I think it's therapeutic so that's why everything's you know done the way it is but also making your own PCBs that's that's a skill I need to pick up first before I can actually do anything mean that is a long frickin program yeah I don't want to type it in by hand we'd be here for hours I don't want to force that on y'all I mean I've spent hours just writing you know 50 bytes with with the toggle switches and debugging and figuring out how to get the loops right because I'm still learning branching the specifics of 6502 branching and how it does a backwards step is a little funky I don't know if you all have messed with that it's it's it's something to learn we're almost there I swear by the way it's not gonna end well for ever's in the craft how did what got me into old computers okay um eighth grade I'm in computer science classes the last day they said all right listen let's just let's just distract the kids with a documentary and I'm sitting up front I'm watching this thing and everybody else is like this is the lamest thing ever and I'm like ha ha there was a time before where computers look like that I want to know more and the next thing I know I'm on eBay and I bought a c64 it's been downhill ever since the pile of Vic twenties is insurmountable but basic is fun what I need and this is something I'm learning how to do because I want to try to either make my own or adapt something just for this architecture I don't have a monitor in ROM I don't have any way to go through the assembly by hand if I want to do a memory dump I have to write it in basic or use the front panel which is fine I don't mind that but everybody who makes their own machines they seem to do a monitor ROM and I'm like okay I need to learn how to do that I made full ignorance on on how that works I'm gonna figure it out Hey look it's there all right you guys want to crash into the moon let's go with a couple of burn rates a zero just to make sure we're not wasting fuel all right we're gonna slam headfirst in the moon just so y'all know alright y'all call the numbers from now on because now it's getting into the good stuff seriously 46 you got it all right no let's try 1000 because I want to see how well it breaks um okay I don't think that's normal alright what was the next one anyone all right well then I'm doing 100 yeah okay we're slowing down we're in the three-digit range most people end up going upwards and backwards and just not good up seat we're going in Reverse we're leaving the moon which means that we're definitely screwed now yep it screwed up and then it told us it was a perfect landing clearly I typed this in wrong okay let's see if I can get it okay let's load up something a little more fun let's actually see the contents of memory oh I know the light show everybody loves the light show so I want it to mess with the 65 22 because I'm still learning how that operates I want to do input cuz I really want to play kill a bit y'all remember killed a bit because these all lock out on runtime when the CPUs in charge we can't press any of these buttons I mean we can but it's not gonna do anything I need software addressable buttons and so I'm still learning how that's gonna operate but for up for a good start so this will go through a bunch of different light shows and whatnot I got a full memory map if somebody wants to actually sit down an AK for a while and run something fun on there I'm willing to hook up fun toys to this people are curious and we can take it apart if you really want to I don't mind don't worry it's not super long of a program any other questions any other curiosities yes yes I have thought about doing a user port Commodore 64 style because I got a ton of peripherals for that I've got a 65 22 why not now actually while we're waiting there there are a couple things I have thought about adding to this cassette storage there's no permanent storage on here yet the card bus is kind of full but after I condense a little bit yeah I want cassette storage I want to see you about learning about video does the name Don Lancaster Raney bells for anybody I've got a cut all right I've got a copy the TTL cookbook that's how I started designing for this all right is the light show going yeah the light shows going which was bigger somebody find me some giant LEDs the the other book that he did I mean there's the there's the TV typewriter cookbook and then there's also the cheap video cookbook I just scored a copy of that I kind of want to see what it's like to build my own video hardware from scratch the other alternatives are a Vic one chip because I really like the early colors and the blockiness I know it's only 22 columns I like it anyway the other option is Motorola's 68 45 chip the CRTC because I'm semi familiar with that one but it'd be useful for for running programs and be able to see what's going on all right that's enough of that I got another one that's short getting funny looks oh I'm coming up on time all right I'll run one more and then we'll pack it up and move aside here so the next guy can come on in so one of the things I wanted to do was I wanted to see what the contents of memory wore so I just wrote a simple memory dump and then have it also simultaneously right out to the LEDs so we can see what's going on what's the other stuff that I want to add to this when the time comes some folks have been like wanna do floppy disk storage and I'm like yeah I guess so that's kind of boring to me what I really want is paper tape if you know anybody selling a paper tape reader and punch please point them in my direction I'm trying to find one I've been looking they're tough they're tough to find I know they're out there but I don't want to buy a full ASR 33 because I don't have anywhere to put that and they're loud and they are clunky and when they break they really break it's almost done I swear I need to make this faster don't I oh yeah the the address control the software controllable LEDs are coming directly out of the sixty five twenty-two there's also a second bank that's not plugged into anything alright last thing we'll do let's see four seven zero zero zero four seven so we're seeing what's in some dead part of memory I don't think there's really too much going on in here but we'll come across something I'm sure but there it is Hey look we're finding garbage finally alright actually this is that that larsson scanner programmed from before he said sad that I'm starting to remember the opcodes and now we're back into garbage alright then well I'm gonna leave it at that just so the next guy can get set up but thank you very much for coming out and seeing the cactus [Applause]