Too funny. It would take me over an hour to arrange all of mine. But I would never consider doing it.... ... unless I was making a RUclips video about hand wiring a Z80 Basic computer.
I got excited when I watched this last year, finally ordered all the parts, got my iron out, setup the breadboard and followed along the best I could. Finally after hours and hours of fiddly work and sore eyes, I managed to power it on for the first time and I was able to behold the marvel that I created... fire. it was on fire, lots of fire. I'm not sure what's more sadly epic, how fast it booted into fire, or how fast my landlord kicked me out of the apartment.
Of all the Z80 based computers I have used, I like Tandy Radio Shack TRS-80 the most. They had a decent display, built in BASIC, and were easy to write programs for. To have a really retro design for a Z80 computer you can't forget the cassette tape interface.
Please don't leave Ben! Your show is the highlight of my week. Just make them let you slow down a bit. 2, 3, even 4 part episodes are fine and we get more detail that way too. PLEASE DON'T GO!
I am blind, so I would LOVE to have / build a computer with an old school front panel. But maybe use vibrators instead of Blinkenlights. I would love that! (Machine code! ROCKS!)
Ben, there is a MASSIVE difference between Nuremberg and Nurburgring! I think most people would have understood what you meant to say though but this slip really did make me chuckle
And they do in fact have a race track in Nuremberg. Coincidentally, it’s at the exact same place as where the rallies used to take place. Yes that is weird.
6 лет назад+13
Actually data bus lines on the SRAM socket can be reorganized as you like, the same for address. This is because it does not matter, all the information is stored and read back on the same data/address bus with the given order, how data is "internally" stored (inside the SRAM chip) is out of question. However it's a big no-no with the ROM, since there data in ROM written with an (eg) (E)EPROM programmer, probably at the "official" order of pins, so must be the same for reading the data by Z80 then. Once this idea helped me to simplify the routing of wires between Z80 and SRAMs (and yes, I was lazy, and put two SRAM chips on to the top of each other, since all pins are common but the chip enable, they were blended outwards - ugly enough I know ...). Btw, in theory some can reorganize the address/data pins towards the ROM too, but then the ROM image must be "burned" with these effects counted, which is not a big fun really, though I wrote some little Python script to re-work my ROM image yay :-O
I was going to make a similar comment about the address and data lines on the RAM. I have seen systems which intentionally scrambled the data and address lines on the ROM to make it more difficult to reverse engineer their code. You can make an adapter for the EPROM programmer from two sockets that have wires between them with the appropriate scrambling. Then you can program or read the scrambled EPROM in a straightforward manner. Another trick I have seen for obfuscation is XORing data lines with address lines e.g. XOR all the data lines with A0. This will store the complement of the data in odd locations.
6 лет назад+1
Wow, I would never have the idea to use this for obfuscation and such, but it's neat :) [well, annoying for one who wants to understand].
I have built this sbc and it is great. I built mine with wire wrap sockets. I'm in the process of building Grant's keyboard/monitor interface right now. I really enjoy seeing Ben do projects like this.
Nice to see Grant's design getting some more publicity. He has been the inspiration for many other homemade designs using the z80 processor. Including my own G80 design.
mmh. the 65c02, Z80 and 65816 are still commercially available new, which is very helpful. It means you can do a bunch of things with them easily that would be quite challenging with other old CPU designs... Plus the modern iterations have higher clock speeds than the historical ones. (the 65816 you can buy now runs at 14 mhz for instance, but is known to be stable past 20...)
Wow! That was nostalgic. :-) Back in the day, like the late 70s, I built a z80 system from scratch like this. I didn't solder it though, it was wire wrapped. After getting it working, I got bored with poking in hand assembled code in binary, and went out and bought one of the then new Atari 800s. :-)
I sure remember hand wiring those old z80's. I design and manufacture PCBs these days, but I still use a newer version of the z80. I use the ez80F91 MCU now. It's FAR SUPERIOR to the old CPUs.
In the 70's I was writing Z80 assembly on TRS-80's. In the 80's I was writing Z80 assembly on Sinclair computers. In 1999 and 2000 I was writing code professionally for the Gameboy Color. So technically I was writing code for this chip in 4 different decades.
Great vid as always, was looking at a past show you were making circuit boards later I watched Mr Carlson's Lab, seemed like a lot of good tips and he shares all his work.
Imagine building a computer without a board, just everything soldered together self supporting. The ground and power busses can help hold it together and add strength. I have seen a handheld probe frequency counter made by cutting the ends off the ic pins and gluing them together like a brick wall. Wires soldered on the sides of the pins. Hard to change an ic in the middle of everything.
Meanwhile, for another project I am doing a full custom microcontroller style device on an FPGA (slightly oddball in that it is using 32-bit GPRs with a 16-bit address space). Main reason was I to do some high-speed real-time stuff, the existing 8/16 microcontrollers weren't keeping up, and partly because I felt like doing so. Had some ideas for ways to do a RISC-style ISA with fixed 16-bit instruction words, and make it less annoying to work with than SuperH or Thumb (a lot of prior recent projects were using a SH based ISA). Namely: No more pain dealing with small displacement and immediate fields, the ISA and machine-code emitter can deal with it, allowing ASM code and higher-level compiler logic to gloss over this. At the ASM level, it behaves more like x86; writing "mov.l (r5, 6972), r3" or "mov #314159, r9" or similar will "just work" (but internally may require multiple instructions in these cases; but this can be hidden much better). Also repurposing a prior C compiler of mine to target the new ISA (it also targets the prior mentioned SH-based ISA).
Does it matter if you wire the A pins out of order? - since they are a constant connection they will always address the same location, just not in a mechanically sequential order. Surely the same is also true of the D pins?
Actually, way back in the day. I had a more complete version which I would have loved to have seen but I would agree it would be a project outside what seems to be the scope here. I have thought of building the system I wanted back in the day which never left pen/paper. Just didn't have the time because of work. University or the funds to build it. But it was a master cpu on the back plane board, 4 slave cpus, shared memory, what I called in the day as "Block Device" controller, Serial controller and parallel controller. All of the controller boards were also Z80's. Then I would have to find a copy of MP/M that I could adjust so it would all work together. The master CPU just handled video, keyboard, mouse if you could find it then, and monitored and controlled what each slave Z80 was doing. DMA was the key on the mass transport of the data from card to card using what I called a modified S100 bus. Still thinking about building it but either finding what I need for the boot ROMs for each board or write it myself. Of course tech wise some of what I was designing for isn't used these days so it would have to be modified to match what is out there now. The block would be SSD cards, serial could could be USB 2.0/3.1, and parallel controller I guess could be ethernet/wifi/blue. So, the real hangup is OS and boot ROMs for this design. Could write it I guess, don't care about BASIC or really the OSs of the day per se. UNIX (over kill), MP/M, CP/M would be hard to find these days as I would need the entire source code and given am thinking of dual 32GB SSD cards; wouldn't handle that structure all that well. The other possible project would be a 32-bit system not using a designed microprocessor but built from the ground up. Overall am still debating it as am always an analyst. What would I do with it? The Z80 design was when I was in university and had to work on complex designs as I never just stayed in the limits of where ever the task was. I always added to it to make it more challenging to me.
this is awesome! you decided to cut out every single part about the serial chip though, other than mentioning it like thrice or so and in the end connecting...
Wire wrapping components are pretty uncommon (for reasonable prices) today it seems :( I plan on doing so, and I've had to scour surplus stores and follow eBay searches for months to avoid paying a fortune
I was really hoping you would revisit the Game Brains project. I felt like it was left unfinished. It never got proper controller ports, It never booted that CP/M computer, and it never go a custom case. I would have liked to see a final finished product.
In my professional world of graybeard engineers we often say "double-E PROM", but since windowed EPROMs are virtually obsolete it is fine to say "EPROM" in conversation as long as everyone is familiar with the architecture in question.
I would have used multiple sockets for the Z80 to do the a cross wiring adapter instead to keep the perfboards underside cleaner :) Else really nice work!
You can get a Z80 with a clock speed of 20 Mhz and even overclock it another 5 Mhz. The only thing is you will need fast memory chips with less than 50 nS access times.
I think they're using it to hide a cut where they skipped a bit of Ben's sentence. Noticed it in the last video too - not sure how long they've been doing it.
Try using 41256 dynamic ram chips and use the Z-80 Refresh pin. Bank switching is a challenge with 27256 EPROMS or 62256 EEPROMs. too easy back in the 80's. Gotta add a CTC and SIO chips Sync comm's. I designed terminals for Data general systems in the early 80's.
Heya Ben... love the vids - but have a couple suggestions for future projects - one would be perhaps a bit of color-coding of your wire jobs for the camera - and upsizing the font and fullscreening the window size of your terminal/dos prompt screens to be more visible in the videos. :)
Wait a minute, that means... we are getting new Ben Heck episodes on the eevBLOG channel, and Felix episodes on this channel. I am total fine with that.
Wait, what???!!! He's going to be working with Dave at eevblog? Damn, I can't stand that guy. He's arrogant and his voice grates on my ears. I can't stand his fake overly enthusiastic tone. Dave sucks big time. Looks like I won't be seeing any more of Ben's great work anymore. WHY BEN, WHY???
What should have included a Floppy Disc Controller, Should have used Kynar wire for wiring of the chips and I think that there should have been two EPROM sockets one for Assembler and one for the BASIC interpreter. Wouldn't it be nice to do this... ASSEM 10 10 CODE LD &H40, BC ADD &H20, BC LD C, A OUT (&H21), A LD B, A OUT (&H22), A RET 20 REM STUFF
If you still have that computer, could you try this little program and see what happens. 10 A=1E18 20 B=1E19 30 C=1E20 40 D=A*C 50 E=B*B 60 PRINT D,E If the BASIC you have is based upon Microsoft, the above program ought to error out with an overflow error in line 50. Obviously both D and E should have the same value of 1E38. But the overflow is due to premature detection of an overflow in Microsoft's floating point. 1E18 is represented as 0.86736174x2^60 1E20 is 0.67762636x2^67 To multiply them, the exponents are added, getting 60+67=127 and the significands are multiplied, getting 0.58774718. So the result is 0.58774718x2^127 which is 1E38. But 1E19 is 0.54210109x2^64 Let's multiply the same way. Added the exponents, getting 64+64=128. But the floating point format used has a maximum exponent of 127, so it immediately flags an overflow. But let's ignore that for now and multiply the sugnificands, getting 0.29387359. But the floating point format used requires the significand to be in the range [0.5,1.0) and 0.29... is too small. So it needs to be normalized by multiplying it by 2, getting 0.58774718 and the exponent needs to have 1 subtracted from it to compensate, getting 128-1=127, which is a totally reasonable number. I discovered this bug on the TRS-80 and over the years checked for its presence on every version of Microsoft Basic I encountered. Found it on the IBM PC and every compatable until the FP Math Coprocessor became standard (80486 and later processors).
Tell someone you’re a supernerd without saying you’re a supernerd: "I was just arranging my collection of Z-80 CPUs chronologically" *_WHO_* does that?
CPU in the TRS-80 Model 1 as one example. Get back to assembly language programming using EDTASM ... builds character. By the way, how much did it cost to buy the Microsoft Basic to load into the eeprom? How different is it from the Radio Shack version that was purchased from Microsoft?
Vincent GR there's a CP/M distribution package called RomWBW that works a treat with a modified version of this. It boots CP/M from flash and has built in support for loads of different hardware. I'm using it with a machine with dual floppy drives, an 85MB IDE drive and dual serial ports. It supports the Z180 too so if you want a 33MHz 8 bit micro you can.
Gizmo The way I did it with this design was to use an Arduino as a serial terminal outputting to a 40x4 LCD display. That way you don't have to touch the ROM image. I'm sure many would call that cheating though.
"Well I was just organising my collection of Z80 CPU's chronologically using the date codes"
That's the nerdiest sentence that was ever spoken.
Too funny. It would take me over an hour to arrange all of mine. But I would never consider doing it....
... unless I was making a RUclips video about hand wiring a Z80 Basic computer.
that deserves a swirly for being such a NERD!
I just found it disappointing and shocking that his oldest was from 1981 lol
I got excited when I watched this last year, finally ordered all the parts, got my iron out, setup the breadboard and followed along the best I could.
Finally after hours and hours of fiddly work and sore eyes, I managed to power it on for the first time and I was able to behold the marvel that I created... fire.
it was on fire, lots of fire. I'm not sure what's more sadly epic, how fast it booted into fire, or how fast my landlord kicked me out of the apartment.
I love the fact Ben switches from "Zee 80" (no problem with that...) to "Zed X Spectrum" so effortlessly. Attention to detail. Respect.
Watching a lot of British RUclipsrs has actually trained me to do the same thing. It's actually become second nature now.
mjc0961 Yep, sounds like he's definitely a nicer guy than you. 👍
Of all the Z80 based computers I have used, I like Tandy Radio Shack TRS-80 the most. They had a decent display, built in BASIC, and were easy to write programs for. To have a really retro design for a Z80 computer you can't forget the cassette tape interface.
I've built a couple of Grant's designs, and the RC2014, which is based heavily on this design. Great to see them brought to a wider audience.
I'm a noob so I have to ask.. you had to program the eeprom with a programmer, right?
@@Silverlightnickyes
Please don't leave Ben! Your show is the highlight of my week. Just make them let you slow down a bit. 2, 3, even 4 part episodes are fine and we get more detail that way too. PLEASE DON'T GO!
Nickolas Myers stop it, you sound like a bum in a hallway stall !!
BEN!!! PLEASE DON'T LEAVE US!!! :(
I am blind, so I would LOVE to have / build a computer with an old school front panel. But maybe use vibrators instead of Blinkenlights. I would love that! (Machine code! ROCKS!)
I don't know what it is but watching Ben solder is just so relaxing and mesmerizing, lol!! Going to miss you Ben!!
Ben, there is a MASSIVE difference between Nuremberg and Nurburgring! I think most people would have understood what you meant to say though but this slip really did make me chuckle
They did have rallys and trials at Nuremberg though. ;)
Lyall Moffitt awesome point!
I applaud you sir. Well played
Lyall Moffitt Oh boy.
And they do in fact have a race track in Nuremberg. Coincidentally, it’s at the exact same place as where the rallies used to take place. Yes that is weird.
Actually data bus lines on the SRAM socket can be reorganized as you like, the same for address. This is because it does not matter, all the information is stored and read back on the same data/address bus with the given order, how data is "internally" stored (inside the SRAM chip) is out of question. However it's a big no-no with the ROM, since there data in ROM written with an (eg) (E)EPROM programmer, probably at the "official" order of pins, so must be the same for reading the data by Z80 then. Once this idea helped me to simplify the routing of wires between Z80 and SRAMs (and yes, I was lazy, and put two SRAM chips on to the top of each other, since all pins are common but the chip enable, they were blended outwards - ugly enough I know ...). Btw, in theory some can reorganize the address/data pins towards the ROM too, but then the ROM image must be "burned" with these effects counted, which is not a big fun really, though I wrote some little Python script to re-work my ROM image yay :-O
I was going to make a similar comment about the address and data lines on the RAM.
I have seen systems which intentionally scrambled the data and address lines on the ROM to make it more difficult to reverse engineer their code.
You can make an adapter for the EPROM programmer from two sockets that have wires between them with the appropriate scrambling. Then you can program or read the scrambled EPROM in a straightforward manner.
Another trick I have seen for obfuscation is XORing data lines with address lines e.g. XOR all the data lines with A0. This will store the complement of the data in odd locations.
Wow, I would never have the idea to use this for obfuscation and such, but it's neat :) [well, annoying for one who wants to understand].
Psion organisers had their ROM modules using a serial to parallel shift register and then in non-sequential address line order
I have built this sbc and it is great. I built mine with wire wrap sockets. I'm in the process of building Grant's keyboard/monitor interface right now. I really enjoy seeing Ben do projects like this.
Ahh, the road racing games. Brings back memories and usually my go to program for a Basic game on any platform including TI calculators.
"It's biasing towards left" that's because you have six values it can land on for left (0 to 5) and only 5 for right (15 to 19).
Nice to see Grant's design getting some more publicity. He has been the inspiration for many other homemade designs using the z80 processor. Including my own G80 design.
mmh. the 65c02, Z80 and 65816 are still commercially available new, which is very helpful.
It means you can do a bunch of things with them easily that would be quite challenging with other old CPU designs...
Plus the modern iterations have higher clock speeds than the historical ones.
(the 65816 you can buy now runs at 14 mhz for instance, but is known to be stable past 20...)
Can it do 20 mhz at room temps?
Z80 at 20MHz is available right now! Wow
Wow! That was nostalgic. :-) Back in the day, like the late 70s, I built a z80 system from scratch like this. I didn't solder it though, it was wire wrapped. After getting it working, I got bored with poking in hand assembled code in binary, and went out and bought one of the then new Atari 800s. :-)
I still want to make a MSX2 compatible Z80 computer.
I sure remember hand wiring those old z80's. I design and manufacture PCBs these days, but I still use a newer version of the z80. I use the ez80F91 MCU now. It's FAR SUPERIOR to the old CPUs.
In the 70's I was writing Z80 assembly on TRS-80's. In the 80's I was writing Z80 assembly on Sinclair computers. In 1999 and 2000 I was writing code professionally for the Gameboy Color. So technically I was writing code for this chip in 4 different decades.
I have three Z80 CPUs, and no clue where they came from. At least now they have somewhere to go.
I was just working on one of my own today, neat coincidence
What a coincidence, I am currently hand soldering a Z80 computer!
They sell 30ga Kynar wire in many colors, this is typically what's used for PtP soldering and bodge wires.
Would be really cool to see a video which explains in detail what all the additional chips to the Z80 do and how the whole thing works ;)
I can’t believe you missed the chance to sing I can’t drive 55. Great video.
Very nice. Can you add the link to the Z80 project site to the description? Thanks!
Ben is legendary! Hats off!
Great vid as always, was looking at a past show you were making circuit boards later I watched Mr Carlson's Lab, seemed like a lot of good tips and he shares all his work.
Imagine building a computer without a board, just everything soldered together self supporting.
The ground and power busses can help hold it together and add strength.
I have seen a handheld probe frequency counter made by cutting the ends off the ic pins and gluing them together like a brick wall. Wires soldered on the sides of the pins. Hard to change an ic in the middle of everything.
Meanwhile, for another project I am doing a full custom microcontroller style device on an FPGA (slightly oddball in that it is using 32-bit GPRs with a 16-bit address space). Main reason was I to do some high-speed real-time stuff, the existing 8/16 microcontrollers weren't keeping up, and partly because I felt like doing so.
Had some ideas for ways to do a RISC-style ISA with fixed 16-bit instruction words, and make it less annoying to work with than SuperH or Thumb (a lot of prior recent projects were using a SH based ISA). Namely: No more pain dealing with small displacement and immediate fields, the ISA and machine-code emitter can deal with it, allowing ASM code and higher-level compiler logic to gloss over this. At the ASM level, it behaves more like x86; writing "mov.l (r5, 6972), r3" or "mov #314159, r9" or similar will "just work" (but internally may require multiple instructions in these cases; but this can be hidden much better). Also repurposing a prior C compiler of mine to target the new ISA (it also targets the prior mentioned SH-based ISA).
Does it matter if you wire the A pins out of order? - since they are a constant connection they will always address the same location, just not in a mechanically sequential order. Surely the same is also true of the D pins?
TrollingAround on ddr3 design you can swap the data lines to simplify the routing.
But not the address line.
What make of circuit board are you using ? What is the spacing between the holes ? Where can one obtain these boards ?
Awesome! Now I can dust of my Z80. Any hope for a 6502 BASIC Computer?
I want to make one of these and then write my own special MIDI sequencer on it. Is that a bad thing?
Darren Landrum only if you don't post your code on Githib
No not at all. Keep us updated on your progress :)
Actually, way back in the day. I had a more complete version which I would have loved to have seen but I would agree it would be a project outside what seems to be the scope here. I have thought of building the system I wanted back in the day which never left pen/paper. Just didn't have the time because of work. University or the funds to build it. But it was a master cpu on the back plane board, 4 slave cpus, shared memory, what I called in the day as "Block Device" controller, Serial controller and parallel controller. All of the controller boards were also Z80's. Then I would have to find a copy of MP/M that I could adjust so it would all work together. The master CPU just handled video, keyboard, mouse if you could find it then, and monitored and controlled what each slave Z80 was doing. DMA was the key on the mass transport of the data from card to card using what I called a modified S100 bus. Still thinking about building it but either finding what I need for the boot ROMs for each board or write it myself. Of course tech wise some of what I was designing for isn't used these days so it would have to be modified to match what is out there now. The block would be SSD cards, serial could could be USB 2.0/3.1, and parallel controller I guess could be ethernet/wifi/blue. So, the real hangup is OS and boot ROMs for this design. Could write it I guess, don't care about BASIC or really the OSs of the day per se. UNIX (over kill), MP/M, CP/M would be hard to find these days as I would need the entire source code and given am thinking of dual 32GB SSD cards; wouldn't handle that structure all that well. The other possible project would be a 32-bit system not using a designed microprocessor but built from the ground up. Overall am still debating it as am always an analyst. What would I do with it? The Z80 design was when I was in university and had to work on complex designs as I never just stayed in the limits of where ever the task was. I always added to it to make it more challenging to me.
this is awesome!
you decided to cut out every single part about the serial chip though, other than mentioning it like thrice or so and in the end connecting...
Wire-Wrapping the old way would have been more appropriate.
Wire wrapping components are pretty uncommon (for reasonable prices) today it seems :(
I plan on doing so, and I've had to scour surplus stores and follow eBay searches for months to avoid paying a fortune
What about in the next episode you build a 80286 based logic board?
There is a setting in putty to set backspace to send ctrl+h
3D printing with metal wire can do clean job for board line connection
Grants site isn’t working.. how can I get the source code?
I was really hoping you would revisit the Game Brains project. I felt like it was left unfinished. It never got proper controller ports, It never booted that CP/M computer, and it never go a custom case. I would have liked to see a final finished product.
In my professional world of graybeard engineers we often say "double-E PROM", but since windowed EPROMs are virtually obsolete it is fine to say "EPROM" in conversation as long as everyone is familiar with the architecture in question.
Oh no, the site with the diagram is gone. Anyone know of an equivalent? This looked like a fun project
I kept waiting for him to say "happy little trees"
I would have used multiple sockets for the Z80 to do the a cross wiring adapter instead to keep the perfboards underside cleaner :) Else really nice work!
nice build
Even if Ben can do this Microsoft Z80 in netbook formation as a suggestion using a real non-working netbook, then that is something he might try.
You can get a Z80 with a clock speed of 20 Mhz and even overclock it another 5 Mhz. The only thing is you will need fast memory chips with less than 50 nS access times.
Have you considered using verowire?
I'm so busy trying to ignore the light leak effect, I'm missing what Ben is trying to tell me! Leave it out!
I think they're using it to hide a cut where they skipped a bit of Ben's sentence. Noticed it in the last video too - not sure how long they've been doing it.
Too long!
Try using 41256 dynamic ram chips and use the Z-80 Refresh pin. Bank switching is a challenge with 27256 EPROMS or 62256 EEPROMs. too easy back in the 80's. Gotta add a CTC and SIO chips Sync comm's. I designed terminals for Data general systems in the early 80's.
Heya Ben... love the vids - but have a couple suggestions for future projects - one would be perhaps a bit of color-coding of your wire jobs for the camera - and upsizing the font and fullscreening the window size of your terminal/dos prompt screens to be more visible in the videos. :)
Drake Steele He’s leaving the show soon, so...
There's a typo in the description where it says what instead of watch
I also built it, what cristal had your board?
the MSX is pretty much entirely off-the-shelf stuff... has anyone made one from scratch yet?
That's actually a great project idea, good call
is it possible to connect character LCD to this board?
Final super solder episode? Is the show ending?
Yes unfortunately. He's gonna be working with Dave at eevBlog though!
Wait a minute, that means... we are getting new Ben Heck episodes on the eevBLOG channel, and Felix episodes on this channel. I am total fine with that.
BigJoe_Buster no this channel ends, Felix ends. The end my dude. Blame Ben heck.
Have they announced this?
Wait, what???!!! He's going to be working with Dave at eevblog? Damn, I can't stand that guy. He's arrogant and his voice grates on my ears. I can't stand his fake overly enthusiastic tone. Dave sucks big time. Looks like I won't be seeing any more of Ben's great work anymore. WHY BEN, WHY???
Next: Ben Heck hand solders a 68000 machine!
What a nice little thing :)
Ben could make his own competitor to the Nintendo Entertainment System
Soldering is fun to watch because it's kind of a struggle we can all sympathize with. Truthfully how many hours did this take you?
What should have included a Floppy Disc Controller, Should have used Kynar wire for wiring of the chips and I think that there should have been two EPROM sockets one for Assembler and one for the BASIC interpreter. Wouldn't it be nice to do this...
ASSEM 10
10 CODE
LD &H40, BC
ADD &H20, BC
LD C, A
OUT (&H21), A
LD B, A
OUT (&H22), A
RET
20 REM STUFF
For a while there, Ben was channeling Bob Ross!
If you still have that computer, could you try this little program and see what happens.
10 A=1E18
20 B=1E19
30 C=1E20
40 D=A*C
50 E=B*B
60 PRINT D,E
If the BASIC you have is based upon Microsoft, the above program ought to error out with an overflow error in line 50. Obviously both D and E should have the same value of 1E38. But the overflow is due to premature detection of an overflow in Microsoft's floating point.
1E18 is represented as 0.86736174x2^60
1E20 is 0.67762636x2^67
To multiply them, the exponents are added, getting 60+67=127 and the significands are multiplied, getting 0.58774718. So the result is 0.58774718x2^127 which is 1E38.
But 1E19 is 0.54210109x2^64
Let's multiply the same way. Added the exponents, getting 64+64=128. But the floating point format used has a maximum exponent of 127, so it immediately flags an overflow. But let's ignore that for now and multiply the sugnificands, getting 0.29387359. But the floating point format used requires the significand to be in the range [0.5,1.0) and 0.29... is too small. So it needs to be normalized by multiplying it by 2, getting 0.58774718 and the exponent needs to have 1 subtracted from it to compensate, getting 128-1=127, which is a totally reasonable number.
I discovered this bug on the TRS-80 and over the years checked for its presence on every version of Microsoft Basic I encountered. Found it on the IBM PC and every compatable until the FP Math Coprocessor became standard (80486 and later processors).
Why is this the final one?
What wire do you use?
I'm curious about this as well, it looks pretty thin.
Let Felix take a nap he look tired as hell at the beginning of the episode
00:20 - feeling a little jealous here...
What gauge is this wire?
I'm not sure what they used but 30awg Kynar wire is a good option. I've used loads of it for this purpose.
Thanks. The larger the number the smaller the wire, right?
Cable and Wire management is my Achilles heel :)
How about an i8085A system?
Please build a robot project using the odrive I would love to see something like that.
1:42 Now that's a shibboleth: you can identify a software person by the fact that they flinch visibly at 1:46.
Why is this the last super solder episode?
the last super solder episode that Ben will do on the channel, since he is leaving later this year..
Do another super solder episode. This time make a Motorola 68k sbc with one of their ridiculously high pin count dip packages
Tell someone you’re a supernerd without saying you’re a supernerd:
"I was just arranging my collection of Z-80 CPUs chronologically"
*_WHO_* does that?
Could be the LED legs that are magnetised instead of your tweezers
TI charges stupid amounts of money for ancient z80 calculators....
That's why I've collected a few TI-8x calculators for like 5 to 8 dollars by hitting Goodwill and such at the end of college semesters.
I had a 85 back in the 90s. Loved it for it's ability to run basic.
Holy shit! Freaking awesome
It is a shame that I just found this video and the schematic web page is now no longer, bummer.
The T-600 robot in Terminator has a Z80 in its head overclocked to 4Mhz
Felix in the background looking at Monster for a job when BenHeck show ends
can you turn a Sega Stv board into a home console
CPU in the TRS-80 Model 1 as one example. Get back to assembly language programming using EDTASM ... builds character. By the way, how much did it cost to buy the Microsoft Basic to load into the eeprom? How different is it from the Radio Shack version that was purchased from Microsoft?
Nurburgring?
I think your pronunciations for Eprom and Eeprom make more sense than any other: you're just saying the words phonetically
But can it run Crysis?
ChickenTVMAN is that meant to be funny? Ha ha ha. Not.
What is your problem!?
ChickenTVMAN "groan" Get out.
Twice The Mega Power someone who posts ‘but can it play crysis?’
But will it blend? HAHA FUNNY
Grey Spaghetti Zed-Etti
But on the surface, it looks good and ready.
Someone should re-create an S100 type machines using modern components... If I only had time, it would be a cool project. CP/M anyone?
holy connect the dots batman........
its a fantastic tube very interesting and Ben knows his kaka... but there is an L in soLder..... please use it,
Let's make this road like Nuremburg!.... I think you meant Nurburgring.
Oh come ooon.
Needs 128K, a disk rom and there you go... CP/M !!!
Vincent GR there's a CP/M distribution package called RomWBW that works a treat with a modified version of this. It boots CP/M from flash and has built in support for loads of different hardware. I'm using it with a machine with dual floppy drives, an 85MB IDE drive and dual serial ports. It supports the Z180 too so if you want a 33MHz 8 bit micro you can.
That's so cool!!!
"Beauty!"
😋
"e-squared-prom"
pron
Nice 👌👌👌
"->What
now give it a alphanumeric display
Gizmo The way I did it with this design was to use an Arduino as a serial terminal outputting to a 40x4 LCD display. That way you don't have to touch the ROM image. I'm sure many would call that cheating though.
beeeeep "you sank my battle chip!"