Ten Great Commodore 128 BASIC Improvements Over The C64

  Рет қаралды 39,887

8-Bit Show And Tell

8-Bit Show And Tell

Күн бұрын

As great as the Commodore 64 is, there were a lot of complaints about the lack of features in its built-in BASIC 2. The Commodore 128's BASIC 7 improved upon it in many ways, and today we'll take a look at some of the best.
To support 8-Bit Show And Tell:
Become a patron: / 8bitshowandtell
One-time donation: paypal.me/8BitShowAndTell
2nd channel: / @8-bitshowandtell247
Many Links:
I was interviewed by Clicky/CityXen: • The LO8BC Interviews -...
Commodore 128 Secrets, Bugs, and Easter Eggs: • Commodore 128 Secrets,...
Join the Commodore 128 Escape Club: • Join the Commodore 128...
C128 BASIC Hack: Playing Digital Samples: • C128 BASIC Hack: Playi...
Debugging C128 BASIC with TRON, TRAP, and More: • Debugging C128 BASIC w...
How To Use a 6502 Machine Language Monitor: • How To Use a 6502 Mach...
XYZZY: en.wikipedia.org/wiki/Xyzzy_(...)
Commodore 128 Programmer's Reference Guide: archive.org/details/C128_Prog...
Index:
0:00 Intro
1:33 1. Screen Editor
4:41 2. Sprites
9:16 3. Music
11:58 4. Graphics
16:46 5. Windows
18:30 6. Less Spaghetti
24:14 7. Utilities
25:39 8. Debug
30:40 9. Monitor
35:59 10. Disk Commands
41:40 The cost of BASIC 7: Speed
43:25 Thanks!

