What was Coding like 40 years ago?

  Переглядів 1,692,127

The Coding Train

The Coding Train

День тому

🧠 Sign up for Nebula! - go.nebula.tv/codingtrain
Take a trip back in time and let's code the Snake Game in AppleSoft BASIC on a restored Apple II+ computer! GOTO and GOSUB! Line numbers! thecodingtrain.com/challenges...
🎥 Previous video: • Coding Challenge 172: ...
🎥 All videos: • Coding Challenges
References:
🧠 What is Code?: nebula.tv/what-is-code
🎶 Coding Together: / coding-together
AppleSoft BASIC:
🍎 Basic Programming Reference Manual: mirrors.apple2.org.za/Apple%2...
🪧 Peeks, Pokes and Pointers: archive.org/details/peeks-pok...
Apple II Emulators:
☕ Applesoft BASIC in JavaScript: www.calormen.com/jsbasic/
🍎 Apple IIjs: www.scullinsteel.com/apple2/
🍎 MicroM8: paleotronic.com/software/micr...
Editing by Mathieu Blanchette
Animations by Jason Heglund
Coding Together Theme by Will from America ( / willfromamerica )
Eye of the Tiger cover by Leon from @neoexplains
Additional music from from Epidemic Sound
Timestamps:
0:00 Hello from 1981!
0:35 Opening Theme
1:29 Getting started
1:50 Fundamentals: PRINT, line numbers, LIST, RUN, GOTO
3:50 HOME (clear screen)
4:10 Variables
5:11 HTAB, VTAB
5:24 GOTO
5:44 Animation
6:20 Subroutines and GOSUB
7:17 Peeks, Pokes, & Pointers
8:07 RETURN
8:35 Write IF for keyboard interaction
9:35 Delay loop
11:16 Working with Arrays (DIM)
13:47 Remarks (REM)
14:01 Random Food Position (RND)
15:26 Debugging Montage
17:34 Snake Subroutines
23:15 Move Food
25:44 Improvements
27:02 Emulators
27:25 Nebula Class! What is Code?
🚂 Website: thecodingtrain.com/
👾 Share Your Creation! thecodingtrain.com/guides/pas...
🚩 Suggest Topics: github.com/CodingTrain/Sugges...
💡 GitHub: github.com/CodingTrain
💬 Discord: / discord
💖 Membership: ukposts.infojoin
🛒 Store: standard.tv/codingtrain
📚 Books: www.amazon.com/shop/thecoding...
🖋️ Twitter: / thecodingtrain
📸 Instagram: / the.coding.train
🎥 Coding Challenges: • Coding Challenges
🎥 Intro to Programming: • Start learning here!
🔗 p5.js: p5js.org
🔗 p5.js Web Editor: editor.p5js.org/
🔗 Processing: processing.org
📄 Code of Conduct: github.com/CodingTrain/Code-o...
This description was auto-generated. If you see a problem, please open an issue: github.com/CodingTrain/thecod...

