Running MSBASIC on my breadboard 6502 computer

  Рет қаралды 233,185

Ben Eater

Ben Eater

Күн бұрын

Пікірлер: 563
@PC_YouTube_Channel
@PC_YouTube_Channel 10 ай бұрын
I saw the title in my notifications and said out loud "no way". I never thought I'd learn so much about the absolute lowest level parts of computing. But you have singlehandedly made it accessible, entertaining, and interesting for me.
@malumphasma
@malumphasma 10 ай бұрын
I used to think I knew the basics, until he did this series. He has taught me way more than any book. I hope he builds more soon.
@ChrisAthanas
@ChrisAthanas 10 ай бұрын
Ben Eater is a National treasure and you are lucky to have him
@danivation
@danivation 10 ай бұрын
I did the EXACT same thing lol
@13mudit
@13mudit 10 ай бұрын
Exactly!! this guy started from explaining how silicon gates work! And now he's running BASIC.... mind blowing
@mokoepa
@mokoepa 10 ай бұрын
@@13mudit 🤣🤣🤣 Couldn't get any crazier....
@Manabender
@Manabender 10 ай бұрын
4:39 Ah, the tried and true method of "just keep hacking away until the compiler stops yelling at you" method. My favorite.
@OrangeDied
@OrangeDied 10 ай бұрын
me trying to use linux
@jimbo80982
@jimbo80982 9 ай бұрын
@@Rx7man The definition of progress right there! 😂
@carldaniel6510
@carldaniel6510 10 ай бұрын
Ah, the memories. My friends and I played with this stuff back when we wre in high school and the 6502 was new. There was no open source of MSBASIC back then, so we wrote our own disassembler (in FORTRAN!), went through the MSBASIC code and figured out what everything did and produced an buildable source, which we could then modify and assemble with our own assembler (also written in FORTRAN). OSI Superboard was our breadboard. Good times.
@Schlups
@Schlups 10 ай бұрын
That sounds super impressive. What are you doing now?
@dougabugg
@dougabugg 10 ай бұрын
Wow, that sounds like a fun time! Sometimes I wish I grew up when computers were somewhat "simpler" and lower level. My first experience (2008?) with computers was the web, specifically HTML, I skipped JavaScript and dove right into PHP and MySQL, and to this day I still prefer Python over JavaScript (side note, look up Brython, which is a cool project that translates Python into JavaScript)
@carldaniel6510
@carldaniel6510 10 ай бұрын
@@Schlupssoftware developer for 40+ years. Medical technology, aerospace, banking, all sorts of things. Disassembling & then understanding MSBASIC was one of the best learning experiences ever. We learned about the basics of parsing, expression evaluation, graphics, ... the list goes on and on. We hacked that OSI superboard to support raster graphics (it only did character graphics out of the box). That's why I love Ben's 6502 series - for me, it was a great way to learn about how computers REALLY work, and that foundation has served me well for 40+ years.
@awesomecronk7183
@awesomecronk7183 10 ай бұрын
This is super cool
@yaboi269
@yaboi269 10 ай бұрын
@@carldaniel6510fascinating
@Darkstar2342
@Darkstar2342 10 ай бұрын
SCRTCH ("scratch") clears the memory, it's basically the same as the "NEW" statement. No idea why different implementations call it at different times during init, but I agree with you that it does not really matter at all as long as it is called *somewhere* ...
@TaeruAlethea
@TaeruAlethea 10 ай бұрын
I'd guess it's one of those micro optimizations for specific implications.
@wbfaulk
@wbfaulk 10 ай бұрын
​@@TaeruAlethea You know, because of the implication.
@ecosta
@ecosta 10 ай бұрын
My bet goes on memory timing. Some architectures might fire a memory reset and run some CPU ops instead of wasting cycles waiting for the memory chip reset.
@Darkstar2342
@Darkstar2342 10 ай бұрын
@@ecosta what? that makes no sense. what even are "cpu ops" supposed to be? this is not HW initialization if you mean that
@ecosta
@ecosta 10 ай бұрын
@@Darkstar2342 It makes sense if you ever read timing diagrams in documentations for old ICs of old computers. Changing the order of the opcodes is a classical optimisation trick.
@narayanbandodker5482
@narayanbandodker5482 10 ай бұрын
Next we run DOOM!
@li0nleo918
@li0nleo918 10 ай бұрын
yes
@spiralcrunch6978
@spiralcrunch6978 10 ай бұрын
Lol
@Hans-gb4mv
@Hans-gb4mv 10 ай бұрын
over a serial line?
@MikelNaUsaCom
@MikelNaUsaCom 10 ай бұрын
file system? operating system?
@mihaiplesa5218
@mihaiplesa5218 10 ай бұрын
Yess
@markjones5973
@markjones5973 10 ай бұрын
4:27 "i will be equal to eater". You ARE Eater!!
@works4me89
@works4me89 10 ай бұрын
if he is Eater then sentence "i will be equal to eater" is true ;)
@CompressedSoup
@CompressedSoup 10 ай бұрын
​@@works4me89 "will be" is not true
@AKuTepion
@AKuTepion 10 ай бұрын
ROFL :D
@ThePongles
@ThePongles 10 ай бұрын
@@CompressedSoup He was equal to eater, he is equal to eater, he will be equal to eater. Checks out to me.
@marred2277
@marred2277 10 ай бұрын
if (i == eater && me == watching) then with world { all_is_right = TRUE );
@failgun
@failgun 3 ай бұрын
24:40 is such a cool moment for the series since the whole thing started with Ben scoffing at the triviality of writing Hello World in Python. Then it comes full circle doing the same in BASIC but now understanding so much more of what's happening underneath.
@cheeseparis1
@cheeseparis1 10 ай бұрын
I had a great day, an amazing concert, late dinner, a few videos, now let's go to bed. _Ben Eater video pops up_ - LIKE - Play - Notice the "cmp 3" at 30:35 and yell "#3 !!", glad to still be able to notice it - Read comments and enjoy this moment back in time Thank you, this was great!
@Beus38
@Beus38 10 ай бұрын
Yes! Also noticed the suboptimal branching there - why not just BEQ is_cntc and "else" continue to RTS :)
@Scriabin_fan
@Scriabin_fan 10 ай бұрын
I always feel like a kid on Christmas morning every time Ben uploads.
@MiroslavPopov
@MiroslavPopov 10 ай бұрын
It is better than Christmas! At least, I'm not checking for Christmas 5 times per day.
@zanmaria4960
@zanmaria4960 10 ай бұрын
Count me in the party!!
@GeeTheBuilder
@GeeTheBuilder 10 ай бұрын
On my Uni course in 92 we made single board 68000 computers using wire wrap etc Then wrote assembler. So I got an understanding of how computers work from this basic level. I since had 30y as a Software engineer and knowing how the low level worked was invaluable Most modern software engineers haven’t a clue about this stuff 🤷‍♂️ Great videos, Ben. 🎉
@mechaform
@mechaform Ай бұрын
This series continues to delight
@bsvenss2
@bsvenss2 10 ай бұрын
Unbelievable incredible videos with the best teacher on the internet. Thanks!
@SanchoPanza-m8m
@SanchoPanza-m8m 9 ай бұрын
Wow, that's nearly $30 USD!
@bsvenss2
@bsvenss2 9 ай бұрын
@@SanchoPanza-m8m Yeah... 29,35 USD today. 🙂
@amconners
@amconners 10 ай бұрын
I don't have a 6502 or the ability to justify buying a whole bunch of parts right now, but I do have an 8085, enough parts already lying around that I'm able to make something work most of the time, and the stubbornness to try following along at home even with the intermediate step of translating the entire thing to this different architecture before getting to the part where I add it to the 8085 breadboard computer and honestly? I think it's taught me even more this way! just watching these videos is educational enough, and you make the content so accessible and easy to understand, building something from them definitely gives me more of an idea of how things work and why, but taking it that one step further and getting a version of what you were showing to work with my computer? it's like I'm testing my knowledge of what I just learned, by taking what I learned and doing something with it, asking myself questions like do I understand it well enough that I can recreate it on my own 8085 computer? when I'm using different parts that have different datasheets, do I know where to start looking in mine for the closest thing to an analogue of what you showed from yours? do I understand what this code does and how it does it well enough that I can write my own version of it in 8085 assembly code? and the answer is usually yes, because your videos do an excellent job of teaching a wider concept by narrowing down on one specific instance. It doesn't HAVE to be a 6502, that's just the specific part you used, and the actual concepts are so much more applicable. since I'm on an 8085, I also won't have wozmon*, but that's okay because it doesn't HAVE to be wozmon, it just needed to be a simpler starting point than MS-BASIC, etc., etc. *I might try to port wozmon over anyway just for the practice. and to make sure everything so far is working. and also because that'd be fun, I think I guess what I'm trying to say is thank you, I'm learning so much more from these videos than I ever thought I could, and I'm enjoying every minute of it. and with these past few videos it's looking more and more like my end goal of running CP/M 80 on this breadboard thing I built myself is also possibly achievable for me someday
@BrightBlueJim
@BrightBlueJim 10 ай бұрын
But then you find out why Ben chose the 6502 over many other microprocessors: because a LOT of software had already been developed for it. Of course, there was a lot of software written for the 8080 as well, in particular for CP/M, so best of luck to you in getting that running!
@OSVS_Mike
@OSVS_Mike 10 ай бұрын
The 8085 is my FAVORITE CPU.
@etmax1
@etmax1 6 ай бұрын
The best thing if you're interested in the SW aspect of it all is to buy a small Raspberry Pi Pico or a a dev board from either Infineon or ST for ARM, or Microchip for AVR or TI for MSP430, they cost between $5 and $40 and you don't need a programmer and you will have something that fits in your pocket that will give you the HW to port this to. If it's the HW you're after then Ben's project or your own 8085 it is.
@MotoRideswJohn
@MotoRideswJohn 10 ай бұрын
Amazing where this series started and where you are now. I've been considered a computer professional my entire life. How much I didn't know until following along with you....
@bradley1995
@bradley1995 2 ай бұрын
Yeah, as a software dev nearly half my life now seeing how he writes code and creates/works with hardware is insane and on a whole different level. Really makes you think how much more there is yet to learn! Ben out here schooling us in the best way!
@michaelcoviello
@michaelcoviello 10 ай бұрын
Thanks!
@micha-42
@micha-42 10 ай бұрын
Fabulous work. I've been directing my college students to your videos for years (and I know and appreciate your feelings about higher ed), keep up the amazing work.
@pchela99
@pchela99 10 күн бұрын
Amazing content. So easy to follow and fluid. If I only got anything like that 35 years ago, when I was cracking and "reverse engineering" Atari Basic and 6502 Atari Assembly on my 800 xl, things would have been smoother. Thanks Ben for your amazing high-quality videos on 6502 and 8bit computing.
@DanielCharry1025
@DanielCharry1025 10 ай бұрын
That little software product started a revolution. Nice seeing you bring it to your setup. Cheers!
@bliksemdonder5624
@bliksemdonder5624 10 ай бұрын
Very cool! The 6502 and Z80 were our go-to micros 40+ years ago. These units allowed the creation of many new career paths for many people as well.
@m1geo
@m1geo 2 ай бұрын
And with videos like this, I'm sure will inspire many more :)
@Xpun-oi2zz
@Xpun-oi2zz 15 күн бұрын
I'm brand new to breadboard computing. And can't wait to get to a point where I can use this. Great job with all of this. It's guys like you & stuff like this that help us noobs & make things just a bit easier to get a grip of. So Thank you for all you're doing. .. Respect.
@XyloTechLabs
@XyloTechLabs 7 ай бұрын
Hi, I'm a kid just 12 years old and I made a computer using a 6502 processor by learning from you. Thanks !
@ZeroPlayerGame
@ZeroPlayerGame 10 ай бұрын
Honestly amazed by your fearlessness more than anything. "Well let's just comment everything and see if it complains".
@aceJacek
@aceJacek 10 ай бұрын
This guy is a legend.
@mrbrianparker
@mrbrianparker 10 ай бұрын
Fantastic! This whole 6502 breadboard project never ceases to amaze.
@satyamedh
@satyamedh 10 ай бұрын
just realised it's been almost exactly 5 years I started watching this channel time flies
@turolretar
@turolretar 10 ай бұрын
fruit flies like a banana
@m1geo
@m1geo 2 ай бұрын
Right. I have been re-watching the videos and following along on an FPGA. The weird part is seeing my comments from 4+ years ago!
@satyamedh
@satyamedh 2 ай бұрын
@@m1geo watching your own old youtube comments is gold except I was 11 and they're fucking cringe :D
@AlanCanon2222
@AlanCanon2222 10 ай бұрын
The memory map of the C64 treated zero page addresses $00 and $01 differently one was the data direction for the other, which was used for bank switching and cassette hardware control.
@DavidLatham-productiondave
@DavidLatham-productiondave 10 ай бұрын
That's because the 6510 processor explicitly supported memory banking with these two addresses. It had two internal registers that could be written to (at 0x00 and 0x01). These addresses when read, returned the last value written. The CPU was then wired to the extra address lines from specific pins assigned to this purpose.
@hb-man
@hb-man 10 ай бұрын
Definitely a hardware feature of the 6510 CPU: You loose two bytes to gain access to many more bytes.
@EinChris75
@EinChris75 10 ай бұрын
People took months, if not years to develop that in the first place, but Ben can explain it in 30something minutes. Just brilliant. Thank you!
@kazimdfoysal9605
@kazimdfoysal9605 10 ай бұрын
i was randomly suggested by this men on youtube home page with 7 years old making gate on breadboard.and i come his channel and shocked after all of this.respect bro for this video.
@thavith
@thavith 10 ай бұрын
Thank you, love this. Helps demystify what was incomprehensible to me those many years ago.
@AirmanCS
@AirmanCS 8 ай бұрын
I have never thought of even touching basic, but here Im know how it all works even. I can see why this could be useful at the time, I actually like the way it codes... but im just grateful I can still copy paste and review code live, thanks future. And Ben this series should be on a museum of tech, is just so complete... should be a 101 on computer science everywhere
@AuratticStride
@AuratticStride 10 ай бұрын
Oh man these are some of the best computer engineering videos around! I see those empty LOAD and SAVE subroutines - time to add USB / SD card / file storage next? :P
@DoctorMikeReddy
@DoctorMikeReddy 10 ай бұрын
That would be awesome. Even battery backed RAM
@TheRavenCoder
@TheRavenCoder 10 ай бұрын
USB and SD card file storage is complicated. Probably be a lot easier to use SATA based storage.
@TheScarvig
@TheScarvig 10 ай бұрын
@@TheRavenCoder if my memory serves me right SD cards can be accessed through SPI... considering the fact that he already bitbanged a serial interface onto this system i think bitbanging SPI shouldnt bee too difficult for him. might be slow, but hey the thing will feel more like its reading from a cassette if its slow to load stuff XD
@luz_reyes_676
@luz_reyes_676 10 ай бұрын
​@@TheRavenCoderGeogre Foot (YT and Reddit) has made some code (I think C/asm) to use an SD card for his computer's file system
@TheRavenCoder
@TheRavenCoder 10 ай бұрын
@@TheScarvig I did not know that. But yeah, looking at some documentation, that should be doable.
@ghosthuntergr
@ghosthuntergr 10 ай бұрын
The BEST teacher as always… Waiting for the Save and Load commands with file system support for basic 😊
@BrightBlueJim
@BrightBlueJim 10 ай бұрын
As for me, I'm waiting for his flash-based floppy emulator
@r6u356une56ney
@r6u356une56ney 10 ай бұрын
@@BrightBlueJim NO! Cassette tape drive!
@shanee7511
@shanee7511 10 ай бұрын
Absolutely incredible how you are able to make every topic you share so understandable and absolutely a joy to watch and learn. One of my absolute favorite content creators to view on YT and I cannot wait to se what you share next.
@alibaba6194
@alibaba6194 9 ай бұрын
the best computer engineering ever ! Love from Morocco !
@SB-qm5wg
@SB-qm5wg 9 ай бұрын
Your skill-set is incredible. Even your vim game is tight.
@mitchellr6819
@mitchellr6819 10 ай бұрын
Your videos took me from a basic understanding of a transistor to BASIC. It’s been a great journey!
@etmax1
@etmax1 6 ай бұрын
Thanks Ben, that was way more interesting than I thought it would be.
@theshindigg
@theshindigg 10 ай бұрын
It's an AMAZING start to the day when I see a Ben Eater video notification!
@DM-qm5sc
@DM-qm5sc 10 ай бұрын
Watched the whole video. was great
@sliiiimjim
@sliiiimjim 10 ай бұрын
lol
@andraselias995
@andraselias995 8 ай бұрын
Nice to see the codes from Bill and Steve run hand in hand on this computer :D
@jimhark
@jimhark 8 ай бұрын
Do you mean Bill and Paul?
@andraselias995
@andraselias995 8 ай бұрын
@@jimhark I mean Bill Gates and Steve Wozniak
@khatharrmalkavian3306
@khatharrmalkavian3306 10 ай бұрын
Well, you started with chips and breadboards and now you're running the first programming language I learned as a kid.
@ronaldwaller4221
@ronaldwaller4221 10 ай бұрын
Ben, absolutely fabulous work! I love your videos! I see you appear to be a VI power user of sorts. Two Quick questions: How do you switch back and forth from the file you are editing and the output from your compiler command? And how are you splitting the view to have the directory listing on the left and selecting the file you want in the editor? Thanks for all you do! -Ronald
@AndyG-_-
@AndyG-_- 10 ай бұрын
Well done Sir, pushing the envelope of the breadboard computer! Thank you.
@ddacombe4752
@ddacombe4752 10 ай бұрын
wozmon and ms basic are awesome additions to your computer. ive followed along, built the computer but not yet implemented the code, great job.
@jasonbenson036
@jasonbenson036 10 ай бұрын
Thank you so much for this series. I've been following along since the start and loving it. I grew up with a C64, and while I've been using it and other 8bit machines my whole life, I never imagined I'd really understand them the way I do now.
@RussPitcher
@RussPitcher 10 ай бұрын
Thanks
@slemsvamp
@slemsvamp 10 ай бұрын
This is such a blast to the past, thanks for this entire series :D
@Eliasdbr
@Eliasdbr 10 ай бұрын
Amazing! I got into computer science thanks to you. You are so good at explaining these concepts!
@chillyvanilly6352
@chillyvanilly6352 10 ай бұрын
you Sir are an ABSOLUTE legend! I adore your vids! Rarely are there vids that are that excellent and educational and just extremely entertaining as well! It just sparks so much interest and brings out the passion to just go and build/code/learn stuff! THANK YOU!
@lythd
@lythd 10 ай бұрын
this is really cool! im working on my own operating system for the 65c02 inspired by ur videos
@leonardopierangelini3097
@leonardopierangelini3097 10 ай бұрын
“Reinventing the wheel”, also in informatic, is NOT always a waste of time … as is said at work… Fascinating 😍
@BrightBlueJim
@BrightBlueJim 10 ай бұрын
But that's just it: he didn't reinvent the wheel. He took something that already had a ton of development into it, and adapted it to his own hardware. Which if you ask me, is far superior to trying to emulate or reverse-engineer the custom chips in, say, a C-64.
@leonardopierangelini3097
@leonardopierangelini3097 10 ай бұрын
I understand what do you mean, and yes you also are right 😊
@leonardopierangelini3097
@leonardopierangelini3097 10 ай бұрын
But he also write all from scratch, of course reusing knowledge already solidified
@jonathanhillebrand4904
@jonathanhillebrand4904 10 ай бұрын
This series is one of the best educational series ever made.
@Hans-gb4mv
@Hans-gb4mv 10 ай бұрын
After not going for development all those decades ago, I'm finally learning some assembly :D
@timsanders9111
@timsanders9111 10 ай бұрын
Agreed. I my digital hardware professor does not come close to this.
@Danbotics
@Danbotics 10 ай бұрын
This has been an enormously educational and entertaining series! Thankyou so much for making it! Is there any chance you could do a very quick summary of the development stages you’ve gone through to get to this point? This has been a long series and it might be hard for new viewers to catch up to the amazing place you’re at now.
@DantalionNl
@DantalionNl 10 ай бұрын
Great to hear about this open source minipro software, Time to revive this gem of a device from my parts bin!
@johnm2012
@johnm2012 7 ай бұрын
It's good to hear that the black T48 is now supported as the older white ones are getting difficult to find.
@RonsStudio
@RonsStudio 9 ай бұрын
This is really cool. I [finally] got this working on my breadboard. Had trouble with the windows download for the compiler and all so used cygwin, which is a linux environment that runs on Windows. Not binary compatible with linux but you can get source code for things like the ms basic and cc65 compilers and compile them. Used the Xgpro programmer (windows based) to put the bin file on the ROM. Next is to do the input buffer and see how that goes. Ben Eater - appreciate all the work you put into these.
@RonsStudio
@RonsStudio 9 ай бұрын
Update: Added a "BYE" command to MSBasic to exit back to WOZMON so we don't have to reset to exit the program.
@lenardEkko
@lenardEkko 10 ай бұрын
been following this project since I was still In school. I am a CS masters student. Love it
@DaveEverett01
@DaveEverett01 10 ай бұрын
Great stuff Ben. I have been working with an INS8073 recently that has Tiny BASIC in rom. It only works with a terminal and echos everything back to the terminal. For backspace, it sends
@gregorymccoy6797
@gregorymccoy6797 10 ай бұрын
One of your best videos yet!
@Poopmouth-fy5go
@Poopmouth-fy5go 10 ай бұрын
I am a simple man, I see new Ben Eater thumbnail, I like before getting 3 seconds into video. Thank you Ben Eater, I think I speak for us all when I say we love you.
@ChrisAthanas
@ChrisAthanas 10 ай бұрын
Amazing clear and efficient breakdown, impressive work, thanks for clearing up the mysteries
@DanelonNicolas
@DanelonNicolas 10 ай бұрын
Love your work. Like A LOT! it's awesome, also the story telling, the way you count and show the modifications of the code... just awesome. great!
@jorgerangel2390
@jorgerangel2390 10 ай бұрын
Dude this is so nostalgic, brings me back to uni in my operating systems class
@electricshmoo
@electricshmoo 10 ай бұрын
Madness! Truly impressive progress and great explanation!
@JTCF
@JTCF 10 ай бұрын
I love your content. An amazing introduction to how computers work, and this new series is incredible for understanding the lowest levels of what allows programming languages to exist and work.
@StevenHokins
@StevenHokins 10 ай бұрын
Awesome video series Ben, thank you ❤
@madson-web
@madson-web 10 ай бұрын
Ben makes everything seems so easy and ordinary
@BrightBlueJim
@BrightBlueJim 10 ай бұрын
Which is great because it helps people new to this get over the fear of the technology. Now, whether it ever actually IS that easy and pleasant is still up for debate.
@charlesh8536
@charlesh8536 10 ай бұрын
Cant wait to see the debian fork to run on this
@fqed
@fqed 10 ай бұрын
Amazing video again, awesome work
@popalex
@popalex 10 ай бұрын
That is so cool ! Basic brings back memories.
@alexmcd378
@alexmcd378 10 ай бұрын
Oh yes, this is what I was looking forward to. Need to get mine out and finish it
@xotmatrix
@xotmatrix 10 ай бұрын
Great work, Ben! You make it look so easy.
@DullBoyJack
@DullBoyJack 10 ай бұрын
This whole series is such a fantastic introduction to how a computer actually works. Anxiously awaiting the video where you make LOAD and SAVE do something... 😁
@nidavis
@nidavis 9 ай бұрын
via Datasette!
@r6u356une56ney
@r6u356une56ney 10 ай бұрын
For your next trick, build an interface that connects to a cassette tape drive that uses a DAC/ADC pair to generate/decode FSK tones, and then write code for LOAD and SAVE that use that to perform those functions!
@sean_vikoren
@sean_vikoren 10 ай бұрын
So fun to ride along. I remember typing an assember / editor into memory on the commadore, so I could then type in and assemble a game.
@FlotteeMottee
@FlotteeMottee 2 ай бұрын
Nice Video! Thanks for this :)
@xxz4655
@xxz4655 10 ай бұрын
Sweet I love the continuity
@syjwg
@syjwg 10 ай бұрын
I appreciate your description of some error, and some solution to fix it (5:10). Nowadays when a "bug" has been found, the blame is more of "you did this" instead of "why" and then fix the problem.
@X-OR_
@X-OR_ 10 ай бұрын
10 For X=1 to 10 20 Print "Great Video ! "; 30 Next X >Run Great Video ! Great Video ! Great Video ! Great Video ! Great Video ! Great Video ! Great Video ! Great Video ! Great Video ! Great Video !
@glenm9376
@glenm9376 10 ай бұрын
I was wondering if the semicolon would work over the serial. By the time you loop you have the CR.
@squarerootof2
@squarerootof2 10 ай бұрын
10 REM "This is a comment". 20 GOTO 10 >RUN I suppose the command REM comes from "Remark"? I learnt BASIC on a ZX Spectrum 48K with rubber keyboard and later on I graduated to the the great Comodore 64 which had a proper keyboard. Loading a simple game from tape could take from half an hour to maybe an hour. A floppy disk was a huge luxury back then. Time flies and so does computer tech.
@Sheynan55
@Sheynan55 10 ай бұрын
These videos are great! Thank you so much
@der.Schtefan
@der.Schtefan 10 ай бұрын
Amazing how this works out of the box by simply pointing it to a few locations, and just needs 3 bios routines.
@renakunisaki
@renakunisaki 10 ай бұрын
Simplest thing Microsoft ever made!
@kreuner11
@kreuner11 10 ай бұрын
I wonder how it worked on C64 where you could also move the cursor up and down
@der.Schtefan
@der.Schtefan 10 ай бұрын
@@kreuner11 Not sure that the V2 version here corresponds to the C64 "V2", especially since it is a rebranded version, and the C64 has quite extensive KERNAL routines. They probably modified a lot of the input/output routines
@BrightBlueJim
@BrightBlueJim 10 ай бұрын
@@kreuner11 I'm sure it's just a matter of writing routines for those. Note that Ben chose a particular port as his starting point (cbmbasic2), which he never explained. It's likely that he looked at all of the implementations and found this to be the one with the fewest needs for hardware-specific functions. I also recall that the Commodore Pet had editing features that allowed you to edit any program line that was showing on the screen, but this also would have required choosing ASCII characters for the four arrow keys, and writing functions to detect those. I suspect that the "backspace" feature he showed here was intended only for development, where programming was being done from a serial terminal.
@dhardingham
@dhardingham 10 ай бұрын
Wonderful!
@TheMeldanor
@TheMeldanor 10 ай бұрын
I would watch a full size documentary of this guys life just to understand how he got to this level of knowledge, entertaining value and fearlessness. Awesome video and I've never thought we would run BASIC on the breadboard computer. Next step is a second computer with a working network stack?
@gregjohnson5194
@gregjohnson5194 6 ай бұрын
You are one smart cookie. 👍
@m4d3ng
@m4d3ng 10 ай бұрын
NGL seeing that running made my jaw drop. Also, please implement some sound hardware and code where when you press ^C it emits a loud and obnoxious beep, shared with ^G for “bell”.
@4115steve
@4115steve 10 ай бұрын
This stuff is awesome, thanks for sharing this knowledge.
@emilwallin1176
@emilwallin1176 10 ай бұрын
I love when ben uploads
@JohannesHeld
@JohannesHeld 10 ай бұрын
Wow, that's amazing!
@DefaultFlame
@DefaultFlame 10 ай бұрын
A delightful watch as always.
@MrThomashorst
@MrThomashorst 10 ай бұрын
You patch MS-Basic for a breadboard computer in about half an hour while I'm able to follow of what you are doing ... you're unbelievable
@sherhy3689
@sherhy3689 10 ай бұрын
KZbin was built for your videos
@fra4455
@fra4455 10 ай бұрын
Great video✌
@Sommyie
@Sommyie 10 ай бұрын
Nicely done!
@PhilR0gers
@PhilR0gers 10 ай бұрын
Interesting to see MICROTAN as a build option for Microsoft BASIC. The UK based Tangerine Microtan 65 was my first computer, built from a kit. I only programmed it in assembler as I couldn't afford to expand it to include BASIC. I am now following along with your build, but instead of using Wozmon, I'm using TanBug. It's all very similar, so easy to adapt.
@andrewhussey2002
@andrewhussey2002 10 ай бұрын
Ditto here! Many hours punching a hex keypad. Half way through building up a Microtan65 as the one I built has long disappeared.
@Mikaminei
@Mikaminei 10 ай бұрын
I need a Fire Alarm Sound for Upload Notifications from you
@GameBacardi
@GameBacardi 10 ай бұрын
I would like to order CD in mail everytime when video come, as mp4. ...so I don't need visit yt :D
@Mikaminei
@Mikaminei 10 ай бұрын
@@GameBacardi me too xD
@Mikaminei
@Mikaminei 10 ай бұрын
@@GameBacardi ill Pay up to 10 Grand per CD
@captainboing
@captainboing 10 ай бұрын
Very insightful. Thanks
@josefsajdler5066
@josefsajdler5066 10 ай бұрын
Hi, in the ISCNTC (around 30:48) - wouldn't it be better to conditionaly jump if it was control-c and let it through to rts if it wasn't? And (I do realize it's only 2 instances, however) would it be possible to jump to label to output 0d0a? wouldn't it save a byte or two?
@renakunisaki
@renakunisaki 10 ай бұрын
Those bugged me too. Might fit back in 250 bytes?
@josefsajdler5066
@josefsajdler5066 10 ай бұрын
​@@renakunisaki Might fit - exactly, if I'm counting right it might save 3 bytes (if all the instructions and addresses are 1byte)
@jschnurrr
@jschnurrr 10 ай бұрын
Me watching these videos: nodding, and saying yep, yep, that's right... Ben at 9:04 "I'm not really sure what this subroutine is or does exactly, or what difference it makes when it gets called..." Me: yep, yep, me too...
@grahamlord86
@grahamlord86 10 ай бұрын
Outstanding
@renhoeknl
@renhoeknl 10 ай бұрын
Informative and yes still nostalgic
@QualityDoggo
@QualityDoggo 10 ай бұрын
Wow! I certainly don't understand this stuff 😂 Amazing to see CRLF goes back so far! Nowadays, CRLF is still generally what MS-DOS & Windows expect for each newline, whereas Unix and Linux just expect LF.
@Knirin
@Knirin 10 ай бұрын
The Unix and Macintosh operating systems used I/O libraries that handled cursor or printer head repositioning. DOS, BASIC, early Fortran, and some other bare metal languages left the programmer to deal with those details.
@BrightBlueJim
@BrightBlueJim 10 ай бұрын
CR/LF goes back as far as ASCII, maybe even further. There were some printing terminals that couldn't do a CR without also advancing the paper, and others, like the Teletype 7-bit models, that separated these functions.
How input buffering works
20:25
Ben Eater
Рет қаралды 198 М.
Installing the world’s worst video card
25:12
Ben Eater
Рет қаралды 989 М.
Une nouvelle voiture pour Noël 🥹
00:28
Nicocapone
Рет қаралды 9 МЛН
coco在求救? #小丑 #天使 #shorts
00:29
好人小丑
Рет қаралды 120 МЛН
Adding 1MB to an 8-bit Computer!
23:04
Noel's Retro Lab
Рет қаралды 246 М.
A simple BIOS for my breadboard computer
21:53
Ben Eater
Рет қаралды 361 М.
Let's Create a Compiler (Pt.1)
1:11:03
Pixeled
Рет қаралды 580 М.
How do hardware timers work?
31:17
Ben Eater
Рет қаралды 981 М.
How Wozniak’s code for the Apple 1 works
37:18
Ben Eater
Рет қаралды 338 М.
Assembly Programming is Hard…
20:00
Usagi Electric
Рет қаралды 116 М.
Keyboard interface hardware
28:27
Ben Eater
Рет қаралды 333 М.
What is the Smallest Possible .EXE?
17:04
Inkbox
Рет қаралды 557 М.
How a Microcontroller starts
28:49
Artful Bytes
Рет қаралды 65 М.
Why build an entire computer on breadboards?
28:43
Ben Eater
Рет қаралды 3,1 МЛН
Une nouvelle voiture pour Noël 🥹
00:28
Nicocapone
Рет қаралды 9 МЛН