We as a family, got our C64 in 1982. I was almost 8. My dads friend was seriously into writing/programming his own programs. He got me into programming. I wasn't good at writing my own stuff, but I enjoyed spending hours and hours typing in code from the magazine Compute's Gazette - mostly games. I now have my son using my C64. It's cool to see him using the same educational software I used as a kid and seeing his face light up and enjoying it also. Kids are awesome.
Bill A It never ends. I'm not sure if I'm going to pull him from school and home school him yet. He loves technology and does great in a one on one setting. I should try him on typing in code lol. I'm SURE an ADHD child would love that. :)
He said "pre-written" programs - in an age when it was quite common for users to write their own programs and to save them to blank storage media, so for media you bought that already contained programs written by someone else, it makes some sense.
As I was in the Netherlands my parents bought me an MSX instead, mainly because it came with a programming book for MSX basic (which in my opinion was a bit more advanced as you could easily draw stuff with it, among other things). The book was in Dutch too, I didn't have too much experience with English back then, living in a backwater village.
Bloody brilliant recording the code onto the Video tape as Audio then recording the program onto audio tape for the Commodore Datasette peripheral! Thank you to who uploaded this video. I started my Computing Hobby with an old C64. And I find it absolutely funnier than poop when Millennial's complain about the difficulties programming in an non object oriented programming language.
I found a way to program object oriented in C64 BASIC (sort of) where it seems handy, whereas in a language like Java, you can't get rid of object orientation even where it is annoying. ;-)
Commodore's go-to market strategy was to dominate European sales. The VIC-20 and especially the C64 were the dominant home computer in the United Kingdom. A fascinating and engrossing read about (IMHO) can be found in "The Home Computer Wars" by Michael S. Tomczyk. amzn.to/2U4JQZe
Oh I remember it well .I ran a BBS world wide on this back in 85 the name was ESSEX BBS. the floppy disk drives were huge lol I remember getting my first 1 meg drive , man oh man I thought I was hot shit back then lol . great memories . Thank you
So I recorded the computer sound off of my computer onto a cassette tape. Don't even ask where I got the tape and tape deck from. Well it worked! #godblesstheinternet
Had my vic20 at around 7. Got my c64 at around 8 or 9. I felt like I had been freed when I started coding and making music on these machines - especially c64. Sid was and still is a king.
Unreal! I would have loved to have saw this video back when I was 10, I mainly played games on it, but always wondered how they worked and how to program my own things. I entered some of the programs in the user guide like everybody did, but I never really understood them. This video would have explained a lot. Great find :D
A trick I didn't know in the 80s and learned just a few months ago in a book I couldn't afford at the time. ;-) Great for making code more readable, like indenting nested loops.
Wish had these as a kid. We had the ZX81 and I have memories of being in middle school and during the year have the odd urge to fire up the ZX81 and write in one of the programs from the book. I never took the time to understand what I was typing in, so when it inevitably didn't work, I'd give up. I was lazy back then and not very bright. If only I could be bothered to work out what was going on. We also had a tape player for loading games. I never understood that either so never understood I could of saved the programs I'd written from the book to a blank tape.
I had a ZX81 as well and it turned out to be a piece of crap, but it was all I could afford as a teen. $50. Had a friend with a Vic20 and that machine was awesome. We had so much fun typing in programs (and debugging) from Compute Magazine. I have just aquired a Vic 20, 2 C64s and a C128. Really excited to play around with some programming again.
@@christopherlong2301 The ZX81 was my brothers, I always thought it was shit as well :) but all we had. Then we had the memory wobble and I never touched it again. Family friend had a C64 which I loved, would go round every Saturday to play on it :) Wrongly, I once blew it up and legged it. I was about 12 I think. He was about 15 or 16. Went round and he went out but I was allowed to stay cause his mum and sister were still there. Was left to play on the C64. Before he left he'd learnt how to cheat in games, by shorting some pins while a game was loading so you could use some pokes. Turned out shorting the pins was dangerous and you had to follow it to the letter. I never did, the C64 then wouldn't turn back on. Oh shit.....I panicked, even at that age was crafty so went to the back room where his sister was watching TV and said gotten bored of the C64 so started to watch TV for a bit. Waited for about 30mins then said I was off home, only 5min walk away. Later got a call from friend "Was the C64 working when you left?" I said "Yes why what's wrong with it?" He said its not turning on. I just kept quiet and have since the late 80s when it happened :). Turns out I'd blown the board and he had to send it off to be repaired. Oops.
I like to show how to redirect some assembler mnemonics(x86) and debug commands for to telecontrol debug within a batchfile and some pipe(> tmp.deb echo mov dx,108>>tmp.deb echo mov ah,9>>tmp.deb echo int 21>>tmp.deb echo ret>>tmp.deb echo db "Hello World!$">>tmp.deb echo g=cs:100 107>>tmp.deb echo q>>tmp.deb debugtmp.inf del tmp.deb type tmp.inf Variation and alternative example with a similar content: @echo off echo e cs:100>tmp.deb echo ba 08 01 b4 09 cd 21 c3>>tmp.deb echo a cs:108>>tmp.deb echo db "Hello World!$">>tmp.deb echo g=cs:100 107>>tmp.deb echo q>>tmp.deb debugtmp.inf del tmp.deb type tmp.inf Debug manual: www.armory.com/~rstevew/Public/Tutor/Debug/debug-manual.html
But i prefer to boot a real MSDOS 6.22 or MSDOS 7 (from Windows 98 SE or Windows ME) booting from an 2 GB bootable USB-Stick or booting from a selfmade MSDOS-Boot-CD (with a Floppy- or with a hard-disk emulation, EL Torito- specification). Because DOSBox only provide modenumbers for 4:3 and for 5:4 aspect ratio, but no modenumbers for a widescreen resolution of modern display devices. Example: My Geforce GTX 295 and my Radeon 7950 cards both are providing modenumbers for a widescreen resolution of 1920x1200 (16:10 aspect ratio) in their VBE3-bios. (And i miss the CTTY command in DosBox too.) DOSBox only use outdatet modenumbers of a VBE1.x bios for that the VESA consortium will no longer be mandatory to support these old mode numbers. DosBox do not use the VBE 2/VBE 3 modetables inside the bios of our modern display devices. With booting a real MSDOS we can also use the VBE 3 hardware triple buffering and also steroscopic shutterglasses in combination with a refreshrate controlled resolution, for to get a refreshrate of 160 hz for example with using own CRTC parameter. Since my Geforce 4 Ti 4200(AGPx4; 64MB) i like to use the VBE3 bios. Usefull public and costfree documents from vesa.org (register/login): vbe3.pdf EEDIDguideV1.pdf
@Rimack Zelnick Actually, PC-DOS predates the Commodore 64 by about a year. Of course, the PC was a very different beast at the time, featuring an 8-bit bus, 16-bit CPU, casette ports, built in BASIC, as little as 16KiB RAM, and no hard disk support.
People make light jokes and cite memes, but BASIC teaches us a different way of looking at code. Just use parallel arrays and use indexes instead of pointers. Shock and awe, it is faster, easier to code and reason about.
I like that Basic knew to add the ? at the end of the "How many . . ." question, even though he never specifically told it that he was asking a question. Basic presumably knows some language structure and can tell when a sentence is supposed to be a question, so it auto inserts the question mark. Kinda cool.
It's to mark that INPUT is waiting for you to enter something, much like READY. indicates you can enter commands. At 43:50 see a program that requests input multiple times without a preceding statement (a line above gives a suggestion what is expected), and the ? is still being output. This is called a prompt, as it tries to prompt you to provide input to the computer. Most computers that use a text dialogue like this use prompts, with a few examples being C> (DOS or perhaps CP/M, current drive C), $ (unix bourne shell), % (unix C shell), or >>> (Python). Often the prompt has a clue what sort of input is awaited, like ... for unfinished Python input. The prompts also make it easier to identify where commands were input in a transcript.
Damn this brings me back to when the school teacher would put on a cassette to teach a subject. I'm pretty sure it's a lot easier to learn things now a days.
i had a z81 and was playing with asm code and basic.( you had to use asm to fill the screen. not enough memory to use basic.) before basic came around. I was like the second teacher in computer class
2:30 Youch. Anyone else bothered by the prices being hard-coded into the calculation? I suggest: 10 OP = 20 15 AP = 17 20 INPUT "HOW MANY ORANGES";OO 25 INPUT "HOW MANY APPLES";AA 30 CC = OO*OP+AA*AP 35 PRINT "TOTAL COST: ";CC Better yet, put the item names and prices in a separate file, and read them into an array, then cycle through the array. Then when adding new items or changing prices, you don't need to touch the program file. LOL, this is "Introduction", though!
17:45 Never had a C64 (in France we all Amstrad CPC). What happens when he edits the first line 10 that stands at the top, if changes "HOLLO THERE" by "HELLO THERE" then types LIST. There are already three lines 10 displayed on the screen, so can thre editing be made in any of these three 10 lines? Thank you for your help.
Really nice video, however this guy really over simplifies things making it take painfully longer than needs be. However if you never typed a line of code this video was essential.
I never knew that even back then half of your computer's memory as it was sold to you on the box or whatever was gone before you even did anything with the machine and was used for the operating system. I thought it was just modern devices that told you one amount of storage space on the box only to actually give you way less in reality. Crazy.
That's not quite true. The C64 really has 64 K of RAM that can be used, and in addition to that 20 K of ROM which includes the OS. But since it has an 8-bit CPU which can only address 64 K (RAM or ROM), in the standard configuration, the RAM available for BASIC is limited. A program written in assembly language, or a BASIC program using assembly subroutines that alter the configuration as needed, can access all of the 64 K RAM.
Audio cassette tape not VHS. However, it is theoretically possible to store data on VHS. Probably easier to pull that off with the TI-99/4A given it's audio line output and use of a fairly normal cassette recorder. Commodore's datasette works a little different than normal. So we would have to some how bring such electronics into the VHS if we were. The TI, I might be able to pull off with a A/V jack. Now, we could do something wicked with a Bluray Ultra4k player with long recording a Ultra4K bluray like a 100+ HOURS of CD Audio (especially if I record direct from TI to recorder audio in. That's like 100 cassettes on one disc. About 31.5 MBytes of TI-99/4A. Okay, not as efficient but raw uncompressed audio with whatever normal noise. Of course, that's assuming less disc efficiency in this style of recording the data as uncompressed audio recording for playback fidelity. We could probably be closer to 63 MB with the 100 GB discs. Of course, we could store a hell of a lot more as computer data as long as we have a file system for such huge massive size disc. But 30+ MByte TI-99/4A program would be unimaginable, almost.
Watched this just to see how things were explained. Note that - at least initially - this video would have been relatively useless to me. When programming you try and emulate things and look things up. However, our home computer was at that time hooked up to the TV, so you could not watch both video and program at the same time. Of course, that situation quickly changed when my parents found out that watching television was getting impossible :)
bit of a difference between primitive basic and the visual basic now or .net .. dont get me wrong maybe because i been programming for over 30 years that the first basic program was a bit strange generating the variable with in oo, aa and cc I would have done it like this lol apples=.20 ' costing is 20p each oranges = .17 ' costings =is 17p each input "How many oranges :", oo input "How many apples:",aa costing= oo*oranges + aa*apples print "Apples ";aa; " at ", apple," total = ";apples*aa print "Oranges "; oo; " at ",oranges," total =";oranges*oo print "" print "Total :" , costing I would have done it that way!! LOL I know its not quite CBM BASIC as it uses REM but I think it would work the same was any other basic language and ; or , depending on the programming language but I last time I wrote a basic program in a Commodore 64 was in 1986 and then I wet to 6502 Machine Code after that
I dont think you understand. There's no physical keyboard. Instead there's an on-screen one where you use the joystick to move a cursor. Also no shift-lock.
Yes, depending the language, but in general syntax is more "user friendly" and there are more efficient ways to design code, like object oriented or functional programming.
The most obvious difference is that most languages have a focus on block structure nowadays, often in syntax inspired by C (using curly braces). BASIC's line numbering harkens back to punch card programming, where it was quite handy to be able to sort your program after a stack of cards was dropped or knocked over. There are BASIC dialects with more modern styles, such as Q-Basic, GFA Basic and Visual Basic. Many implementations don't have an interpreted mode but only batch compilation, while interpreters have gotten more advanced, often using virtual machines or machine code. With a machine like the Commodore 64, there are around 30 possible error messages, none of which explain very much, so you had to rely a lot on books (such as manuals, which were actually useful at the time). With modern computers you can easily store documentation on the same computer and look it up as needed, a task which has been automated with tools like Language Server Protocol. Of particular note, the C64 BASIC actually didn't know very much about the machine it ran on; fancy stuff like sprites and sounds were handled with PEEK/POKE/SYS, which made the step from there to low level programming (often in assembly) much smaller. Today hardware access like that is normally abstracted behind layers like SDL, DirectX or Arduino.
I did try it I got about half of the program to load but there was loads of errors the soundtrack from RU-vid or video tape is to noisy for the c64, I found it faster to type in the code by hand.
One guy discouraged it and then it got parroted. If used with discipline, it can make code fast and efficient, which is especially important on 8-bit systems.
Only in modern days and high level programming. In low level programming and in 1980s programming, it's perfectly acceptable. JMP in 6502 is an equivalent statement to GOTO, and this sort of unconditional branching exists in many other processors.
C64 in 1982. 1MHZ 64 KILOBIT OR RAM ... OMG ILEGAL ! PROBABLI FROM THE THA 1975 TV VIDEO STATION 2D LIVE GRAFICS !!! AND THEY NEEDET PROGRAMAR ..FOR IT .. NO OS . NO MOUSE . STONE AGE PROGARMING ... OMG ILEGAL ... Please at that time ovree ther ... pong is tha thing .. omg . with no colors ! VERI SAD AND VERI BAD ... BOT IT rune !!!