КОМЕНТАРІ: 3 200
@crism8868
@crism8868 Рік тому
This guy is like the Bob Ross of coding. His enthusiasm it's contagious!
@jayak3768
@jayak3768 Рік тому
There are only happy accidents and programming bugs.
@JoshuaPritt
@JoshuaPritt Рік тому
Agreed. Immediately reminded me of a high energy bob ross.
@nicktender
@nicktender Рік тому
THATS WHAT IM SAYIN!
@cheeko8080
@cheeko8080 Рік тому
reminds me almost of a Bill Nye haha
@zackattack7103
@zackattack7103 Рік тому
That describes him perfectly
@Alex_C_5605
@Alex_C_5605 Рік тому
This is how I started learning programming. In the Soviet Union in 80s we didn't have personal computers at homes and we didn't have a computer class at school. So we we had lessons, where we studied syntaxes of basic and we wrote programs on paper. Then, once in to weeks, we went to a computer class, where we had 45 minutes to type in a program and debug it. That was a challenge.
@mikesummer670
@mikesummer670 Рік тому
Мы так и в 2006-2007 году код писали на бумажках и даже экзамен так сдавали, большая часть занятий по программированию не за компами была
@mnzcrsh
@mnzcrsh 11 місяців тому
@@mikesummer670в 2019 году, когда я учился в школе, все было точно также, код на листочках. Преподаватели видимо сидят там со времён перфокарт и особо не хотят ничего менять.
@ishikilucas8148
@ishikilucas8148 11 місяців тому
Woah I remember doing that in 2011 in India. 😅
@Bruh-jh7vj
@Bruh-jh7vj 11 місяців тому
I can't Imagine doing It
@seanyao7491
@seanyao7491 11 місяців тому
This is what I experienced exactly in 90s in China by using Apple //e, which amazed me shockingly. So that I am still an Apple fan
@robertmarmaduke186
@robertmarmaduke186 Рік тому
Back in the 1960s, you sat down at a card punch machine with your code scribbled on notes and CAREFULLY typed out the commands and syntax and punctuation, then took the card deck brick to the mainframe window, logged it in, and left. Next day you found that there was a typo _somewhere in the deck,_ and the program didn't run. Yet somehow, humans went to the moon on DOS 6.0, and designed the Golden Gate Bridge _without computers._
@TheCodingTrain
@TheCodingTrain Рік тому
I would love to try this! Any recommendation on a vintage machine I could purchase and restore?
@laincobayne
@laincobayne Рік тому
I would have loved an alternate universe where Apollo ran DOS 6.0 It was an RTOS though, hard coded to core memory.
@gabrielpaiz5954
@gabrielpaiz5954 Рік тому
Plenty of people designed bridges that failed without computers too.
@mikkirefur
@mikkirefur Рік тому
haha. the moon.
@pseudocoder78
@pseudocoder78 Рік тому
DOS 6.0 was way more advanced than any computer software on Apollo. It didn't even come out until the 1990's. Also punch cards were used well into the 1970's. But, I get your point.
@chipotlewhitegirlstarbucks1015
@chipotlewhitegirlstarbucks1015 Рік тому
Whenever I'm putting off doing my coding work, I put on this video. When most people try to explain computer science to me, I get intimated. This guy is different. He has a cozy, comforting sort of enthusiasm that is super motivating.
@leroyjenkinsss1767
@leroyjenkinsss1767 Рік тому
nice user name haha
@yousuck6222
@yousuck6222 Рік тому
Coders will code themselves out of a job in the end.
@Fafr
@Fafr 8 місяців тому
I could actually say the same. I'm the kind of person to just be always demotivated seeing others make things that are far out of my reach, but in this case, even though I am by far not even a decent programmer (yet?), this guy just made me think of making Snake in C++. Sure, for obvious reasons C++ is not Apple Basic, but in general that's still programming. I don't think I've ever been motivated to do something after seeing someone else do something before. EDIT: After watching the video more, I think I've noticed _why_ that's the case. Most (if not all) other content creators just show the finished product and what's in it. This person, on the other hand, shows the failings and the thought process as well, and that unlike other creators, he shows that even professional developers can make silly mistakes, and that it's normal.
@MrJuliankilla
@MrJuliankilla 5 місяців тому
woah haven't seen a marshall pfp in years
@david203
@david203 Рік тому
In the late 1970s I was a software engineer at Digital Equipment Corporation, working in their old mill spider-laden building in Maynard, MA, mostly on PDP-8 and VT-78 systems software. One lonely night during a weekend or holiday I decided to program a snake on the screen of my favorite small computer, the PDP-12. I did it in assembly language, as was most systems programming on the LINC and PDP-8 computers, which had merged to make the PDP-12. The result was a wonderful, keyboard-driven little game that worked perfectly. I wish there had been a way to release it to the world, but all we had was a mostly clunky user group, DECUS, and I didn't feel up to filling out forms and waiting. I guess I'm the only person who ever played that game I wrote on the PDP-12.
@TheCodingTrain
@TheCodingTrain Рік тому
Thank you for sharing this story!
@markussteinbacher8807
@markussteinbacher8807 Рік тому
What an expensive console to run Snake !! ;-)
@axelschweiss7066
@axelschweiss7066 Рік тому
I wrote Assembly on a PDP-11... what beautiful code that was... with it's indirect addressing...
@david203
@david203 Рік тому
@@axelschweiss7066 I also wrote in assembly language for early PDP-11s, when the programs were on punched cards--I designed a way to pack pages using groups of cards to maximize the use of same-page addressing. So after I'd written a program I would then manually pack the cards into pages. The programs thus made efficient use of memory. This was for an early hospital information system that tracked patients as they went through Kaiser Permanente clinics.
@jordanphilipperris
@jordanphilipperris Рік тому
@@TheCodingTrain I could so picture you in a past collab with Bob Ross (I know of him because of an artist friend of mine) :) Anyways, I remember back in elementary school computer class, whenever we had any downtime, we would always be allowed to choose 1 of the following 3 games which are absolute classics: The Oregon Trail, Odell Lake & Number Munchers :) And don't even get me started about the Atari 2600 (I still have one, and it actually works!!) with games like; Crossbow, Frogger 1 & 2, Midnight magic, Pitfall 1 & 2, Time warp, Dig dug, Plaque attack, Pole position, Radar lock, Challenge, Mario bros, Donkey kong, Asteroids, Space adventure, Spider fighter, Moon patrol, Millipede, Mouse trap, Solaris, Pacman Jr, Mrs Packman, Galaxian, River raid 1 & 2, Desert falcon, Centipede, Ghostbusters, Crystal castles & Q-bert
@hidoryy
@hidoryy Рік тому
what I love about your channel is that most of the other coding youtubers only talk about efficiency, jobs, why this or that language sucks because it's 0.0000003ms slower running a very specific thing and so on. Your videos really remind me how coding can be fun
@matttondr9282
@matttondr9282 Рік тому
To me, limited technology is almost more fun. Trying to figure out how to do something with a constraint is more fulfilling than being overwhelmed by the oceans of libraries.
@archvaldor
@archvaldor Рік тому
@@matttondr9282 That's a good point. People often state video games were better in those days because the constraints meant you couldn't rely on processing power to overwhelm you with graphics and suchlike, so you actually had to make an enjoyable game.
@nathanjohnson9715
@nathanjohnson9715 Рік тому
@@archvaldor totally! Look up how much space the original mario bros took up. You'll be astonished.
@archvaldor
@archvaldor Рік тому
@@nathanjohnson9715 LOL I'm actually old enough to remember the 1k memory limit of a ZX81 one of the the first home computers sold commercially. The Mario Bros stuff looked like really advanced technology to me when it came along:)
@Semeyaza
@Semeyaza Рік тому
@@matttondr9282 scarcity of resources is always a terrific catalyst for new and good ideas on how to use those resources very efficiently for exciting things. 😉
@supermalavox
@supermalavox Рік тому
You reminded me of my first computer, which I got in 1992. It ran MS-Dos, and had QBASIC as a programming language. It came equipped with a Braille display since I am born blind, and since Snake is a text-based game, I used to let the snake go one character at a time, pressed "p" to pause the game and continue its course when I could feel the distance between it and the number it had to eat. And that was challenging because my PC's Braille display only showed 40 characters and one line at a time. That was before audio games came around and I could hear my position on the board and my goals' position. I had fun! Thanks for the video!
@mihaelandnate1
@mihaelandnate1 Рік тому
This is a fascinating look into older disability nerd culture, ty. How would you say games are nowadays considering blindness?
@supermalavox
@supermalavox Рік тому
@@mihaelandnate1, screen readers have evolved a lot, allowing us to play some text-based games like the old - but still fun - Colossal Cave Adventure and hear a good narration, virtual assistants also help us play voice-based games and even the video game industry provides some degree of accessibility, like spoken menu options, stereo positioning, normally silent items that can make noises to indicate how far we are from them, etc. Lots of work still needs to be done, but it is certainly much better than when I had to rhythmically play NES' Punch Out! and memorize moves! Thanks for asking!
@mihaelandnate1
@mihaelandnate1 Рік тому
@@supermalavox this is good to know! sorry I did not reply sooner, as I suffered from acute sinus infection that sent me to the hospital. The reason I asked is because a friend of mine is going blind, and his comfort game is skyrim, with mods enabled for easier godmode. He sits less than a foot in front of his 60 inch TV, and despite having difficulty seeing, I am impressed that his ability to locate enemies is spot on. If you wouldn't mind, do you know of any PS4 games that are exciting, let you kill things, and feature stereo positioning, or maybe even allow for interaction not based on vision?
@supermalavox
@supermalavox Рік тому
@@mihaelandnate1, I hope your health is getting better now. I have not played games for a while, especially the newer ones. However, if I am not mistaken, "The Last of Us 2" had some accessibility features for blind people. But surely stereo positioning is found in a lot of games. Even Metal Gear Solid for PS1 had that feature and the player could use it to locate Liquid Snake's helicopter by hearing its sound!
@denizsincar29
@denizsincar29 11 місяців тому
ooh great. I am also blind and didn't know that msdos supported braille.
@CrowMacnas
@CrowMacnas Рік тому
This might be the best video that I have seen on the internet. It's like a kid's television program but for adults who were kids in the 80's. Makes me feel so good.
@bitwize
@bitwize Рік тому
It's got a little bit of Bits & Bytes energy.
@SebastianLague
@SebastianLague Рік тому
Really enjoyed the video (and that intro was just incredible)! I had a lot of fun trying to code my own version afterwards, although the line number thing really made me appreciate how good we have it these days. Will submit my attempt to the passenger showcase :)
@TheCodingTrain
@TheCodingTrain Рік тому
Thanks for the kind feedback! So glad you tried it out!
@ahmetemiruludag
@ahmetemiruludag Рік тому
I would love to see the result aswell!
@andtechie5210
@andtechie5210 Рік тому
Hey hey! You are very much an inspiration. God bless you for the work you put out.
@pedrohpf1990
@pedrohpf1990 Рік тому
Don't get any ideas Sebastian! I wanna see that part 2 of neural networks, not how you rendered a whole open world in AppleSoft BASIC 😂
@himanshudas9042
@himanshudas9042 Рік тому
Sebastian when I saw your coding adventure I realized that you and Daniel has a lot in common. And Glad to know that you are also fan of Daniel. You both are blessing to coding community.
@nagualdesign
@nagualdesign Рік тому
Less than 2 minutes in and you've already put a smile on my face. 😊
@JohnDoe-sp3dc
@JohnDoe-sp3dc Рік тому
Came to the comments to say exactly this! The intro seemed like a labor of love.
@stoliczek6362
@stoliczek6362 Рік тому
Especially the first minute is opening so less than 1 minute
@tiksman17
@tiksman17 Рік тому
Absolutely true, this guy does everything with love
@sbrunner69
@sbrunner69 Рік тому
Same
@GerardHennemann
@GerardHennemann Рік тому
Same here! It seems so natural for him to be like this ☺️
@leftfishjet4029
@leftfishjet4029 Рік тому
The year is 1984 and I'm in my grade four classroom. The school had provided our class with a Commodore 64 and I watched a friend writing lines of code in Commodore Basic during recess (yes, we were those kids). I instantly fell in love with the notion of solving the worlds problems with code and the best parts of my day are still doing essentially the exact same thing that we did in that classroom so (SO) long ago. LOVE this video and would happily binge watch a series on Apple Basic.
@yousuck6222
@yousuck6222 Рік тому
The problem i had as a kid was no-one said you can make money with code. They were just trying to sell games. No-one said i could basically hack any bank with a phone line because that would have peaked my interest.
@miblish5168
@miblish5168 8 місяців тому
1984 was the year of the Macintosh (well, 1983).
@pjf7044
@pjf7044 Рік тому
I think learning to code on something like this is great. Gives you a solid base and forces you to think about details we don’t even realize these days due to abstractions and frameworks.
@lastraven3017
@lastraven3017 6 місяців тому
I taught myself how to program using the TI-83+ and had no idea I was even doing BASIC until years later. I had no one to teach me, only the manual. Managed to make Tic Tac Toe eventually. Had an AI player as well. I eventually became a desktop tech, took on learning Powershell to automate tasks. Then I became a web developer... I miss the days where I could make something without running into a ton of configuration headaches.
@PracticalEngineeringChannel
@PracticalEngineeringChannel Рік тому
So good!
@TheCodingTrain
@TheCodingTrain Рік тому
Thank you Grady!
@palamz7027
@palamz7027 Рік тому
Hey Pratical Enginnering, I watch your videos every day and love all of them :D
@oskrm
@oskrm Рік тому
Hey, an "Engineering like it's 1981" video would be cool too!
@JohnPaulBuce
@JohnPaulBuce Рік тому
hi
@torphedo6286
@torphedo6286 Рік тому
fancy seeing you here
@grawl69
@grawl69 Рік тому
That video brought so many memories. High school, 1987, we had one lesson of informatics a week. It was the first time I touched a computer. Archaic Polish Meritum, 32KB memory, 64x128 monitor pixels, programs loaded via even more archaic cassette recorders. As lessons were facultative, nobody cared much and most pals just played the snake. I was rather curious though and bought a Z80 processor programming textbook, just published. I learned the demands in machine code and started coding. It was easy! The first program I wrote was an improved version of the snake - ca. 800 commands + a short initial program in Basic. I remember how long it took me to type those 800 numbers without errors. But the result was fantastic. Pure satisfaction. You could accelerate the snake's movement from one side to the other by keeping the button pressed and slow down immediately by releasing it. Eating different signs gave different results. I even added some sound and visual effects. And the speed! Had to put a 1000x loop just to make it run slow enough to be playable. I was thinking about studying informatics but came to the conclusion that it would be boring as a life-long work. Missed opportunity, from today's perspective. I went humanistic and the next time I touched a computer was years later when I had to type up my MA thesis. On a borrowed comp. DOS, Windows, floppy disks, Microsoft Word! At first I had no idea how to get to a new line in Word and had to call my friend, who said "this big button, Enter". :D Have never coded again. Maybe I'll come back to it some day. But writing in machine code on a 8-bit processor was so much fun. I felt like a magician.
@pedroteran5885
@pedroteran5885 Рік тому
Great story. I never got access to learning machine code as a kid, which was a great frustration to me.
@devindepina7660
@devindepina7660 Рік тому
this story made me laugh hahah
@chromosundrift
@chromosundrift Рік тому
Yeah you’re gonna code again. Very soon. For fun!
@CPSPD
@CPSPD 10 місяців тому
Omg, you really should jump in again! C was introduced in 1978 and it’s still overwhelmingly popular today. There’s a crazy depth to it now but it’s still fun, and the manual “The C Programming Language” by Kernighan and Ritchie who made the language is incredibly well written and gets you up to speed quickly. Im younger and never really looked up what the state of computer science and technology was in Poland over the years but I’ve always wondered, so thank you for sharing and shining a light on it. Trzymam kciuki :D
@mediocrefunkybeat
@mediocrefunkybeat 9 місяців тому
About ten years ago, my brother was studying for his PhD and a company in the UK offered to pay for a significant chunk of it if he spent the summers working for them as a coder. The company in question was a supercomputing firm and had a large legacy FORTRAN codebase. My brother's job was to convert from the legacy version of FORTRAN into a newer version and to optimise the code - 77 to 2008 (I believe). It just so happens that our Grandfather used FORTRAN in his job back in the 70s and my brother would call him for tips and tricks at least once a week. It made me laugh...
@wrkey
@wrkey Рік тому
In the mid 70's we got our first computer as my dad was programmer. I was immediately enthralled with it and soon learned to program. This game was the first program I wrote. It was on a Radio Shack TRS-80. I graduated HS in 1980, college in 1983 and in 1982 I started my 35+ year career in IT. Thanks for this video. I've been looking for an old PC just so I could do what you are doing!
@joefish6091
@joefish6091 Рік тому
Amstrad CPC464 or preferably CPC6128 (disk) which can run CP/M. Amstrad seems to be the pinnacle of 8bit, they learnt the lessons from all the rest.
@stickfigure31
@stickfigure31 Рік тому
I don't know about Radio Shack TRS-80, but there is an Atari 800 emulator out there (you have to find the bios file separately, the dev indents you to rip if from your own atari but it's online found via google) it boots straight to a basic prompt and has a save/load function for your basic programs. I still rough draft ideas in basic before moving on to C when the emulator get's to slow to execute my code.
@Exposingscammers
@Exposingscammers Рік тому
Ah. The good old TRS80 (nick named it trash 80 as a kid :D ) A fellow student had one of those and I had my Commodore 16 or maybe Commodore 64 a bit later. I've never owned a TRS 80 but have owned atari 2600, commodore 16, commodore vic20, a few Commodore 64's, commodore 128, about 9 Commodore Amiga 500's, a few Commodore Amiga 600's, Amiga 1200, 2 Amiga 2000's, 1 apple IIe, 1 intellivision , a few PC's and even 3 Playstation 2's. Of course I've also had 3 laptops as well (still have 2 of them) plus my gaming PC
@thephoenixsystem6765
@thephoenixsystem6765 Рік тому
You captured the excitement of learning your first coding language 👌 Love the debug montage btw
@mattstevenson1334
@mattstevenson1334 Рік тому
Montage was 🔥🔥
@MiloDC
@MiloDC 7 місяців тому
This is awesome! Took me STRAIGHT back to my TRS-80 Model I programming days from grade school to junior high school in the 1980s! ❤ (Today, I'm a senior software engineer specializing in C++/C, F#, and C# at a major corporation, coding SDKs and services for other programmers worldwide.) Such an immensely exciting period of discovery and growth. What a time to be alive! When he started talking about switching program flow to another function, I said out loud, "Here comes GOSUB," LOL! And I *KNEW* that he would use line number 1000, classic!
@NeilBeresford
@NeilBeresford 7 місяців тому
I was exactly the same, shouting GOSUB 1000! I started coding at school in 1979, so at 14, I worked on a RM 380Z programing CESIL and BASIC. I always remember the power I felt, when I coded my first program and it appeared on the old black and white valve televison! Fantastic. Now, I am a senior embedded software engineer, but started my coding career as a games programmer. in the 80s. Thoses were amazing times and I worked with some amazing people. I feel very lucky being very old! :-)
@real2nick
@real2nick Рік тому
Nice...this was the programming language where I started my journey as a programmer back in the 90' in elementary school...I remembered everything
@matanzohar6783
@matanzohar6783 Рік тому
Please do more coding challenges on vintage hardware, maybe even make it it's own series! Everything about this is perfect, from the way it's edited to your wardrobe. Your best format so far
@flflflflflfl
@flflflflflfl Рік тому
Yes!!! Would love to see some C64 or ZX Spectrum stuff!
@_crys_
@_crys_ Рік тому
Mat Zo? 😮
@johnwilliams3075
@johnwilliams3075 Рік тому
A TurboPascal challenge!
@notjux
@notjux Рік тому
I haven't coded anything in 15 years, but watching someone nerd out over something they love is seriously infectious. Easy sub!
@jonathandyer6385
@jonathandyer6385 Місяць тому
Yeah i can relate
@Luis0n7i
@Luis0n7i Рік тому
This is so cool!! I'd absolutely LOVE to see more of this old-time coding content!!
@IcelandCastleford
@IcelandCastleford Рік тому
Watching this brought back many happy childhood memories of typing out game programs that used to be printed in magazines back in those days on my Sinclair ZX Spectrum 48K. Myself and dad used to take it in turns of one typing while the other read out the code. I still remember some of the terms we used to use for speaking some of the special characters. A colon was read out as two dots whereas a semi-colon was a dot and a comma. I used to rip the programming sections from those magazines and but them in folders to type out at a later date. Wish I’d kept them.
@AleksanderFimreite
@AleksanderFimreite Рік тому
This makes me appriciate modern IDE and text editors so much more than I previously was.
@johnhopkins849
@johnhopkins849 Рік тому
True! But i remember on the C64 i could do a List and then arrow up to a line and make changes, then hit Enter.
@damianbutterworth2434
@damianbutterworth2434 Рік тому
I found arduino`s easy after learning BASIC in the 80`s. It`s like being a big kid again.
@joe--cool
@joe--cool Рік тому
@@johnhopkins849 You can also do that on the Apple 2. Originally ESC A was right ESC B left ESC C down and ESC D up. You were pressing ESC a lot. The Apple ][+ ROM made it better where ESC once enabled the cursor mode and I J K M moves it. Saves a lot of typing.
@loupax
@loupax Рік тому
I love how I was always been taught that BASIC is an easy programming language for beginners, and here I am, realizing that it's basically syntactic sugar for Assembly.
@dudenoway1267
@dudenoway1267 Рік тому
Easy to get started, but it can take years to really perfect an approach to it. You can go with something similar to what he uses in the video or with a little more modern basic that can make some pretty powerful programs depending on your style of programing. That's part of what makes BASIC so fun is you can do what ever you want with it, just depends on how much effort you want to put forth.
@QuizmasterLaw
@QuizmasterLaw Рік тому
yeah, basic is a great way to start learning assembly.
@Vexxel256
@Vexxel256 Рік тому
I mean a lot of languages are just syntactic sugar like kotlin, Go, Assembly itself is a syntactic sugar for binary.
@C.K.MillerPoet_Extraordinaire
@C.K.MillerPoet_Extraordinaire Рік тому
@Stephen Porter Chris Sawyer is his name. you do well to show him the respect he deserves
@moxxy3565
@moxxy3565 Рік тому
@Stephen Porter that was a huge part of the games commercial success as well. Being written in assembly made it very small and fast. Could run on basically any computer of the era.
@firstnamelastname2552
@firstnamelastname2552 Рік тому
When I was kid in the mid 80s my dad got a big book with the code for a couple of different games. It was a project we would work on together sometimes. We'd take turns one would read it out loud and the other would type it. We ended up with a semi-functioning game that we were always tinkering with and trying to modify with our own ideas and trying weird stuff with the code. I learned a lot from it and we had good bonding time.
@tecnoworldsgamingchannel5341
@tecnoworldsgamingchannel5341 Рік тому
That was incredible, you made me feel like a little kid in front of my Commodore 64 (the BASIC was very similar to the one you used here). I still remember the Baloon coding example in the C=64 manual... those were the days
@masterstroggo
@masterstroggo Рік тому
If you ask me, Daniel Shiffman is the most important person on youtube. I basically own my current career within IT thanks to Shiffmans inspirational videos. I started following and recreating his projects many years ago in Processing 3 and have sticked around ever since. Thank you Daniel!
@TheCodingTrain
@TheCodingTrain Рік тому
Thank you for your kind comment!
@byronrobbins8834
@byronrobbins8834 Рік тому
@@TheCodingTrain now we have a video upload of what coding had looked like in the analogue days, comparison to what is in the digital era.
@eekee6034
@eekee6034 Рік тому
@@byronrobbins8834 What? That was very much the digital era. Analog computers were something else entirely; totally alien even compared to this. :)
@niclash
@niclash Рік тому
Tip 1; Don't print the whole snake on each loop. New position gets the "S" and first position get a space. Tip 2; Use the screen memory for collision detection, rather than looping though the X and Y arrays. Same for border. Print a border all around, and a single check to see collision (if same character for snake and border). Tip 3; As someone pointed out, Read and Write pointers on a fixed array is far more efficient as the snake grows larger, and won't slow down the game speed as it grows. Tip 4; Forget "snake" and do multiplayer "tron" instead. Tip 5; Multi player; Keyboard not liking multikey presses then leads to some other input device, or use a separate computer connected with cables.
@TheCodingTrain
@TheCodingTrain Рік тому
Ahhhhhh such good tips!!
@niclash
@niclash Рік тому
@@TheCodingTrain Well, wrote (with a friend) ~80 games in a year or so, on PET2001. Most of them in Basic, and figured out every trick to go a little bit faster, use the 7168 bytes (+1024 bytes of screen RAM of which 24 bytes weren't visible) as efficiently as possible. Those were the days...
@bavidlynx3409
@bavidlynx3409 Рік тому
@@niclash i envy you so much. Wish i was a teenager at that time when the tech was budding
@niclash
@niclash Рік тому
@@bavidlynx3409 There is always "budding tech", but few people has the mind set to dig into such. 3D printing, federated social media, nano technology, IoT, the maker community, open source architecture, and so on. We were a total of 5 on the school who were interested, out of 1100. Most of the others hanged out with friends, played cards or sports... I.e. the easy path, the equivalent of "computer games" and "Facebook" in the last decade or so.
@-Jakob-
@-Jakob- Рік тому
Here we go, was looking for those hints 1 to 3 - which instantly came to my mind as I grew up in the 80s with PET, 4032, C64.
@nick1512
@nick1512 6 місяців тому
I absolutely love your enthusiasm. My programming professor has a little bit which actually helps a lot but yours is top notch and I enjoyed every second of this video and learned something new.
@RolandRegus974
@RolandRegus974 Рік тому
Bro, I just want to let you know you are my favorite coding channel and I LOVE your personality and the work you put into your video's. I appreciate it.
@juliusbecker8451
@juliusbecker8451 Рік тому
I would love to see this as a series. I just love code writen with technical constrains
@williamist
@williamist Рік тому
oh yes, that would be amazing!
@WindowsDrawer
@WindowsDrawer Рік тому
Same
@YugoZex
@YugoZex Рік тому
I used to write programs in basic in 80's when I was a kid. So similar to this but different. You brought me back 40 years when I was doing this. Thanks so much fun and remembering old tricks.
@DielsonSales
@DielsonSales Рік тому
How was it different?
@YugoZex
@YugoZex Рік тому
@@DielsonSales It's different in some details. With small adjustments it can be used on different computer with basic. First difference is number of characters on screen (lines and columns), second is number of pixels, third basic vary from basic to basic. This basic is 90% similar to Sinclair ZX spectrum but there are differences how you write the line.
@damianbutterworth2434
@damianbutterworth2434 Рік тому
@@YugoZex Was a lot fast typing in the code on the Spectrum when you got used to all the keywords. Still got my ZXSpectrum.
@heyyou4686
@heyyou4686 Рік тому
Man the camera angles reminds me of those old creative TV shows really love 'em. Please keep on coming
@Melarancida
@Melarancida Рік тому
This was such a fun video! Your enthusiasm for programming is so enthralling, it really comes through.
@KennTollens
@KennTollens Рік тому
Qbasic was my first language and I did goto also. I remember a computer coming into the class in the 80s and everyone was so excited. We were allowed to play the snake game on it. Then we let it count for the day to see how high it could get.
@Mutual_Information
@Mutual_Information Рік тому
I’m bringing an Apple 2 to my next coding interview - for flex purposes exclusively.
@david203
@david203 Рік тому
I don't think an Apple 2 will flex very much before it breaks.
@upir_upir
@upir_upir Рік тому
Character 13 is carriage return - or, simply said, the "Enter" key you have pressed when executing the program. Anyway, this is a great video. I´m enjoying it a lot!
@error.418
@error.418 Рік тому
The "RETURN" key on an Apple IIe ;)
@diskoBonez
@diskoBonez Рік тому
Your energy and enthusiasm, watching you go through the entire process, trials and triumphs, I was thoroughly engaged the entire video! Your theme song is really catchy too
@Noycey64
@Noycey64 Рік тому
I bought a Sinclair ZX81 with 16k RAM expansion in 1981 when I was in high school. I wrote my own Snake game on it and loved playing it, I got the idea from a snake game I saw on a TRS-80 that the school owned.
@JSYoutuber2
@JSYoutuber2 Рік тому
I wrote a snake game for the TRS-80 that I sold through the Radio Shack Software Catalog. Maybe that one :-) I wrote it in a hybrid of basic and machine code. The Machine code was to overcome the obvious performance limitations. My parents wouldn't buy assembler so I wrote it in machine code completely manually. Wish I still had the code to look at but my dad said that computers where a fad and sold the whole thing out from under me and wanted me to not learn any more computer stuff. He said it was a waste of time so I did and took 20 years before I returned to the profession after missing some of the best years.
@mikkirefur
@mikkirefur Рік тому
@@JSUKpostsr2 wow. i wrote the game snake in 1982 or 1983. maybe i was inspired by you. i cant remember what inspired me though. I continued with programming, but went from vic 20, 4k memory, to a Kaypro II CP/M system, business computer. so i learned databases and spreadsheets, it did not have built-in graphics. I sometimes also wonder what would have happened if I got a Commodore 64 or Amiga, and really got into graphics. If we would have only known then, what we know now.
@lifeinbitsmedia7681
@lifeinbitsmedia7681 Рік тому
@@mikkirefur I created a dBase database for managing a local baseball league as a internship in college on a system with CP/M in the 80's. Don't remember if it was a Kaypro II or something else.
@mikkirefur
@mikkirefur Рік тому
@Life in Bits Media I created a dice (random6) game for a fantasy baseball game my friend created. He loved stats and would roll through whole games and seasons. I used his logic (walk, xo, 1b,2b,3b,hr,etc) and kicked out games in seconds. I look back at all these early programs (print invoices for dads friend company, moving company software) and realize I had million dollar business starting so early. Well, here's to crypto, ai, web3, and promoting integrity
@lifeinbitsmedia7681
@lifeinbitsmedia7681 Рік тому
@@mikkirefur I did similar things like create a program to track golf scores for my Dad's golf group, printing out baseball game score cards for my brother who liked to score baseball games while watching them, though those efforts were a little later in the IBM PC days. And they said home PCs what never sell because people would have no use for them. The one thing I did in that time period that I was most proud of was create a solitaire game. That took a while.
@WilliamLeeSims
@WilliamLeeSims Рік тому
I was a very young coder in this era. You totally caught all of the nuances of coding during this time. I loved watching every minute of it!
@johnman8673
@johnman8673 Рік тому
This brings back memories! BTW, you don't need to switch off and then back on the Apple to stop your running program - just hit control-C (which I see you use later on in the video!).
@MattReidy
@MattReidy Рік тому
What a blast from the past - I started coding on an Apple II myself around 1983. I had that same Beagle Bros poster too! :)
@stvj
@stvj 3 місяці тому
Yep. I took a course in school around 1982 where we learned Basic on a Apple II Europlus (6 Apples, 1 floppy drive for all of them). At the end I've coded a tennis game for 2 players using the graphics mode. That mixed graphics / text mode really made debugging easy. Keyboard input from 2 players didn't really work well, but I still have fond memories of the Apple II.
@bereanracer
@bereanracer 11 місяців тому
This brings back so many memories. Love it!! I used to take code examples from the old 3-2-1 Contact magazine and program them onto different machines, making changes to compensate for variations of BASIC. From there I would make my own games, birthday cards, etc. It was such a great way to learn how to program.
@Amr-Ibrahim-AI
@Amr-Ibrahim-AI Рік тому
This is so nostalgic! Reminds me of my very first coding attempts in GW BASIC on MS DOS in 1988! Thanks for sharing the warmth, Daniel!
@Amr-Ibrahim-AI
@Amr-Ibrahim-AI Рік тому
@ghost mall Yes! Same here :) I had been trying to simulate buttons on text mode, too :)
@DylanMatthewTurner
@DylanMatthewTurner Рік тому
I love old hardware. I have this old graphic LCD, a raspberry pi, and a mechanical keyboard that I was gonna turn into a digital typewriter to take to coffee shops, but maybe I should make it so it can also run some kind of basic so I can make little games for it.
@TheCodingTrain
@TheCodingTrain Рік тому
If you do please share!!
@david203
@david203 Рік тому
Implementing a programming language is called systems programming, and I did it for 40 years. It can be done and it's lots of fun.
@voidseeker4394
@voidseeker4394 Рік тому
For some reason i feel so wrong about using powerful modern hardware to simulate old weak hardware... Raspberry Pi is a real modern computer, it can run modern linux, it can do tasks like speech and image recognition, it can run high-resolution graphics... definitely an overkill for digital typewriter. If i were you I'd rather buy real old system on ebay, restore and use it for fun, or recreated one with microcontrollers or something of comparable resource capacity.
@DylanMatthewTurner
@DylanMatthewTurner Рік тому
@@voidseeker4394 Why would I buy something else when I already have like 10 raspberry PIs lol?
@alexmcd378
@alexmcd378 Рік тому
I think the slowdown is from shuffling the snake segments through the arrays as you move. You could speed it up dramatically by using something like head and tail pointers into the array. Then instead of N operations for an N segment snake, you only have 2 for any length >=2. Draw the new head and delete the old tail.
@bunmonk1903
@bunmonk1903 18 днів тому
This just took me back to elementary school in the 80s. I had a vague memory of doing all of this and now it has all come flooding back. Thank you!
@BountifulOne2024
@BountifulOne2024 Рік тому
OMG!!! This is the most fun I've had in years! Takes me right back to 1981 and having to learn to operate the Apple IIe for the company I worked for. Gosub was always my favorite too. Thank you sooooo much for this!
@TheGuyThatEveryoneIgnores
@TheGuyThatEveryoneIgnores Рік тому
The Apple //e was released in 1983.
@rdear
@rdear Рік тому
My favorite character, hands down, is this.dot! Can’t wait to see their story arc this season! You’re awesome, Dan!!!
@TomMcComb
@TomMcComb Рік тому
Totally love this. It brings back memories of creating crazy games with my friends in high school. I’d love to see more of these!
@TheRaysfan22
@TheRaysfan22 Рік тому
Super cool to see he’s still posting, definetlh sparked my major / career w his videos. Thanks coding train!!!!
@rinka4560
@rinka4560 Рік тому
Wow. I'm taking C++ classes at my college, and I've become pretty familiar with how to code basic things, but in the style of a modern programmer. Seeing just how coding works on something just a bit more primitive is actually so amazing to see. Something as simple as a computer dedicated to making programs and drawing things is really neat and I want to see you do more things like it. I actually really interested in reading up on the manual to see all the sorts of cool stuff these computers can do. Thank you for sharing both your computer and your programming expertise :)
@marksmith2738
@marksmith2738 Рік тому
It may look like a computer dedicated to programming and drawing stuff but actually, some of the most popular uses of this computer were playing games (there were thousands of them), connecting to bulletin boards (which were sort of like sites on the internet, without the internet part) and there was even productivity apps like VisiCalc and WordPerfect. You could also expand the computer with other cpu's and memory cards and run programs like dBase. dBase, as its name implies, had a pretty sophisticated database system built into it, but it was also an incredibly powerful general purpose programming language. I wrote a program in dBase (released in '83) that emulated what google does today, but there was no internet to speak of back then so it just indexed your local machine, but it did allow you to host the resulting index online for dialup access and searching using the TBBS bulletin board system.
@TheCodingTrain
@TheCodingTrain Рік тому
🧠 Pricing Update! Sign up for Nebula direct - nebula.tv/what-is-code - $4 per month or $40 per year!
@kathymcguiness3461
@kathymcguiness3461 Рік тому
Excellent class-very well done! Highly recommend!!!
@TheCodingTrain
@TheCodingTrain Рік тому
@@kathymcguiness3461 Thank you Kathy, I so appreciate this!
@frazierwingstudios4302
@frazierwingstudios4302 Рік тому
I feel like you, Mr. Rogers, Bob Ross and Monty Don would all be best friends.
@glowytheglowbug
@glowytheglowbug Рік тому
that keyboard sounds loll
@klaxoncow
@klaxoncow Рік тому
Nice try, but that shirt is definitely late '80s to early '90s.
@cosmicvale
@cosmicvale Рік тому
I know only the basics of coding, enough to understand all these kinds of videos. But it's so awesome to see archaic coding, and the true passion and happiness you have for it ❤ subbed
@yoniziv
@yoniziv Рік тому
So much nostalgy. So happy I found this video. Thank you!
@ImDissonance
@ImDissonance Рік тому
I'm 1 year into my career as a software developer and I always wonder what it was like coding back in the day. Thank you! By the way I love your enthusiasm!
@TheCodingTrain
@TheCodingTrain Рік тому
This is why I made this video, yay!
@mikewalker1081
@mikewalker1081 Рік тому
I had to punch cards and do the same thing this guy is doing, except had to wait on the program to be compiled, put into a que , then wait for it to run,, the horrors! I hated CS classes, had to learn all the dead languages, FORTRAN, SAS, and COBOL.
@xnick_uy
@xnick_uy Рік тому
This brings back memories. I didn't own an Apple, but when I was a kid our family got a Coleco Vision system, and a few years later I was very lucky to come in contact with a full-fledged PC with DOS. I tried my hand at several Basic programs, and had lots of fun (but I never got to a full-fledged understanding of all I needed). I recall that I attempted to create a chess board in Basic, which was kind of cool for the time, but very difficult to program and maintain (the graphic resources for Basic are quite limited).
@1robhook
@1robhook Рік тому
I started out on a Coleco ADAM as well. They had their flaws but were actually cool systems. I still have a couple of them.
@wristocrat
@wristocrat Рік тому
So nice to see how quickly it boots up
@ShanesQueenSite
@ShanesQueenSite Рік тому
I learned BASIC on a 48K Oric-1 and this code is so like that code. Wonderful to see it happening and seeing retro code in a live demo. Thanks for this. I'm definitely going to subscribe to this as it was very relaxing watching the video. Almost like the watching Bob Ross of the coding world.
@emalorenzo2415
@emalorenzo2415 Рік тому
I love everything you do man, I feel at home watching your videos. It's been 6 years now programming profesionally, my LinkedIn says Im senior software developer now. You always make me go back to the joy of the beginnings of learning programming.
@AbelShields
@AbelShields Рік тому
This is really cool, I made a snake game almost exactly like this on a graphing calculator in a basic-like language. It's so fun to deal with the constraints of the hardware - initially it was O(n) and visually slowed down as the snake grew before I switched to a ring buffer structure. Very fun!
@Ludix147
@Ludix147 Рік тому
Yeah, i also made snake for my graphing calculator! Good times. Though I only ever added on on the front and didn't move the end of the snake. my snake was infinitely long, and the goal was to make it through predrawn mazes without hitting the wall
@hockeyguy9974
@hockeyguy9974 Рік тому
This guy is an amazing human being. I feel like a kid again in the 80s-90s when I was incredibly obsessed with my first computers.
@deenamiq.
@deenamiq. Рік тому
Your enthusiasm about coding in BASIC on a system 40 years old is infectious. It makes me remember the time I - as a 10 year old - wrote a BASIC program on an MSX-1 system that would function as a catalog program for my dad's vinyl collection. Took me days to complete, but it was worth it. I never had any experience with Apple computers though. My first system was a MSX-1 and I learned BASIC on it. Some years later I moved on to a regular IBM 386 system and worked with QuickBASIC. Eventually I started coding in PHP & JavaScript and build my own web-applications.
@pyhead9916
@pyhead9916 5 місяців тому
Those were the days, I remember them well!
@keemkorn
@keemkorn Рік тому
Wow... I hadn't watched a video of yours since back when I was learning JS a few years ago, but this truly reminded why I loved watching you so much back then. You're so entertaining Mr. Shiffy.
@salvadorian3288
@salvadorian3288 Рік тому
You are a legend, so well done - beautiful! Thank you!
@RaiuTheEevee
@RaiuTheEevee Рік тому
I've been doing ComputerCraft Lua for 8 years and I feel like this video gave me insight I don't think I had before. ComputerCraft is a modification for Minecraft that adds programmable computers and robots to the game, and it works very similar to the computer you used in this video, but obviously with a more modern language and hardware, and programs can be edited in files with any text editor or ide including the one built into the mod. I often recommend lua as a first language because of how easy it is to learn compared to other languages. The Basic language you showed here gave me similar vibes. Very good, insightful video!
@erlking9910
@erlking9910 9 місяців тому
5 years ago you got me interested in coding and now I’m a teachers assistant and a computer science major 👌
@JanWestin
@JanWestin Рік тому
The thought process and iterration is the star of the show. Great content!
@OlafDoschke
@OlafDoschke Рік тому
I actually once did this in the late 80s while I was chronologically on an Atari ST already, when we had Apple IIe in school in computer science lessons (yes, back then already it was a school subject). I did reuse my 6502 knowledge from C64 programming and the snake mainly was implementing a stack (well, or a queue. I used two indexes on a memory array. You could literally do this in your array implementation, too, which removes the need to shift array elements). I added levels with barriers as I knew from one snake clone game on the ST and the computer science teacher told me his son actually enjoyed playing this.
@TheCodingTrain
@TheCodingTrain Рік тому
Thank you for sharing this story! (And great tip too!)
@OlafDoschke
@OlafDoschke Рік тому
@@TheCodingTrain Also thank you for reminding me of these times back in school. I don't know by how much the two index queue accelerates the snake, it I guess it gives a bit headroom for turning up the difficulty level.
@zzzsleeper-_-3653
@zzzsleeper-_-3653 Місяць тому
You just brought back a lot of memories. I was always curious what that screen meant
@stevenranck5478
@stevenranck5478 Рік тому
I had an original Apple II back in the 70s and wrote a similar game, only the snake was a Tron light cycle and it supported 2 players on the same keyboard. Fun times.
@chrizzzly_hh
@chrizzzly_hh Рік тому
One of the greatest creators. Brining wisedom, fun, and smiles while coding. Love all your videos! :) and you did a great nostalgic feeling for the one of us from the c64 generation :D
@deckarep
@deckarep Рік тому
Oh my goodness, the nostalgia hurts so good. Cheesy intro check! Retro computing check! Synthwave music and graphics check! And one heck of a shirt check! Love it! Daniel, since you are going down this path would love to see some content on coding for a fantasy console such as Pico-8 or Tic-80!!
@mcresearch
@mcresearch 6 місяців тому
I used to code on an Apple II and this was a brush with nostalgia. The machine was ahead of its time and had me captivated.
@NathanRichHotpot
@NathanRichHotpot Рік тому
I was at the age that this Basic was crappy to use, because MS had its QBasic. And that almost exclusively is why I used PC/DOS rather than Mac. Great video ~ loved the execution. I remember almost all of those commands :D
@lobsangbarriga5324
@lobsangbarriga5324 Рік тому
Super insightful video, the last key pressed at 8:08 was ASCII 13 = CR (Carriage return) which is the return/enter key on apple. Fun fact the Carriage return is named like that because of mechanical typewriters (the steel lever to return the carriage is named the same way) 😆
@TheGuyThatEveryoneIgnores
@TheGuyThatEveryoneIgnores Рік тому
I have always thought that Apple got it right by using the carriage return as the new line character. After all, the carriage return lever on manual typewriters not only moved the carriage so that the next key typed would be at the left edge of the paper, but it also advanced the paper up by one line. Unix used the line feed character as the new line character and Microsoft could not decide, so it used both.
@danbailey9591
@danbailey9591 Рік тому
@@TheGuyThatEveryoneIgnores And we've been dealing with that decision ever since :) Computer Science in the early 80s, we pretty much memorized the ASCII chart. My machine then was the 16K Tandy Color Computer.
@thefroable
@thefroable Рік тому
I wish I could have watched this in the late 80s when I was a little kid reading the BASIC books in the library and programming on my parents Apple IIe. Brought back a lot of good memories.
@zizo1998aaa
@zizo1998aaa Рік тому
This video gave me a beautiful nostalgia and reminded me of the secondary school days in Baghdad/Iraq back in early 90s (I had MSX computer with MS BASIC) ... Thank you Sir
@AM-pq1rq
@AM-pq1rq 5 місяців тому
what a fantastic video! Super coherent, like a little story and you actually teach the basics of programming in a way that is accessible to anyone! Really enjoyable, and great shirt!
@bennybrouwer
@bennybrouwer Рік тому
(commodore 64 connected to an old TV) . . brings back memories: "spagetti programming", data storage on cassette and later a very expensive floppy drive, trying to be tough by learning assembler and later a very clumsy and expensive Pascal compiler, long discussions with Atari and ZX80 programmers (Apple was only at school - too expensive). Still ... it was way more than I learned at school and I still have the benefits of basic knowledge (pixels, hex numbers - binary calculations, etc.). Nice history college, thanks !
@CedLePingouin
@CedLePingouin Рік тому
Well, I wasn't expecting that. What a pleasant and nostalgia-filled surprise. Very good video. I got into computers and programming in the 80s on a PC XT with GW-BASIC (like Amr Ibrahim), not really knowing what I was doing. It spawned a passion that I still have today... and a career as a programmer.
@doomicorn77
@doomicorn77 Рік тому
Thank you so much! I've been on a deep dive of videos looking for someone demonstrating the BASIC Go to code on an Apple 2c computer for my class on Interface Culture. This video is perfect and has so many great examples of what life was like when I learned computers :) Take that, MatLab!
@kallek5655
@kallek5655 Рік тому
Nice, this reminds me of my C64 times, the BASIC there was pretty similar from what I remember. I did program Snake, but some time later, for DOS in x86 assembly, that was fun, too :)
@mazza420
@mazza420 Рік тому
this is awesome!! loved the intro that was fantastic
@snaplash
@snaplash Рік тому
I remember trying to analyze a BASIC tic-tac-toe game where the original coder had not left enough space between line numbers to add statements. So, every inserted line required a GOTO to the inserted code somewhere else, and another GOTO back to the main program. There were hundreds of these, making it impossible to sort out how it worked.
@TheGuyThatEveryoneIgnores
@TheGuyThatEveryoneIgnores Рік тому
This was known as spaghetti code.
@noimnotarobotcanubeleiveit7024
@noimnotarobotcanubeleiveit7024 Рік тому
no gosub?
@darkphoenix68
@darkphoenix68 Рік тому
Spaghetti code FTW. I need to find another old listing and try to doctor it up into a modern language...
@error.418
@error.418 Рік тому
Lol, this is why writing the code out in a notebook was common at the professional level. They even made BASIC specific notebooks with layouts that supported specific boxes for line numbers, etc. and cheatsheets at the beginning or end of the notebook. Planning out your code was an important step, and still is today just in a slightly different way.
@TheGuyThatEveryoneIgnores
@TheGuyThatEveryoneIgnores Рік тому
@@darkphoenix68 I once used spaghetti code to modify the Notepad.exe file on Windows XP. I was tired of the default tab size being eight spaces, so I modified the machine code to jump to some unused part of the file. There I added machine code to send a message to the edit control to set the tab size to four spaces. I then had to replicate the machine code I overwrote with my jump instruction and then jump back to the address after my first jump instruction. The Jump machine code instruction is basically the same as a GOTO instruction in BASIC.
@rallymax2
@rallymax2 11 місяців тому
I learned on 8088 MS Basic and then Logo. It launched my life. So thrilled to see you go through this exercise. Also, I love my Nebula subscription!
@madcommodore
@madcommodore Рік тому
Well in 1982 coding on the Commodore VIC-20 was pretty simple, even in machine code, thanks to excellent books and magazine articles and a user interface superior to the $4000 IBM PC :)
@Breakfast_of_Champions
@Breakfast_of_Champions Рік тому
The Commodore fullscreen interface/editor was the definition of elegance, but hunting down the handful of relevant books and tips in magazines was very pedestrian!
@madcommodore
@madcommodore Рік тому
@@Breakfast_of_Champions I had the VIC-20 programmer's ref guide plus Commodore User UK magazine had lots of programming tutorials. Finding this info again now is tricky without the magazines, took me months to find out how to do a full screen reverse scroll in BASIC again so I could write a car game with the sprite on the bottom of the screen. Sad but loads of information for little hacks like that are very difficult to find in the age of the internet.
@ddognine
@ddognine Рік тому
I remember when I was in 4th grade in the 80s, our class got an Apple II. We were allowed to program it, so my friend and I programmed Breakout on it. It took us about a thousand lines of code, and it worked. IIRC, we even had a second level (we didn't have time for more levels). And not to be outdone, I decided it needed some music, so I programmed the Raiders of the Lost Ark theme which was really popular at the time. Looking back, I am amazed that two 9 year olds were able to do that without any prior experience or knowledge. We just sort of figured it out on our own because our teacher was no help. And it didn't take us that long either seeing it was just sort of a project we managed to do during class. My adult mind would probably balk at the task paralyzed by the obstacles it would envision. My kid mind didn't care and just got it done, and everyone in our class wanted to play it.
@atlantic_love
@atlantic_love Рік тому
@ghost mall One way might be to adjust the angle based on the speed and direction of the paddle when the ball hits it. And if IIRC in breakout you could reverse the direction of the ball (send it back from where it came).
@gasun1274
@gasun1274 Рік тому
i want that childlike curiosity and motivation back, it's been a while.
@aspol12
@aspol12 Рік тому
@@atlantic_love yes 4th grade stuff
@atlantic_love
@atlantic_love Рік тому
@@aspol12 Are you making fun of OP?
@error.418
@error.418 Рік тому
This was me on the TI-84 calculator with TI-BASIC and using the link cable to share it with everyone since that calculator was a class requirement.
@aronmartens7991
@aronmartens7991 Рік тому
I'd love to see more coding challenges like this!
@freshairkaboom8171
@freshairkaboom8171 Рік тому
This is amazing. I'm so used to all the modern conveniences, but now that I think about it, as a kid I did see some of this stuff, and it just completely slipped my mind that coding used to be like this.
@diegohernandez-dn6fe
@diegohernandez-dn6fe Рік тому
First time watching one of your videos. This is the type of guy that will magically turn any conversation or argument into code talk and somehow hook you in
@widearchshark3981
@widearchshark3981 Рік тому
Ahhhh, I had a nostalgia rush there, although for me it was with the ZX Spectrum. But I honestly think this was almost exactly the same! You're a madman, but eminently watchable. We need more people like you in this world :)
@deang5622
@deang5622 Рік тому
Must have been awful programming on a rubber keyboard..
@widearchshark3981
@widearchshark3981 Рік тому
@@deang5622 You know, you got used to it. One thing about the Spectrum was that each key would be a shortcut for a function. So pressing "H" for instance, and the Spectrum typed "GOSUB" for you. The biggest problem I think was that BASIC was pretty rubbish (and I include AppleSoft BASIC as well), even back then. If you wanted proper games you really had to use Assembly. But because you only had 48K, and the expectation of graphics was MUCH MUCH lower, it was pretty incredible what you could create. You should never have asked... I could go on all day ! It was a sea change over the ZX81 I had. Don't even ask about that "keyboard" !!
@TheGuyThatEveryoneIgnores
@TheGuyThatEveryoneIgnores Рік тому
@@widearchshark3981 Yes, BASIC was pretty much useless when it came to writing video games that could run in real-time. I never had an assembler back in the day, so I thought in assembly and typed in hexadecimal (machine code). However, BASIC was useful for figuring out some things. I once wrote a 3D maze program in BASIC that animated ten frames to advance one space in the maze and eighteen frames to turn left or right. My BASIC program took about two and a half minutes to draw one frame! Once I had fully debugged it though, I manually converted the program to machine language which made it run a thousand times as fast.
@Polydeukes68
@Polydeukes68 Рік тому
LOL! This was great. When I was in highschool we had an optional computing course. Our school (in northern Europe) had CP/M -machines in early 80's and we among other things learned Basic. I had an advantage as I also practiced Basic at home with my C64. As my course project I did write a fancy version of the snake game. My snake was not made of letters but something else, cannot remember what but it looked more like a snake and the tail remained long so longer you played more difficult it became to avoid running into yourself. Points were calculated and high score was saved. My teacher was so impressed I got my only 10 score (scale 4-10) in my high school certificate of graduation. Could not do it anymore but feel like it would be fun to learn again.
@HikingFeral
@HikingFeral Рік тому
I am new to programming but you have a knack for making entertaining and informative content, I subbed before the intro finished, thank you :) - I think it's amazing that you are so knowledgeable, even about this archaeological machine, that you can just think of what you want to do in your mind and then just code it, really inspiring.
@tails3099
@tails3099 11 місяців тому
his enthusiam is everything. you can tell he truly loves doing this
@slendi9623
@slendi9623 Рік тому
Very cool episode. Would be cool to see some assembly too!
@christianh2581
@christianh2581 Рік тому
Some years ago I also programmed snake for fun on the original gameboy in assembly (however while using a modern computer to do so)
@artful1967
@artful1967 Рік тому
i did my A Level in computer science on a BBC model B using BASIC. The nostalgia is strong ( and my first computer was a Spectrum 48k also with BASIC or if you were super clever machine code on Z80 Zilog. would love you to take us on a trip down amnesia avenue. Do you remember using overflows to make self modifying code?
@JoeDoe1
@JoeDoe1 Рік тому
Thank you. Thank you for reminding me that everyone started somewhere, even forty years ago. I’m learning Swift and I what I realized is that it is lifelong journey, even at 50.
@rafageist
@rafageist Рік тому
Great video. Thanks for showing this. I started programming like this, but specifically in Mallard BASIC on an Amstrad PCW with CP/M operating system. That was in 1998 when I was 11 years old. At that time, there was already a PC with Windows 95/98, but I did not have the economic opportunity to buy one. However, I think it was very good, because when you start like that, nothing distracts you, and you focus on what's important. Modern multitasking distracts beginners. You have made me remember my beginnings in the world of computing. Then I spent a good time, like 4 years with QBasic in MSDOS 6.22, on an Amstrad XT86, and then with Borland Pascual the same, until I switched to modern Windows systems. In the end, I think we are back at the beginning of everything, and today I am not separated from my beloved Linux and its beautiful terminal.
Apple ][ Coding Challenge: Fractal Tree
35:35
The Coding Train
Переглядів 366 тис.
Coding Challenge: 3D on Apple II
45:40
The Coding Train
Переглядів 317 тис.
Піхотинці - про потребу у людях
00:57
Суспільне Новини
Переглядів 1 млн
😱СНЯЛ СУПЕР КОТА НА КАМЕРУ⁉
00:37
OMG DEN
Переглядів 1,8 млн
Browsing the Web on a Vintage Apple //e with Contiki!
19:26
Action Retro
Переглядів 57 тис.
Coding Challenge 180: Falling Sand
23:00
The Coding Train
Переглядів 706 тис.
Bézier curves (Coding Challenge 163)
22:59
The Coding Train
Переглядів 262 тис.
Fast Inverse Square Root - A Quake III Algorithm
20:08
Nemean
Переглядів 4,8 млн
Best OS for programming? Mac vs Windows vs Linux debate settled
8:40
Coding Challenge #145: 2D Raycasting
36:02
The Coding Train
Переглядів 628 тис.
"Game Development in Eight Bits" by Kevin Zurawel
39:41
Strange Loop Conference
Переглядів 535 тис.