Пікірлер: 240
@The8BitGuy
@The8BitGuy 2 жыл бұрын
Neat video, as always. I learned a few things I didn't know about C128 Basic!
@comchia4306
@comchia4306 2 жыл бұрын
Hi 8-Bit Guy! Fun fact: first time I played a C128 IRL was with PETSCII Robots, at Free Play Florida. :)
@bsvenss2
@bsvenss2 2 жыл бұрын
He forgot some... *DREMEL speed[,deep][,impact][,damage]* _Example,_ DREMEL 1024,128,,9999 *PAPER command [deep][,force]* _Example,_ PAPER CLIP 19,9999
@gile849
@gile849 2 жыл бұрын
:)
@DJChol
@DJChol 2 жыл бұрын
@@bsvenss2 roasted. like david's PSU.
@NuntiusLegis
@NuntiusLegis 2 жыл бұрын
Some things are nice, like the fast sprite-movements, but most of the stuff is not essential. I am rather glad they put a more streamlined and faster BASIC in the C64, also resulting in more free address space; the result of a bigger BASIC ROM in the C64 would be less BASIC bytes free, and/or less upper RAM available for BASIC to use for machine code, screen or music data, etc.
@jdmresearch
@jdmresearch 2 жыл бұрын
I watched the first 10 seconds and saw the Ultima V box there. I smiled. Yes, having C128 allowed you to listen to the amazing U5 music (not in C64). I'll watch now the rest.
@bozimmerman
@bozimmerman 2 жыл бұрын
BASIC 7 was a big reason I got very excited about the C128 in '85. I think I memorized them all from COMPUTE's Gazette articles before I even got one. :)
@sunnykhan5451
@sunnykhan5451 Жыл бұрын
I NEVER HAD THE OpPORTUNITY TO HAVE THAT MAGAZINE had the complimentary RUN magazine lol
@giuseppe74921
@giuseppe74921 2 жыл бұрын
I quite often used the c128 new basic features, the sprite editor was useful, but what i liked most was playing with the command circle, it has got a pair of parameters that i didnt find in other basics even on amiga various basics i always missed it The first parameter was the angle of rotation of the ellipse and the second parameter was the angle between segments of the circle (an angle of 1 is a perfect circle, and an angle of 90 is a box). So with a for next i enjoyed a lot to draw some sort of abstract figures: 5 Graphic 1,1 10 For n=1 to 180 step 5 20 Circle 1,160.100,160,50, , ,n,45 30 Next n Something like this ("n" is the rotating angle and 45 is the angle between segments, 45 would give an optagon of an ellipse, try to give 36 for a decagon: to obtain a polygon of x sides, just use an n=360/x). If u change line 20 with: 20 Circle1,160,100,100,100, , ,n, 90 then it would draw a rotating diamond (like u did with the box command) Another feature not very well known is that u can even use sort of vector as cohordinates, using a ; (semicolon) as in L ; r where L is the lenght of the segment and r is the angle, so: 5 graphic 1,1 10 for n =1 to 360 step 5 20 draw 1,160,100 to 100 ; n 30 next Would draw a star. You can use this way of writing cohordinates using vectors with other graphics commands like box, circle etc. A nice combination: 5 graphic 1,1 10 for n=1 to 180 step 5 20 circle 1,160,100,160,50, , ,n,15 30 next 40 for n=1 to 360 step 5 50 draw 1,160,100 to 100 ; n 60 next 70 sleep 10 80 graphic 0
@phlogicali
@phlogicali 2 жыл бұрын
Great video! The ELSE command can be in a different line if a BEGIN … BEND block is used: 10 IF I=0 THEN BEGIN 20 : PRINT "THEN BLOCk“ 25 : PRINT "STILL THEN BLOCK“ 30 BEND : ELSE BEGIN 40 : PRINT "ELSE BLOCK" 45 : PRINT "STILL ELSE BLOCK“ 60 BEND
@markboulton954
@markboulton954 2 жыл бұрын
Yes indeed... I'd forgotten about that one, but I did use it a lot at the time!
@CRCO1975
@CRCO1975 2 жыл бұрын
The C-128 was my first (and only) Commodore computer. There were so many tricks it had that no other Commodore 8-bit machine could do. BASIC 7.0 was great - though much of what it brought to the table in terms of graphical commands were from BASIC 3.5, but even before that - the Super Expender cartridges for the VIC 20 and C-64 had most of those same commands. The function keys with their predefined definitions (F3 = DIRECTORY) were very useful. But what I loved most, and perhaps Robin may go into this if he continues down the 128 path a bit - were all the tricks it had that weren't quite so obvious. Things like redefining what SHIFT-RUN/STOP and HELP did, like an F9 and F10, or programs that would boot and load quickly in C-128 mode and then reboot into C-64 mode and run to take advantage of the burst mode on the 1571 drives. Or, how you could enable the numeric keypad and use it in C-64 mode. Lots of tricks it had hidden. Loved it!
@markjreed
@markjreed 2 жыл бұрын
When you were talking about IF/THEN was expecting that to lead into a mention of BEGIN/BEND, which allow you to have multiple lines inside both the THEN and ELSE parts of an IF statement. (You would think that they would let you have unconditional statements after a conditional on the same line, but sadly that doesn't work.)
@DickDawsonTheShills
@DickDawsonTheShills 2 жыл бұрын
Commodore was big in my house and not just the computers. We had commodore labeled file cabinet and all as well.
@32Bits
@32Bits 2 жыл бұрын
Another great video. Nice to see the 128 getting some love. Basic 7 was such an improvement over Basic 2. So many fond memories of hours spent coding in Basic on my 128.
@WalterFrancis
@WalterFrancis 2 жыл бұрын
I've never in my life touched a 128, a few friends had one, I was always a little jealous that they could BBS in 80 columns. They were a neat little machine, but the price was pretty high and I held onto the C64 until the Amiga 500 came out and had dropped in price a bit. Funny story; I really wanted a 1581, saved up for it, but it wound up being SO CLOSE to the Amiga price, I got the Amiga instead :)
@davidg1830
@davidg1830 2 жыл бұрын
Best part of Commodore 128 was being a C64, so you, without a C128, had the best part of C128. The other best part of C128 was including a good machine language monitor on ROM, so you can play with it directly.
@abodabalo
@abodabalo 2 жыл бұрын
I absolutely loved the drawing commands and had memorized a couple of cool pattern drawing loops. Thank you for the memories :)
@iridium130m
@iridium130m 2 жыл бұрын
I loved my 128. I remember starting programming tutorial books in C64 mode because that was the first book off my parents bookshelf I grabbed and remember being totally frustrated with the pokes and peeks of trying to do graphics and sound. Then I found the C128 manual that came with the system and never turned back to the C64 mode for programming. I wrote several graphical demos for middle school projects leveraging the sprite editor and graphics commands along with the super easy play command for music. It really was the apex of commodore basic.
@judgegroovyman
@judgegroovyman Жыл бұрын
That c128 manual was fantastic. Its how I learned basic
@slashtiger1
@slashtiger1 2 жыл бұрын
@16:18 Robin: "Maybe I should make more videos in C128 mode" Me: *"Yes, please!"*
@NuntiusLegis
@NuntiusLegis 2 жыл бұрын
I would like to see two monitors in action.
@Lofote
@Lofote 2 жыл бұрын
Trivia: The reason why c128 editor allows 4 lines of basic as one row is because they wanted to give 2 lines of code in 80 col mode, because people are used to 2 lines 😊 the side effect is that the new 160char buffer then of course allows 4 lines in old 40col mode 😊
@vwestlife
@vwestlife 2 жыл бұрын
My first Commodore was a C16, and when I got a C64 I was disappointed that despite being a more powerful machine, I had to use POKEs and PEEKs to do graphics and sound, rather than having actual commands for it -- and also how it lacked any direct command to do a disk directory.
@jack002tuber
@jack002tuber 2 жыл бұрын
Ah yes, I dealt with that a lot. The 1541 drive comes with a disk, test 1541 or something. It came with a "DOS WEDGE" program, you load that and get a few new commands $ for dir, / for load, like that. Super nice to have
@tylisirn
@tylisirn Жыл бұрын
The C64 was really done dirty by Commodore's cheapness to not pay proper license for the version of Basic they included, so they included an ancient version on their most advanced machine at the time.
@fluffycritter
@fluffycritter Жыл бұрын
The C128 BASIC improvements were what got me started in game development. It was so much easier to learn than endless PEEK/POKEs or having to go into full-on assembly code. I had no idea about the Esc codes. All this time I thought Esc was basically unused on the C128!
@casaderobison2718
@casaderobison2718 2 жыл бұрын
1: WATFOR77, an enhanced FORTRAN compiler I used in the 80s, had the double ended WHILE / UNTIL loop construct. 2: I would imagine the P parameter to BSAVE is intended to be a mnemonic for Pointer.
@what-uc
@what-uc 2 жыл бұрын
Or Position maybe
@GeoffSeeley
@GeoffSeeley 2 жыл бұрын
I'm guessing P for pointless 🙂
@barryon8706
@barryon8706 2 жыл бұрын
or "P" for "Ponder what P stands for"
@mechaform
@mechaform 11 ай бұрын
Very enjoyable. Amazed to still be learning new stuff about the 128 after all these years. Now I’ll have to binge the other videos of yours I’ve missed.
@tiger1x
@tiger1x 2 жыл бұрын
This is really awesome! Some commands reminds me of the BASIC 3.5 of the C16 which I started to program with in the 80s! It's a wonderful flashback into the 80s including some AH!-effects! Great job, Robin!
@markboulton954
@markboulton954 2 жыл бұрын
Wow, I had a C128 for years and I never knew about those ESC codes!
@matthiasstppuhn514
@matthiasstppuhn514 2 жыл бұрын
A good amount of the ESC stuff also works on C16/Plus4
@davidg1830
@davidg1830 2 жыл бұрын
Nor do I when I was teenager. When I was adult I discovered C128 ESC codes and I appreciate their power.
@Electronics-Rocks
@Electronics-Rocks 2 жыл бұрын
Brings back memories of using my c128 I have dragged it out but still not powered it up since the 90,s as I was still supporting some legacy CPM system. Even though I had Amiga by then to play games and office applications.
@markboulton954
@markboulton954 2 жыл бұрын
The C128's extra features still didn't include my favourite feature from the VIC20's SuperExpander: being able to scroll up and down through a BASIC listing using CTRL+A and CTRL-Z.
@jeffzebert4982
@jeffzebert4982 Жыл бұрын
Making simply a constant tone sound on a C-64 requires the following commands: POKE 54296,15 (sets the volume to maximum) POKE 54278,128 (sets your Sustain to maximum) POKE 54273,80 (sets your tone's frequency) POKE 54276,17 (activates your tone on Voice 1, using the Triangle waveform) And if you want to turn off the tone, then: POKE 54276,16 Some optional sound POKEs: 54272 (minimum frequency) and 54277 (sets your Attack/Decay)
@SteveGuidi
@SteveGuidi 2 жыл бұрын
Some of these BASIC commands are inherited from BASIC 3.5, which is featured in the 264-series machines (C16, C116, Plus/4, etc...). The WINDOW, TRAP, GRAPHIC, BOX, CIRCLE (and of course MONITOR) are present there too. I was goofing around with the CIRCLE command a few months ago and it turns out that in addition to ellipses, you can draw any N-gon like triangles, squares, pentagons, all the way up to the limits of the screen resolution and integer overflow. It seems that after about 25-sides, the polygon becomes indistinguishable from a circle :)
@rigues
@rigues 2 жыл бұрын
How can you draw a triangle with a Circle command? 🤔
@SteveGuidi
@SteveGuidi 2 жыл бұрын
@@rigues I used the following in BASIC 3.5: 10 GRAPHIC 1,1 20 CIRCLE 1,160,100,88,88,,,,120 This is from my notes, and I forget the proper definition of the last parameter for CIRCLE. It controls the length and angle between adjacent sides in the shape, and I think it is supposed to be used to draw arcs. If you omit it and just specify the co-ordinates, a proper circle is drawn.
@elnebuloso9391
@elnebuloso9391 2 жыл бұрын
Sniff, I'm missing my old 128D that I stupidly traded for a PC-AT once. 😪
@andre0000000007
@andre0000000007 2 жыл бұрын
thank you so much, loved the trip down memory lane!! you mention the 2mhz mode, was that the FAST/SLOW basic command? i thought i used it in normal 40columns, the screen used to go off but it drew my picture at twice the speed. 😀
@jeffzebert4982
@jeffzebert4982 Жыл бұрын
In BASICA (IBM BASIC), as well as GW-BASIC for PC clones, your cursor, as well as the text that you'd write, would be visible in the bitmap screens (probably because even CGA cards had more video RAM than the C-128's VIC II Chip had). Albeit, the cursor in BASICA/GW-BASIC's bitmap screens was in the form of an unblinking block. If you had an EGA card, then you had several additional bitmap "screens", including an 80-column screen that could display 16 colors at once.
@OscarSommerbo
@OscarSommerbo 2 жыл бұрын
Most of the disk commands feels like just new labels on existing commands. I only had a 1541 for my c64 and quickly learned the few "OPEN" commands you really needed in every day use.
@CityXen
@CityXen 2 жыл бұрын
Love the C128. It was 3 computers in one, and it had 80 column mode built in. Amazing for it's time.
@BilHerd
@BilHerd 2 жыл бұрын
Terry Ryan w/ Fred Bowen are responsible for the advanced features in Basic, Terry got in trouble for adding the structured basic commands.
@SYS280870
@SYS280870 2 жыл бұрын
I had a C128, loved its BASIC, I made a lot of BASIC programs using sprites and graphics commands for 3D applications and trigonometric functions or 2D graphics functions too. Used a lot escapes sequences for screen editor and new commands for structured programming. The SOUND command for making sounds and of course PLAY for music. Thanks to the Monitor I started to programming in assembler, another cool thing that I discovered playing games in C64 mode was after reset to C128 some of the game code still kept in memory so using Monitor I could discover in some games where the lives were drecemented then changed the instructions for NOPs with some POKES after the game was loaded in C64 mode so that way I had infinites lives lol
@TastyBusiness
@TastyBusiness 2 жыл бұрын
See now I want to fire up my 128D again and play with the special features of its BASIC. Also, HUUJH
@vcv6560
@vcv6560 2 жыл бұрын
This video just reminds me again of the achievements of Commodore post Tramiel. Its unlikely he would have approved such a lavish final 8-bit treatment. Nearly everything else went wrong but this product they got right. Even if its development killed the LCD project (ref: Bill Herd).
@bblevins
@bblevins 2 жыл бұрын
Woooooot!! Robin! Thank you so much! This episode is Fantastico. So much info to learn and start playing with, I loved every minute!
@bsvenss2
@bsvenss2 2 жыл бұрын
I loved my Commodore 128 and even used it in CP/M mode a lot, BUT I did hate the color scheme and always changed that.
@MegaMJoker
@MegaMJoker Жыл бұрын
27:24 They made try and catch clause back in the 80s! How cool is that! 38:36 The P is probably for "position".
@Diotallevi73
@Diotallevi73 3 ай бұрын
try/catch: Exactly! And the garbage collection known from languages like Java was there already, too, even if it only had to handle strings in Commodore BASIC.😊
@magnustveten492
@magnustveten492 2 жыл бұрын
17:56 aweee….why list and not run to show scroll..I was hoping to see the maze in the little window, that would be neat.. :)
@quantass
@quantass 2 жыл бұрын
YAY, Robin is back!!
@GreatNorthWeb
@GreatNorthWeb Жыл бұрын
SHIFT-RETURN to exit quote mode???? Why did it take me decades to learn that? I've wasted thousands of keystrokes over the years.
@8_Bit
@8_Bit Жыл бұрын
It even works on the C64 and VIC-20! And probably the PET though I don't remember if I've tried it...
@MichaelDoornbos
@MichaelDoornbos 2 жыл бұрын
12:52 Interesting that yours starts cleared here. My flat 128 always starts with the top full of initialized memory junk so I'd developed a habit of clearing the screen automatically.
@carmagnola3000
@carmagnola3000 Жыл бұрын
Yeah, basic 7.0 was great! But I wished, the c128 had the 127 colours of the plus4, which I had lend a few months from a friend
@Lofote
@Lofote 2 жыл бұрын
36:00 or even better just press F3 for DIRECTORY ;)... I believe you didn't list that. By the way you can also customize F keys with the KEY command. 41:30 I am pretty that checking a LOT more opcodes also makes the BASIC much slower, not just banking.
@snakefriesia6808
@snakefriesia6808 2 жыл бұрын
great video, i love that you used Ultima V as a boot example 🙂
@choppergirl
@choppergirl Жыл бұрын
Wish I had has a 128 back then instead of a 20 and 64, but on the other hand, if I had, I would of stuck with the platform longer. My platform becoming hopelessly outdated forced me to jump ship. Now I have a PET, 128, 128D, 64, 20, in multiples... but in 30 years haven't turned a single one on save for the PET once (because there was nothing to wire up.. you just flip the switch). That must of been back in 1995. I don't dare now or I'll probably blow a cap. I went from 20 to 64 Basic to PET Basic to Microsoft Quickbasic on a PC AT to Quickbasic on a Mac to FutureBasic on a Mac and that was the end of it.
@bloodmapedit
@bloodmapedit 2 жыл бұрын
I remember there was even the possibility to use the numpad in C64 mode with a small piece of code.
@Eightbitswide
@Eightbitswide 2 жыл бұрын
I remember being so excited when I got my 128 back in the day, until I figured out that the extended BASIC 7.0 was slower than BASIC 2.0.
@c128stuff
@c128stuff 2 жыл бұрын
The interpreter has more overhead due to the bankswitching it has to do, but you do get a lot of powerfull commands in return which can make at least some programs more efficient (and hence spending less time in the interpreter loop)
@Lofote
@Lofote 2 жыл бұрын
Yeah but if you don't need the screen for some time you can go FAST, in 80col mode even permanently. Plus it is much easier to add an assembler routine for things you need to go real fast using MONITOR, and to load and save those routines BLOAD and BSAVE 😊
@Lofote
@Lofote 2 жыл бұрын
@@c128stuff not just banking. It has to go through more possible basic command possibilities, and the irq routine does more like that sprite move routine and the split graphic mode.
@c128stuff
@c128stuff 2 жыл бұрын
@@Lofote that irq routine does more, but that isn't that expensive really. More commands matters somewhat, but more during tokenizing. The overhead of reading data from bank 1 and code from bank 0 however is quite significant. Just consider the difference in cycles between an lda (zp),y versus the indirect fetch which the basic interpreter has to use everytime it needs another byte of data or code. I write a fair bit of 128 mode code, and if you can write your code to avoid that indirect fetching scheme, there are significant gains to be had. This is especially true when having to copy around data (screen updates etc).
@c128stuff
@c128stuff 2 жыл бұрын
​@@Lofote many serious c64 users would have a utility cart with a ml monitor :-)
@projectartichoke
@projectartichoke 2 жыл бұрын
With the BSAVE command, I'm pretty sure the letters D,U,B, and P stand for Drive#, Unit# (device#), Bank#, and Position# (address#).
@NotaWizard
@NotaWizard 2 жыл бұрын
Glad to hear you're feeling better. Never had much experience with 128s, but this is cool stuff. Thanks for showing us. "Oh great... another mouth to feed" haha poor Bit.
@QualityModelRailroad
@QualityModelRailroad Жыл бұрын
Love the 128 vids keep them coming !!!
@TheUtuber999
@TheUtuber999 Жыл бұрын
43:00 Regarding the slower BASIC processing on the C-128, for situations where video output isn't critical, there is always the FAST command which blanks the screen and doubles the CPU speed to 2 MHz.
@chromosundrift
@chromosundrift 2 жыл бұрын
Amazing as usual Robin! Would love some more assembly coding content in case you’re so inclined. Or music! I know you’re a musician, do you make c64 music or mostly guitar stuff?
@8_Bit
@8_Bit Жыл бұрын
I mostly just do guitar-based stuff. I find trying to make C64 and other sequenced music really tedious and I just don't have the patience for it.
@gklinger
@gklinger 2 жыл бұрын
That was really interesting. I think it's one of the best videos you've ever done.
@akira808state4
@akira808state4 2 жыл бұрын
I have a Commodore 128. I have JiffyDOS installed. JiffyDOS adds faster disk routines also included the latest patches. You can also lock the Commodore 128 in 64 mode by typing the following statements: BANK 1: POKE 65529,255:POKE 65528,77 Then type SYS 65341. You will be in 64 mode. Now when you reset, it stays in 64 mode, which eliminates the annoyance of having to type GO64 or SYS 65357. The only way to completely exit is to shut down the computer. BASIC 7.0 is a cut above BASIC 2.0. Much easier to program without all those annoying POKE statements.
@grymmjack
@grymmjack Жыл бұрын
This is awesome. Going to have to use vice 128 now :D
@TamasKalman
@TamasKalman 2 жыл бұрын
amazing. fantastic usability improvements over the c64 indeed.
@ragsixracing
@ragsixracing Жыл бұрын
I miss my c64... I miss programming in basic. Now I want a c128 lol
@3D-PHASE
@3D-PHASE Жыл бұрын
Wow. I'm surprised how cool the 128 is. Never knew it. Love it! Thx for this video - you are a good explainer! A big like!!!
@merykjenkins3274
@merykjenkins3274 2 жыл бұрын
There are some great additions to the BASIC I grew up with! Some the VZ machines already had like auto line numbers and the else command but the screen editor commands would have been so handy, especially inserting blank rows and the sprite editor would have saved a small forest of grid paper! Thanks Robin!
@NuntiusLegis
@NuntiusLegis 2 жыл бұрын
It's not difficult to write a simple sprite editor in C64 BASIC, like that neat listing in the Programmer's Reference Guide at 6:20. :-)
@petteriheino9856
@petteriheino9856 2 жыл бұрын
I used the 128 disk commands even with the C64 disks to the extend that I never really learned the 64 disk commands.
@NuntiusLegis
@NuntiusLegis 2 жыл бұрын
The C64 OPEN command works closely along the KERNAL routines, so when stepping up to assembly, file handling falls into place quite naturally.
@metalfoot7
@metalfoot7 2 жыл бұрын
You have convinced me to get the C128 back out and set it up soon!
@c128stuff
@c128stuff 2 жыл бұрын
Heh.. VDC and being slow.. screen editor is rather optimized for the cpu addressable video ram setup you get with a vic2. If an implementation had been written optimized for VDC, it would have been much faster than it is now, and for as far as text mode is concerned, also faster than vic2 in many cases, especially things like scrolling. It has some very rudimentary but quite usefull acceleration features, which let it do vram to vram copies and vram fills in parallel to the 8502, but those can also be used as a hardware assisted rle decoder for transferring data from system ram to vram faster.
@richarddeese1991
@richarddeese1991 Жыл бұрын
Thanks. Pretty cool. Also: you played the first chord of Kraftwerk's "Neon Lights". Good one! ;) tavi.
@markjreed
@markjreed 2 жыл бұрын
I always assumed that the P stands for "Position" (in memory). As good an explanation as any, at least!
@joolzg
@joolzg 2 жыл бұрын
Most of these command where in my "Turbo Basic" which i wrote in '81. Was sold in the UK by Aztec Software.
@ChristmasEve777
@ChristmasEve777 Жыл бұрын
You just happened to bring up my all-time favorite Commodore game, Ultima V!! haha. And I did run it on a 128 as well. Gosh, I loved that game. It was weird how you had to level your characters. You had to encamp and hope an "apparition" appeared, which was Lord British (whom was missing) and he would grant you new levels!
@denismilic1878
@denismilic1878 7 ай бұрын
I'm glad that I got C=64, POKE, PEEK, INPUT, and DATA forced me to teach myself Assembler.
@VernesMisadventures
@VernesMisadventures 2 жыл бұрын
Gotta love the 128! Thanks for another great video!
@HelloKittyFanMan
@HelloKittyFanMan 9 ай бұрын
Wow! How come I don''t remember ever learning these additional screen editor tools (at least the esc-codes) when we got our 128 in 1988?
@adamburgess1287
@adamburgess1287 2 жыл бұрын
Commodore and BBC BASIC were indeed the best. Thank you, Robin!
@davidg1830
@davidg1830 2 жыл бұрын
There is no comparison: BBC BASIC was best 8 bit BASIC I know of, it has procedures/functions (for real structured programming like in Pascal). On C128 v7.0 BASIC you have no procedures nor functions (program functions) and even worse: they maintain original limitation from Microsoft 6502 BASIC: variable names only take 2 characters (the other are ignored, so AA, AA1 and AA2 variables are the same variable). I had a C128, and no BBC computer.
@albertcontreras76
@albertcontreras76 Жыл бұрын
Locomotive BASIC (in the Amstrad CPC series) was extremely powerful as well.
@jkeelsnc
@jkeelsnc 2 жыл бұрын
A very nice Basic. A gigantic improvement on the 64.
@mosaton
@mosaton Жыл бұрын
Great video. I wish I knew these commands as a kid.
@andrea435
@andrea435 2 жыл бұрын
Fantastic...Thank you very much.
@awilliams1701
@awilliams1701 2 жыл бұрын
OMG renumber alone would have made me so happy when I was a kid. I wrote long programs and they constantly turned into a mess. But yeah there is a lot of stuff I would have loved. I didn't know about any of this.
@napomania
@napomania 2 жыл бұрын
excellent final tune. as always
@c128stuff
@c128stuff 2 жыл бұрын
The way those text windows are implemented is quite nice, happily stole the approach it uses for my own projects.
@HelloKittyFanMan
@HelloKittyFanMan 9 ай бұрын
"Everything before the cursor..." ...on that line, that is.
@yorgle
@yorgle Жыл бұрын
With the sprite, once you edit it, how would you save it? Like i could see writing a basic program, and using that to edit my sprites, but how would i go about saving/restoring the sprite bitmaps to disk? (Nevermind. you cover this at 38:00)
@edoardobarolo4680
@edoardobarolo4680 Жыл бұрын
Question: are you going to buy a MEGA65 in the future? It could be great to see many video on that retro/modern computer !! It’s a little buggy so you could help them out !
@pklausspk
@pklausspk 2 жыл бұрын
Great! I owe a C128D but did not know much of it's capabilities.
@MegaTubert
@MegaTubert Жыл бұрын
Nice video as always! I wonder if the RENUMBER command can handle GOTO statements?
@Diotallevi73
@Diotallevi73 3 ай бұрын
Yes all the referenced line numbers (GOTO, GOSUB, TRAP) are converted 👍
@aresaurelian
@aresaurelian 2 жыл бұрын
This is so interesting. Familiar memories.
@quantass
@quantass 2 жыл бұрын
@24:15 you mentioned RENUMBERING. What happens if you have a GOTO ##? Does it renumber that too? For instance: 50 GOTO 10.
@MaxQ10001
@MaxQ10001 2 жыл бұрын
Why do you put the machine the wrong way? It has such a beautiful front bezel 😊 Nice video btw 👍
@judgegroovyman
@judgegroovyman Жыл бұрын
Could you use the 128 as a renumbering system for your c64 programs?
@AnnatarTheMaia
@AnnatarTheMaia 2 жыл бұрын
Getting the C=128D with BASIC 7.0 after having the C=Plus/4 with BASIC 3.5, I had a leg up on most of the enhancements, since 3.5 has a lot of the 7.0 commands, like for example: AUTO, RENUMBER, DRAW, CIRCLE, DIR, DLOAD, DSAVE, et cetera.
@buttguy
@buttguy 2 жыл бұрын
Curious if the renumber command will fix all the numbering within the code? Say if you have a command "goto 145" and 145 is now called 70, will it fix the numbering in the code or will it break the program?
@brucekempf4648
@brucekempf4648 2 жыл бұрын
Hi Robin- Do you think you would be able to do a mod on The C64 maxi to add a C128 ROM emulation?
@LevitskiSRGE
@LevitskiSRGE Жыл бұрын
Oh, it's almost like vi 😅 Would be crazy to have this on my spectrum back in the day. Unfortunately it's like reading some amazing news in the newspaper from 30 years before. Today you would program in the modern environment anyways and compile in to the virtual machine.
@gile849
@gile849 2 жыл бұрын
Man, thank you, awesome. Insane :)
@bob19611000
@bob19611000 2 жыл бұрын
Did the renumber utility also update "Go to" statements?
@MoosesValley
@MoosesValley Жыл бұрын
Great video. Can you "re-compile" C128 Basic progs to work on C64 Basic ? Or better yet, compile them to machine code to work on C64 ?
@8_Bit
@8_Bit Жыл бұрын
I'm not aware of any way to get C128 BASIC programs to run on the C64. I imagine it'd be possible with a LOT of work to port C128 BASIC to the C64, but you'd end up with very little RAM free. Probably better to use one of the C64 add-on language cartridges such as Simons' BASIC or Super Expander 64 that provide some (but not all) of these features.
@sandmanxo
@sandmanxo 2 жыл бұрын
I never had a c128 but these are interesting. I wonder why they didn't stick with the same letter combos as vi, as some of these codes match up but maybe that's just coincidence.
@retrodevdroid3670
@retrodevdroid3670 2 жыл бұрын
I really have to get a Commodore C128. So far I only have a C16 and a C64. :-/
@basicforge
@basicforge 2 жыл бұрын
Fun. I might actually try to program my C128. So far I've only used it in C64 mode. Can you also BSAVE and BLOAD using the datasette?
@iekuieku1665
@iekuieku1665 7 ай бұрын
Thank you for this video.I had a C128 from 1986 to 1989 and did not know some things. When booting from floppy disk, how does the computer know which CPU (MOS 8502 or Z80A) should execute the code?
@8_Bit
@8_Bit 7 ай бұрын
Apparently every time the C128 is started it's in Z80 mode. It then checks the disk drive for a CP/M disk (it has a special signature on it) and boots it if found. If not, the C128 switches to using the 8502 and boots into regular C128 BASIC mode. I haven't actually examined this for myself ever, I've just read about it a bit.
@project1984
@project1984 2 жыл бұрын
What happens to goto commands if you renumber a program? Do they change automatically?
@64jcl
@64jcl 2 жыл бұрын
The sprdef seems to just store it in memory somewhere? How do you know which VIC bank it is in and it surely can overwrite your basic program if its in same memory? Seems a bit dangerous. Also a programmer would have to get that sprite data out somehow into their program. Is there a command for making e.g. data statements or was it perhaps expected he would know where in memory that was and do a BSAVE onto a disk and just do a BLOAD in the start of your program I guess ? Same with the graphics command, can you control where the bitmap is created?
@aquiderossi7366
@aquiderossi7366 2 жыл бұрын
This is from memory--might not all be accurate... There's a set of eight predefined memory slots for sprite graphics so they won't be disturbed. The main thing the sprite commands by themselves can''t do is "cel animation". From the commands' perspective, the sprites are hardwired to those memory slots; but you can always change the sprite pointers manually. You can BLOAD and BSAVE sprite data to/from that part of memory no problem; also there's "rubber stamp" get/put commands that, if I recall correctly, can go from bitmap to sprites and vice versa. The grabbed graphics data are stored in a string so there''s a limit on size. Whenever you first use a GRAPHIC 1 through 6 command, it moves the BASIC program and start of memory up 9K and there's a predefined space for the bitmap screen (8192-16191) and a second screen memory block in addition to the usual 1024-2023 (allows for independent splitscreens). The VIC chip always uses the first 16KB "bank". It'll stay allocated from then on so you can do something like GRAPHIC 1: GRAPHIC 0 first thing in your program. GRAPHIC CLR deallocates it. But doing either of these after DEF FNs breaks them--whoops. Also there are two 1K color memory blocks (both at 55296 like usual), and the 128-specific memory manager has two settings, one for which the VIC chip sees, and the other what the CPU sees. This allows for fully independent splitscreens with multicolor bitmap mode.
@shawnj4545
@shawnj4545 2 жыл бұрын
The Atari 800 had a very good full screen editor in 1979, with pretty much all these features being shown.
@shanebell1
@shanebell1 9 ай бұрын
Don't forget Atari Basic would compile code into P-Code and thus didn't need to be interpreted when running. It would check the syntax and would use abbreviations to cut down on typing (pos. = position , etc.).
@keyboard_g
@keyboard_g 2 жыл бұрын
How available is the z80 co-processor? Are clever people able to do async programs?
@granitepenguin
@granitepenguin 2 жыл бұрын
does the renumber command understand goto statements and renumber them correctly as well?
@gosammy1971
@gosammy1971 2 жыл бұрын
Yes, there was even an extra error message for unresolved references
99.8% Compatible? The C64 Mode of the Commodore 128
1:02:11
8-Bit Show And Tell
Рет қаралды 28 М.
Fixing a Bug in Rodnay Zaks' "Programming the 6502"
43:38
8-Bit Show And Tell
Рет қаралды 22 М.
Backstage 🤫 tutorial #elsarca #tiktok
00:13
Elsa Arca
Рет қаралды 37 МЛН
Китайка и Пчелка 4 серия😂😆
00:19
KITAYKA
Рет қаралды 3,6 МЛН
My New Favourite C64 One-Liner?
48:09
8-Bit Show And Tell
Рет қаралды 42 М.
Exploring Sid Meier's Pirates! - BASIC Code, Quirks, Bugs on Commodore 64
46:01
Exploring 1982's Commodore MAX Machine: Commodore 64's Little Brother
47:51
8-Bit Show And Tell
Рет қаралды 52 М.
Is this the FASTEST and CHEAPEST 8-Bit Computer Ever?
28:43
Noel's Retro Lab
Рет қаралды 156 М.
One-Line Bouncing Ball: Commodore 64 BASIC
42:34
8-Bit Show And Tell
Рет қаралды 59 М.
Laser 128 and XT - Clones better than the originals!
23:21
The 8-Bit Guy
Рет қаралды 546 М.
Dumping (And Playing) LeMans Ultimax Cartridge on the Commodore 64 (Part 1)
38:50
THE C64 Mini inside a Commodore 64
22:49
Retro Recipes
Рет қаралды 70 М.
10 Rarely Used Commodore 64 BASIC Features
31:20
8-Bit Show And Tell
Рет қаралды 73 М.
One-Line PET Emulator for Commodore 64
27:17
8-Bit Show And Tell
Рет қаралды 26 М.
📦Он вам не медведь! Обзор FlyingBear S1
18:26
iPhone 15 Pro vs Samsung s24🤣 #shorts
0:10
Tech Tonics
Рет қаралды 13 МЛН
APPLE совершила РЕВОЛЮЦИЮ!
0:39
ÉЖИ АКСЁНОВ
Рет қаралды 599 М.
Iphone or nokia
0:15
rishton vines😇
Рет қаралды 1,7 МЛН
5 НЕЛЕГАЛЬНЫХ гаджетов, за которые вас посадят
0:59
Кибер Андерсон
Рет қаралды 1,5 МЛН