LOAD"*",8 vs. LOAD"*",8,1 on the Commodore 64

Ғылым және технология

What's the difference between LOAD"*",8,1 and LOAD"*",8 ? We take a look at several games which require these and other incantations to start, and explore the concept of the load address of Commodore PRG files.
Links:
Michael Doornbos' blog: imapenguin.com/tag/retro/
PETSCII Robots by The 8-Bit Guy: www.the8bitguy.com/product/pet...
To support 8-Bit Show And Tell:
Become a patron: / 8bitshowandtell
One-time donation: paypal.me/8BitShowAndTell
2nd channel: / @8-bitshowandtell247
Music is "Unsaved" from the album "Place Without A Computer" by Bedford Level Experiment: bedfordlevelexperiment.bandca...
Index:
0:00 Intro
2:38 Master of Magic - BASIC Loader
4:41 Autoduel - Autostart!
5:46 Finding Start Address with Super Snapshot monitor
6:26 Examining Autoduel's autostart in MLM
7:45 Platoon's two-faced loader
10:54 Disk directories: only LOAD"$",8
12:38 Gravinauts: saving machine language to file
16:33 Ultima III: only LOAD"$",8
18:21 Attack of the PETSCII Robots
21:14 Ultima II: "*" doesn't work!
23:31 Finding load address with Model 1541 Test/Demo Diskette
25:20 Finding load address with Fast Hack'Em
30:03 Command wedge: / and %
30:34 Thanks/Credits

Пікірлер: 355

  • @Blackadder75
    @Blackadder753 жыл бұрын

    i learned to type the ,8,1 as a young boy without ever knowing what it meant. It was just the magic command to get the games to run

  • @fitfogey

    @fitfogey

    3 жыл бұрын

    Same here. I stayed away from ,8 like it was a rabid animal for some reason.

  • @TokyoXtreme

    @TokyoXtreme

    3 жыл бұрын

    @@fitfogey you need that ,1 to keep that wild ,8 fenced in. My friend used to type ,8,8 like a madman.

  • @brianmiller6340

    @brianmiller6340

    3 жыл бұрын

    Ditto. Also, we had a Mach 5 cartridge in our C64 at all times.

  • @lordevyl8317

    @lordevyl8317

    3 жыл бұрын

    I only used ,8 when the loading instructions said so. Most of the time I ran into ,8 only however was if the game was written entirely in BASIC

  • @BillAnt

    @BillAnt

    3 жыл бұрын

    I was always using a variety of "fast loader" cartridges like Fast-Load, Ice-Pick, Snap-Shot, Datel's Action Replay, etc, all had a hot-key (usually two keys) which eliminated the need to type the long LOAD"*",8,1

  • @The8BitGuy
    @The8BitGuy3 жыл бұрын

    Wow. I didn't think there would be much to learn in this video. But I learned a lot of things I did't know about! Thanks for making this. And also thanks for the unexpected sighting of Petscii Robots!

  • @8_Bit

    @8_Bit

    3 жыл бұрын

    Thanks again for sending PETSCII Robots, the box and manual look fantastic and I'm looking forward to trying out that SNES adapter... on the PET? That seems crazy :)

  • @RetroGameCoders

    @RetroGameCoders

    3 жыл бұрын

    @@8_Bit would be good to see you code something up to demo the adapter? :)

  • @user-rb7by7qm4j

    @user-rb7by7qm4j

    3 жыл бұрын

    @@RetroGameCoders ,,,llllll

  • @anjinmiura6708

    @anjinmiura6708

    3 жыл бұрын

    I like to think my own stupid question posted in another video about TMP. I was loading TMP but didn't know about the ,1 at the end! I eventually figured it out and then updated my own comment with the solution. Or it's just coincidence and you never noticed ;)

  • @TheRetrospective

    @TheRetrospective

    3 жыл бұрын

    Yeah, I honestly didn’t even know that * means “first file” only for the first time, and “last loaded file” thereafter. But it’s an edge case since in practical life who would load the same file twice...?

  • @applesushi
    @applesushi3 жыл бұрын

    I knew about half of this. Who would've thought that 35 years later, I'd learn the other half. Thank you.

  • @geofftaylor8913

    @geofftaylor8913

    3 жыл бұрын

    I was about to write the same thing!

  • @TheRetrospective

    @TheRetrospective

    3 жыл бұрын

    same here and now kicking myself for not knowing as a kid

  • @BillAnt

    @BillAnt

    3 жыл бұрын

    Lots of "old dogs" learning new tricks here. he-he

  • @janvoogt6089

    @janvoogt6089

    3 жыл бұрын

    Another old dog here! Never to old to learn though! :-)

  • @adriansdigitalbasement
    @adriansdigitalbasement3 жыл бұрын

    I thought I fully understood the load mechanics but clearly not! Thank you Robin for this super informative video - something to learn for even the most die hard C64 fans.

  • @DavidYoud
    @DavidYoud3 жыл бұрын

    Well done! I saw the title, and a 30-minute length, and I was thinking that I couldn't possibly talk on ",8" vs ",8,1" for that long. But then, I'm not Robin. :) These are the details that make the C64 so engrossing. That Platoon loader is a little gem, and I only know about it because Robin leaves no 8-bit stone unturned. I still wonder how the ancient ones, with no web and poor documentation options, figured out such a variety of techniques on tight deadlines. All this 8-bit ingenuity unfolded over such a short period of time.

  • @BillAnt

    @BillAnt

    3 жыл бұрын

    Before the internet there were many BBS/message boards, some for "warez", while others for programmers, so even back then people had means of sharing tips and tricks.

  • @scality4309

    @scality4309

    3 жыл бұрын

    C64 magazines..

  • @cboscari

    @cboscari

    3 жыл бұрын

    The C64 was very popular and Commodore's documentation was really good. The user manual that came with it was about half an inch thick and the programming manual was about 2 inches or so. Both were available everywhere along with assembly language guides to the registers and hardware. They were also pretty cheap!

  • @fluffycritter
    @fluffycritter3 жыл бұрын

    “We’ll look at the BASIC difference between them first” I see what you did there

  • @JasonPullara
    @JasonPullara3 жыл бұрын

    This channel is so great, it's like the youtube version of the library books I used to read on the weekends while trying to learn how to use computers as a youngin

  • @emanuscriptgraphics
    @emanuscriptgraphics26 күн бұрын

    Wow that's a true throwback. 😮. Unlocked all of my memories from that time in the 80s.

  • @sed8du4ia420
    @sed8du4ia4203 жыл бұрын

    Long-ish time viewer; first time commenter. Agree with The 8-Bit Guy's comment. There was incredible information presented about such a 'simple' command. Thanks for the great talk!

  • @ag9hj
    @ag9hj3 жыл бұрын

    Oh dear, as you typed the load for the master of magic, the first sid tune started to play in my head..

  • @alerey4363
    @alerey43633 жыл бұрын

    Very interesting in-depth description of the loading mechanisms and their differences, including the autorun trick; it always fascinated me how the C64 performed those special tricks, including weird directory listings with petscii art or "invisible" filenames as part of copy protection schemes (that in some cases go along with your dissection of Platoon payload disk)

  • @chrisjpf33
    @chrisjpf333 жыл бұрын

    Great, detailed, and accurate video (as always). Thank you so much for clearing this up! I have seen a lot of people get the details wrong (arbitrarily use ",1"), and I learned quite a bit myself.

  • @The_Real_Grand_Nagus
    @The_Real_Grand_NagusАй бұрын

    Well I'm glad you have this video up because I come back to it from time to time. For some weird reason I can never remember this.

  • @pa8w
    @pa8w3 жыл бұрын

    I love your channel! I finally understand the stuff that was pure magic when I was just 8 years old.

  • @OscarSommerbo
    @OscarSommerbo3 жыл бұрын

    Doing LOAD"$", 8,1 doesn't produce gibberish, it is still a directory listing ju case switched. It was useful to see " hidden" files on the disk. Just hit commodore+shift to see the filenames. It lacks the fancy formatting but it defeats most(all?) tricks to hide files.

  • @dlarge6502

    @dlarge6502

    3 жыл бұрын

    can confirm, just tried it.

  • @klausstock8020

    @klausstock8020

    3 жыл бұрын

    In the good old days, I used this to load the directory without erasing the BASIC program. Of course, this still killed the BASIC program if the directory was longer than four blocks.

  • @gregclare
    @gregclare3 жыл бұрын

    Fantastic nostalgia trip. Thanks for such a detailed and information filled video!

  • @madmartigan1498
    @madmartigan14983 жыл бұрын

    All my favourite retro computer youtubers showing up on my favourite retro computing youtube channel...

  • @erroneus00
    @erroneus003 жыл бұрын

    Just so you know how you impact your fans: 1. I find when a new video appears, it immediately has my full interest and it brightens my day and I instantly forgive you for not having put out anything recently 2. If you don't keep[ putting things out, I begin to grumble increasingly as time passes.... Sounds like addiction... hrm.

  • @SpacePoodle
    @SpacePoodle3 жыл бұрын

    I've been thinking about this for almost 36 years now. Thank you!

  • @mickel1138
    @mickel11383 жыл бұрын

    My favorite space used to be $C000 to write assembly. But if I wanted an accompanying basic line to start it, (10 SYS 49152), I would waste all the space from $08xx to $BFFF on disk space, and would be big block files. But I have seen way smaller files that do this. Is there a trick to this?

  • @gabor222

    @gabor222

    Жыл бұрын

    I think I saw a video about this topic a couple of days ago and I think the trick was to type the 10 SYS... line with an approximate value then peeking the end of the BASIC program (PEEEK (45) + 256*PEEK(46)) then peeked again and updated the 10 SYS line with the proper value. Then he moved the whole ML program after the end of the BASIC program (I might be wrong because I just started to learn Assembly and Machine Language).

  • @LAIRDO-
    @LAIRDO-2 жыл бұрын

    In 1984-86, I was a GURU on the C64!! Still, there's a couple of things that I never knew about in this video. Thanks!!

  • @russellhudson4558
    @russellhudson45583 жыл бұрын

    Wow... hearing that 1541 "machine gun" sound took me back about 30-35 years. Good times.

  • @Dbumbaca1

    @Dbumbaca1

    3 жыл бұрын

    the Atari 810 disk made a similar sound when it would seek a bad sector but it was more of a fart than a machine gun. One could create bad sectors intentionally by cranking the disk speed trimmer pot while writing to that sector.

  • @borayurt66
    @borayurt662 жыл бұрын

    Hi Robin! I can't believe that I have not discovered you channel sooner! Man, this is one of the best there is on C64s. I gladly subscribed and watched a ton of content already. Thanks for sharing your vast knowledge!

  • @bgood2010
    @bgood20103 жыл бұрын

    Funny, the "PLEASE SUBSCRIBE" title on that gravinauts floppy... 😎

  • @anjinmiura6708

    @anjinmiura6708

    3 жыл бұрын

    They didn't have a "like" button in the early days ;)

  • @BillAnt

    @BillAnt

    3 жыл бұрын

    ​@@anjinmiura6708 < LOL good one. ;D

  • @RetroGameCoders
    @RetroGameCoders3 жыл бұрын

    I never had to do anything other than "load" until I got my first emulator - as a kid we had tapes and a couple of cartridges. I didn't see a floppy disk in person until we got our Atari ST :)

  • @Breakfast_of_Champions

    @Breakfast_of_Champions

    3 жыл бұрын

    FOUND TURBOTAPE

  • @wadereynoldsgm
    @wadereynoldsgm3 жыл бұрын

    Great info! Thank you

  • @75slaine
    @75slaine3 жыл бұрын

    Amazing detail Robin. Like a lot of the comments here I “knew” this stuff but didn’t actually know most of it. Well done 👏

  • @AS-ly3jp
    @AS-ly3jp3 жыл бұрын

    Thank you!!! Great video! As always I am looking forward to your next great video! Have a nice Weekend!

  • @VoceCorale
    @VoceCorale3 жыл бұрын

    Thank you for finally clarifying something I've occasionally wondered about in the past 30 years or so, having been a C1541 user as a kid!

  • @DerykRobosson
    @DerykRobosson3 жыл бұрын

    I was thinking about Fast Hack 'em minutes before you brought it out. The new thing that I learned was the ":*". Thanks for teaching me something new.

  • @richretrotech9426
    @richretrotech94263 жыл бұрын

    Mind blown! Awesome video. Thank you.

  • @SL-sz9mj
    @SL-sz9mj3 жыл бұрын

    Love your clips. You are awesome

  • @sammy61187
    @sammy611873 жыл бұрын

    The more videos i watch of yours the more i appreciate how amazing the C64 was/is my Dad had an Amiga 500 in the early 90's hopefully one day i can get one

  • @retromakergoose662
    @retromakergoose66210 ай бұрын

    ok i have just completed a BBC Micro MC/assembly book and learnt a lot i am in the process of converting the example programs into the C64C and encountered the first real difference, other than memory maps and routine call locations, between the 2 systems. That is the beeb has inline assembly, where you can go in and out of assembly and basic in one program, where as the c64 you do the assembly and save the mc code to a file then use a basic loader to load it all up. The problem i had was using load"file",8,1 in a basic program sent my sd2iec blink like mad. Thanks to this video we have now solved the problem using the L=L+1 counter before loading and it fixed it it then went on to print the result of an ADC with a basic print and peek Thanks very much Love your videos Steve in UK

  • @Lumimann
    @Lumimann3 жыл бұрын

    Thank you for that fantastic explanation !

  • @8BitRetroReFix
    @8BitRetroReFix3 жыл бұрын

    Enjoyed this alot ... keep up the great work ;)

  • @arsenic1987
    @arsenic19873 жыл бұрын

    Beautiful video. I didn't watch more than 2:38, but that explained everything I needed to know, and it made so much sense :) Regards from a commodore loading dude.

  • @mrkingston2001
    @mrkingston20013 жыл бұрын

    Great video. Very informative. Thank you very much.

  • @nicktucker3437
    @nicktucker34373 жыл бұрын

    can verify this is a great explanation of the difference of ,8,1 and ,8.

  • @MrAoldham
    @MrAoldham3 жыл бұрын

    Excellent video, I learned a lot!

  • @bigmaxy07
    @bigmaxy073 жыл бұрын

    As a lot of you would agree, getting that disk drive was a huge step up from cassette drive. I had my disk box and all my games.... Great times.

  • @2playOrig
    @2playOrig3 жыл бұрын

    Excellent video for all of us to learn and remember

  • @markboulton954
    @markboulton9542 жыл бұрын

    This reminds me of when I reverse engineered the cassette turbo-loading programme that Ocean Compiler came with, and used it for saving not just basic programs but font (character set) files, screenshots, sprite sets, or other random pieces of memory, and I remember finding out that there were two pairs of bytes that needed to be set to indicate the start and end address that would be saved. By using OPEN 1,1,1,"FILENAME" and then setting those addresses, I could then append any number of non-contiguous memory areas to one tape file. I can't remember whether triggering the save of each chunk was done with a PRINT#1 statement or an SYS command, but I could carry on saving multiple chunks until I used CLOSE 1 to finish.

  • @MaxQ10001
    @MaxQ100018 ай бұрын

    I love The Final Cartridge and Action Replay. They show the load address from and to when loading is completed.

  • @8_Bit

    @8_Bit

    7 ай бұрын

    I like that feature too, though sometimes it kind of messes up certain programs by printing those load addresses while files are loading from under program control, potentially corrupting memory with those unexpected characters. It's not that common, but I've seen it happen. Super Snapshot shows the load addresses too, but only when loading is done from the machine language monitor.

  • @ownpj
    @ownpj3 жыл бұрын

    10:30 It's fairly simple, the bulk of the stack is overwritten with $0202 so when kernal inevitably executes a RTS it "returns" to $0203 which is the games code.

  • @coyote_den

    @coyote_den

    3 жыл бұрын

    back when a stack smash was just how you got things done.

  • @markboulton954
    @markboulton9542 жыл бұрын

    Something else this reminds me of (you can tell I never managed to afford, or get my parents to afford, a disk drive at the time)... I wrote a cassette directory/menu utility to the start of many of my home-made C64/128 tapes (all now sadly sent to landfill many years ago). The idea was, rather than scrawling the contents of my tape on the inlay and trying to keep it updated amidst loads of crossings-out and the new counter positions, my utility would present me with a list of programs/files and ask me which one I wanted to load. After making my selection, it would then instruct me to press FFWD on tape. It would then wait the requisite period of time to allow the tape to reach the correct counter position, at which point it would stop the tape motor and instruct me to press STOP. Then it would drop into the default LOAD command with PRESS PLAY ON TAPE. To add a new item to the directory/menu, it would input a filename/title from me, then ask me to locate it using FFWD and STOP. It would monitor how much time was spent fast-forwarding (i.e. the difference in TI between starting and stopping) and then by printing new data lines to the screen then using the C64's version of "SendKeys" (POKE131+...,[ASCII codes]:...) to auto-Enter those lines into the menu program, I could then resave the modified menu to the start of the tape. A bit long-winded in terms of getting the information in in the first place maybe, but a great timesaver once it was done.

  • @mosaton
    @mosaton2 жыл бұрын

    Great video!

  • @evileyeball
    @evileyeball3 жыл бұрын

    David and you both seem like really nice guys, I don't have a C64 but I spent a lot of time in basic on my Tandy 1000sx back in the day and in Qbasic on my Win 3.11 Packard Bell Machine. which is why I enjoy the stuff on both your channels, Some day if and when the world goes back to normal I would love to attend an event for this kind of stuff.

  • @fitfogey
    @fitfogey3 жыл бұрын

    Robin I promise you I was just tinkering on the C64 today and wondered what the difference between ,8 and ,8,1 was. Crazy. Thanks so much man!

  • @8_Bit

    @8_Bit

    3 жыл бұрын

    I've noticed it's still a common question on Facebook and elsewhere, so I thought I'd take a crack at it. Thanks for watching :)

  • @tedthrasher9433
    @tedthrasher94333 жыл бұрын

    Such a great video! I never had a C64, but I had plenty of friends who did. I started with a PET in school and then Apple IIs. At home I had a TI 99/4A and then an Apple IIGS. I knew how to load programs on the PET and C64, but never understood the specifics of that load command (or even that you could read a PET program into a C64) until today.

  • @Dervraka
    @Dervraka3 жыл бұрын

    Working in IT I still jokingly say, "Have you tried Load "*",8,1?" when someone is having trouble booting a system up. It's a good age test, those over 45 laugh and nod and those under 45 just give a blank quizzical stare, I've even had a few of the younger IT folks actually take me seriously and try it, just assuming it's some special function.

  • @fluffycritter
    @fluffycritter3 жыл бұрын

    12:28 oh, so THAT’S why LOAD “$”,8,1 messes up the screen!

  • @RaptureMusicOfficial
    @RaptureMusicOfficial3 жыл бұрын

    Thanks for explaining that L=L+1 bit! I always wondered what that meant in many basic listings (why they didn't right away load the stuff but had that variable count up, mostly with A=A+1 :) Many interesting infos! Greetings from a C64 lover who played C64 games in 80s already and I also coded some Basic stuff and did lots stuff in Activision's Game Maker! :)

  • @vhm14u2c
    @vhm14u2c3 жыл бұрын

    Didn’t know that, Thanks for sharing!

  • @gettingpast4391
    @gettingpast4391 Жыл бұрын

    The fast hackem sector editor tutorial was awesome! I am a huge commodore fan but I don't play games. I am more interested in coding and your channel definitely keeps me interested. Great stuff. I remember being introduced to the sector editor at age 12 by an adult "cracker". He showed me how to change the text in infoquick by lew lasher so I could customize my bbs.

  • @Phunker1
    @Phunker13 жыл бұрын

    Finally, after 33 years!

  • @anthonyroznovsky7022
    @anthonyroznovsky70222 жыл бұрын

    Greta video!. I vaguely remember the use of the "&" sign in loading or used some how in dish commands. Are you familiar with it's use? thanks again.

  • @musicteacha
    @musicteacha3 жыл бұрын

    Another great video imo. Now I can try some of my discs (that I thought were corrupted) again.

  • @ComfortableWedgie
    @ComfortableWedgie3 жыл бұрын

    OMG, I instantly recognized the disk protection sound!!

  • @Roman_Comrad
    @Roman_Comrad3 жыл бұрын

    Thanks, it was interesting.

  • @wim0104
    @wim01043 жыл бұрын

    FINALLY! Been wondering about that since 1990!

  • @wim0104

    @wim0104

    3 жыл бұрын

    Imagine being the programmer that 8008ed with that 0800 address error... a 30 year old mistake and ppl find out about it, because plague!

  • @lescobrandon2202
    @lescobrandon22023 жыл бұрын

    Well explained.

  • @MD_il_microcanale
    @MD_il_microcanale3 жыл бұрын

    Fantastic!

  • @stoobertb
    @stoobertb3 жыл бұрын

    OK, this makes sense now. I remember a crude "Action Replay Cart" that involved putting a paperclip between pins 1 and 3 on the cartridge port to jump back to the basic prompt to start entering poke commands for infinite lives. I imagine the ,1 was required to ensure the memory addresses were correct for each game when entering the poke address.

  • @JoeMcLutz
    @JoeMcLutz3 жыл бұрын

    Thank You! 👍😊

  • @MichaelDoornbos
    @MichaelDoornbos3 жыл бұрын

    2:45 Neat, I've never played this game. 6:36 The first time I got that screen noise on the SS5 Monitor, I started checking power connections. It happens on every machine I have, so I wonder what causes it. It's not harmful, but now I'm curious. Still working on a full disassembly of the ROM so maybe it will reveal itself. 7:43 Interesting observation on it overriding the vector like a virus does. On a computer with no memory protection, folks do this all the time on purpose to get it to do things it wasn't necessarily intended to do (I'm thinking demo scene mostly). I've been teaching a couple younger people about how security works and now you've introduced the idea that I could use a 64 as a learning tool for this. 8:36 That's pretty clever, hadn't thought to do that before. 10:11 I should have this phrase in my office somewhere. Or maybe a tattoo. 12:45 I checked, October 1985 P 32 of Ahoy! archive.org/details/ahoy-magazine-22/page/n31/mode/2up 14:40 I wonder how many people scratched their heads for many minutes before that +1 at the end address became apparent 18:26 He spent a lot of time enhancing the graphics on this for the 64 version and I much prefer the PET and VIC20 graphics. This is a good use (educated guess) of reusing a lot of techniques from Planet X2 to make a similar but unique and really playable game without completely reinventing the wheel. I'm assuming he saved himself quite a bit of development time. 23:29 One of my favorite features of Action Replay (and derivatives like RetroReplay and Nordic) is that this start and load address is always printed, even when loading a BASIC program with the / wedge.

  • @8_Bit

    @8_Bit

    3 жыл бұрын

    I would have shown more of Master of Magic but I found out during editing that my C64's sound output wasn't captured at all! And a silent Master of Magic is no fun at all. Well, the episode was plenty long enough without all that. re: noise in SS5 monitor, I believe it's the monitor rapidly switching to its extra RAM where the frozen program's stack and screen RAM are stashed to fetch the data that the user wants to see. That is, when you're disassembling or dumping memory in the monitor, do you want to see the frozen program's RAM, or do you want to see the monitor's RAM? The monitor has to share resources with the frozen program, but tries to be as transparent as possible. This is difficult to explain! re: Action Replay displaying the load address, I like that feature too. JiffyDOS derivative JaffyDOS also does that trick.

  • @MichaelDoornbos

    @MichaelDoornbos

    3 жыл бұрын

    @@8_Bit That makes perfect sense. I'm flashing my snappy device this morning to do the TMP decimal fix and it's flashing the screen a lot while it's happening. Now I need to put the scope on it and watch :-) Bummer about the sound! I played that game during a conference call a little, it's pretty nifty

  • @RichHeart89
    @RichHeart893 жыл бұрын

    When I was a kid, I got my cousins old C64 and the only instructions he gave my was 'Use LOAD"*",8,1' It took me quite a while to get anything to run as I didn't know English at the time, knew nothing about computers and was like 6 years old :D

  • @knightdriver3592
    @knightdriver35923 жыл бұрын

    Growing up my dad got an extra disk drive so I got used to using both ,8 and ,9 Never understood what ,1 indicated, just knew that sometimes you needed it and sometimes you didn’t.

  • @Arkansmith
    @Arkansmith3 жыл бұрын

    The seven people who disliked video this are clearly TI-99/4A users.

  • @billkeithchannel

    @billkeithchannel

    3 жыл бұрын

    I learned to code on my Dad's TRS-80 L-II as a freshman. I continued coding on the TI as my graduation gift at the beginning of my senior year before buying the C128 in '85 with my Kmart money. In retrospect I wish I had bought an Amiga instead but was scared to learn C at that time.

  • @markjreed
    @markjreed3 жыл бұрын

    The bit you mentioned about loading PET programs on the C64 etc. is actually the same reason that the directory has the $0401 load address. Since PETs *always* honor the load address, the disk drives had no choice but to send the directory program with the PET address for BASIC text in order to be compatible with those machines at all. To allow those same drives to work on the VIC, Commodore modified the behavior of LOAD to ignore the load address by default and just put the program wherever BASIC text was supposed to be unless the new optional ,1 parameter was specified. Though probably the main reason for the change was that he BASIC text address on the VIC moves around depending on expansion memory; if LOAD had still worked like it did on the PET, your old programs might suddenly stop loading after you got a memory expansion cartridge.

  • @krnivoro1972
    @krnivoro19723 жыл бұрын

    There's a simple explanation why Ultima loads from the last file: Because "Ultima" means "last" in spanish!!! 🤣

  • @BillAnt

    @BillAnt

    3 жыл бұрын

    Maybe they just overlooked the file position or it was pure laziness of Lord British. ;D

  • @DavidWonn
    @DavidWonn3 жыл бұрын

    Very useful info. I always used ,8,1 unless the game had explicit instructions to do otherwise, often on the floppy label itself.

  • @ImaginationToForm
    @ImaginationToForm3 жыл бұрын

    Autoduel would be one reason I'd like a working C64 for. Was such a fun game.

  • @painkillergko
    @painkillergko3 жыл бұрын

    A new and fresh episode:D:D:D

  • @ciesinsk
    @ciesinsk3 жыл бұрын

    It is nice that you like MoM as much, as I do. This brings back childhood memories. I think, this was the first game where I really "invested" systematic and serious gameplay to reach the end. Awesome game, really.

  • @ciesinsk

    @ciesinsk

    3 жыл бұрын

    Man, I even love how you handle the DIskdrive with your hand. Your videos are just pure attention-to-detail gold. :)

  • @MiccaPhone
    @MiccaPhone3 жыл бұрын

    After 35 years I finally understand what I used to practice all the time.

  • @sortehuse
    @sortehuse10 ай бұрын

    I have used this a lot when I was a teenager without knowing why I had to used those numbers :)

  • @shaolin1derpalm
    @shaolin1derpalm3 жыл бұрын

    I have never known, nor experienced the "last file you loaded" thing.

  • @RetroRuminations
    @RetroRuminations3 жыл бұрын

    I had no idea I didn't know so much about this.

  • @timsmith2525
    @timsmith25253 жыл бұрын

    1SYSxxxx: That brought back memories! That's how I started all my ML programs.

  • @TokyoXtreme

    @TokyoXtreme

    3 жыл бұрын

    SYS 49152 for simple fare; SYS 64738, and you knew you were in for a real treat.

  • @AllenArmstrong_1
    @AllenArmstrong_13 жыл бұрын

    Bringing back the memories... of memory :) we got ours when I was 10. I remember making the kids at school jealous because I printed out my time tables homework.

  • @awilliams1701
    @awilliams17013 жыл бұрын

    I knew the basics of this, but one thing I always wondered was how most programs in assembly seemed to have BOTH machine language and BASIC even if it's just a SYS command. I thought that it was loading the program into 2 separate locations. I didn't think it would be all together like that. Interesting video and nice to know. Definitely answers some questions. I suppose you could always have a separate BASIC loader that loads the ML program separately and then SYSes it afterwords. You could even do that with gravitron. It would still be smaller and faster than the POKE version even with 2 separate files.

  • @postie9434
    @postie94343 жыл бұрын

    this brings back memories i started on c64 father the vic 20

  • @AndreAguiar
    @AndreAguiar3 жыл бұрын

    I remember doing a load”*”,8,1:RUN (or something like that) which was added to the end by hitting shift Ctrl/brk or something like that. I believe (gosh it’s been decades since I last touched a C64/C128) it was simply a shortcut to auto run after it was done loading.

  • @Malephex
    @Malephex3 жыл бұрын

    This is the most niche video I've seen in 2021.

  • @erkl797
    @erkl7973 жыл бұрын

    Ahh... the sound of the guitar at the end of the video (before vocals) flashed me back to Goddo's Sweet thing!!

  • @8_Bit

    @8_Bit

    3 жыл бұрын

    I do hear a similarity in the guitar tone!

  • @doktor6495
    @doktor64953 жыл бұрын

    Really nice to know! GREETINGS, DOC64!

  • @Fanny-Fanny
    @Fanny-Fanny3 жыл бұрын

    This is the most glarded video I've seen all day - thanks!

  • @8_Bit

    @8_Bit

    3 жыл бұрын

    You're weclome, anytime I take inoppolity to clode.

  • @Fanny-Fanny

    @Fanny-Fanny

    3 жыл бұрын

    @@8_Bit Thanks! Your reply makes me happier than you could imagine. Atomic Shrimp would no doubt be both pleased and surprised that he has managed to propagate his newly chosen verbiage so far and fast, this being less than 24 hours from their first becoming publicly known.

  • @tafkab76
    @tafkab763 жыл бұрын

    Just recently stumbled across your videos and nearly watched them all bynow. really remindes me of my cildhood. Of course my first computer was a C64 and the first game I ever played on it was warhawk on a cassette tape. wallowing in memories one thing came to my mind. some of those alien space ship sprites were covered by a bold bar, reaching from one side of the screen till the sprite and moving vertically to always cover it. i first thought it was some game mechanic, to make the game even harder. but then it appeared on other games, too and it turns out, that the C64 was broken and hat to be fixed. (which took weeks and led to my first existential crisis.) could you imagine, what caused that behaviuour or was it even a commen error? I am really curious about that. Greeting from Germany and looking forward to following your channel.

  • @puzzud
    @puzzud3 жыл бұрын

    Wouldn't "*" just mean the first file encountered with a name that matches this pattern? Which is why something like "A*" will load the first file encountered that has the first letter "A".

  • @alexandruianu8432

    @alexandruianu8432

    3 жыл бұрын

    I think the Commodore file system organizes files by the order in which the file was created. If you write Boot first, then, say, Adventure, Assets, Outro and Intro, in that order, Boot will be listed first for "*". For "A*", it would be Adventure, and for "*o" Outro.

  • @cigmorfil4101

    @cigmorfil4101

    3 жыл бұрын

    @@alexandruianu8432 Most, if not all, disk systems do that: they store the next file in the first available space in the [current] directory, which if no files have been deleted is the next directory entry after the last one in the list. Sorting was not (usually) implemented, and if it was it would be implemented on listing, not storing.

  • @alexandruianu8432

    @alexandruianu8432

    3 жыл бұрын

    @@cigmorfil4101 I know how it works physically, but what I meant was the directory listing wasn't sorted on Commodore machines.

  • @JustWasted3HoursHere
    @JustWasted3HoursHere3 жыл бұрын

    I remember as a kid listing a loaded game loader and wondering at the "A = A + 1: IF A = 1 THEN A = 2, etc" and what it did. An article in Compute's Gazette explained this and now so have you!. Thanks for the memories. Can you explain how directory blocks can be faked? That is, sometimes when you list a directory from a game it will say that all 664 blocks are free, etc.

  • @klausgartenstiel4586
    @klausgartenstiel45863 жыл бұрын

    "what are you wearing?" "nothing but my clothes."

  • @ForaPhil
    @ForaPhil3 жыл бұрын

    I never understood the difference until now. I always used, 8,1. I remember my diskdrive wouldn't load anything for some reason and I thought the drive was dead until I had a friend over who typed ,8 and the drive starting to work again. Now I finally get it.

  • @jack002tuber
    @jack002tuber3 жыл бұрын

    Have you ever done a video on editing the disk directory? Undeleting, change a file to locked, animation in the filenames, etc?

  • @fitfogey

    @fitfogey

    3 жыл бұрын

    He’s done an animation directory video before I don’t know the link off hand but you can find it if you search for it.

  • @fitfogey

    @fitfogey

    3 жыл бұрын

    Here you go. m.kzread.info/dash/bejne/eoqBzK6OmLK-aZM.html

  • @8_Bit

    @8_Bit

    3 жыл бұрын

    I could probably make a more focused video about disk directory editing but the animated disk directory episode that Fit Fogey linked to gets into it. And I think I touched on locking files and maybe some other aspects in the Epyx Fast Load video too.

  • @HelloKittyFanMan.
    @HelloKittyFanMan.3 жыл бұрын

    Thanks, I've always wondered how these auto-start (it's already being loaded, so "auto-START" is the accurate term, or maybe "auto-boot" like you used for a bit) programs work! But what I still don't understand is what exactly is being replaced. Are you saying that it's like replacing the "run" command with _the first instruction of the program,_ which is how that starts the program? Will you please go into more detail on that?

  • @8_Bit

    @8_Bit

    3 жыл бұрын

    Yes, auto-start is probably the best term. Or auto-run? There are a surprising number of techniques to achieve this. Here's an excellent article on it, but amusingly, the exact technique used in Autoduel isn't even included here: codebase64.org/doku.php?id=base:autostarting_disk_files I should eventually make a video looking at more of these techniques.

  • @TheSiftyzod
    @TheSiftyzod3 жыл бұрын

    i was actually looking for the answer to this a month or so ago

  • @StRoRo
    @StRoRo3 жыл бұрын

    When I was little, I had several hundred of floppy discs, and I had several games that after loading ,8,1 it would just return to READY. after it seemingly had loaded the game. Typing RUN did nothing and I never know why this happened. It does seem the game was loaded but didn't run.

  • @HelloKittyFanMan
    @HelloKittyFanMan Жыл бұрын

    Not only did 1541s come preconfigured as 8, but all other Commodore 8-bit drives, like the 4040-based series, the 1001, 1571, 1581, etc. And I don't think I've ever seen any other brand of drives made for this computer come preset to between 9-11, either.

  • @citrustaco
    @citrustaco11 ай бұрын

    Since I knew that the second number could be any non-zero number, I would use L shift-O (abbreviation for LOAD) "*",8,8 instead as it was easier to type. But I guess I may have been the only person doing that.

  • @Freestila
    @Freestila3 жыл бұрын

    Splat, never heard that one, but i will use that from now on :D

Келесі