Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(7 edits)

Hy. It has proven worthwhile for me, to take a closer look at this again, as it led me to update the SD2IEC firmware to the very latest version now, which is "SD2IEC V1.0.0atentdead0-57-ge2dd332". My previous version wasn't actually that old and I never had problems loading a game with it. Therefore I had assumed, that any subsequent updates, were relatively minor. An impression I also gathered from the texts on the SD2IEC website, to every of these updates. As it turns out, that wasn't the case, because now, with the latest firmware version, the situation looks a bit different, when it comes to your "Nuts & Dolts" game.

(A) when I now turn off my FC3 cartridge with the "kill" command in the BASIC screen and then load your game with the LOAD"boot",8,1 command, everything seems to work correctly at this time, because suddenly, I have music in the intro-picture now (which I didn't have before) and I see no more graphic-bugs in the sprites of the game, when I start the first level.

(B) when I load the game with the FC3 active, it loads alot faster, but sadly, there are the same problems, I had described earlier. Here the firmware update didn't change the situation. When loaded with the FC3, there's no music, when the intro-picture of the game is visible and the red LED blinks in that moment. When I press SPACE next, the game-menu appears and the red LED blinking is over. No more red LED and the menue is there (but also no music in the menu), but when I start the first level next, in the most cases (but not in all, as I already mentioned), I have some graphic-bugs on the walking sprites and they are partly destroyed. In rare cases (about one or two attempts out of ten), no graphic-bugs appear and it seems to work correctly, but there must still be a problem, because the loader seems to be unstable and already the missing music in the intro-pic and the game-menu, together with the blinking red LED, makes it clear, that something's wrong, when the game is loaded with an active FC3.

That’s how things stand in the moment. Fortunately, everything seems to run bug-free now, if I disable the FC3 cartridge. The downside is, that the loading of the game takes about six times as long then. Perhaps there’s still something that can be done here, given that I generally have no issues with 99% of C64 games, when loading them via the FC3 fastloader. I am sure, other FC3 users can confirm this, as the module's fastloader is highly compatible. Of course, it’s not strictly necessary, to make the game’s loader compatible to it, but it would be a nice touch, since the FC3 is quite widely used in the C64 scene (especially when SD2IEC's are involved, because its fastloader also works on SD2IEC) and the cartridge makes loading, as well as reloading in the gameplay, alot faster. You can consider, whether you want to do anything further, to make this work, or not? At the very least, the game does run correctly on SD2IEC's, when the latest firmware is used and when it's loaded without a FC3 and its fastloader (and probably also without any other fastloader cartridge). Downside is, that the loading-time is quite long now, but it’s still manageable, though.

To answer your other questions. Nothing else is connected to the serial-bus of my C64 and I run the game from the d64. Have not tried it, when all single files of the game are copied directly to the SD-card in an own "Nuts & Dolts" game-folder. By the way, in addition to the official SD2IEC firmware, there's also another firmware by the user "Thierer." It works with a wider range of C64 fastloaders, allowing also many demos, that load additional data (reloading), to work on SD2IEC. But sadly this firmware can only be used on specific SD2IEC models, as it requires a 128KB microcontroller. Both of my SD2IEC units, for example, use an ATmega644, which only has 64KB of memory and it seems, there simply isn't enough free space left, for the modifications included in Thierer's SD2IEC firmware. When it comes to games, however, it doesn't make that much of a difference, since for about 90% of all C64 games, you can also find versions that work with the official SD2IEC firmware. For demos, though, it makes a big difference.

(1 edit)

Thanks Sparky-D, that nails it: the problem is the FC3's fastloader, not the SD2IEC. On a drive the fast loader can't drive, the game loads its tunes and sprite files through the KERNAL LOAD vector. The FC3 hooks that vector, and its loader doesn't cope with how the game calls it mid-game. There's a test build on the game page now, nuts-and-dolts-v1.2-test.d64, next to v1.1: it skips the vector and calls the ROM's LOAD directly. The FC3 still speeds up the boot, and the in-game loads (a tune, a few small files) run at normal speed. Could you try it with the FC3 switched on, and tell me whether the intro music plays, the LED stays quiet and level 1's sprites are clean? If it's good, it becomes v1.2.

(3 edits)

Yes, when using the latest SD2IEC firmware, the issue was indeed related to the FC3. But just to clarify. With the older firmware, I had installed previously, the game wouldn't load correctly, even when the FC3 was disabled. So, updating the SD2IEC firmware was part of the solution. It was worth updating and I definitely wouldn’t have done it, if not for this game. Thanks for that.  :-)

I’ve now tested your v1.2 and things look good. The game loads correctly now, even with the FC3 and its fastloader enabled and also the music in the game-intro and the game-menu is there. And no more red LED blinking is visible. However, with the FC3 active, the loading-time now isn't significantly faster anymore, than it's without it. I timed it and it needs 53 seconds now, until the game-intro screen appears, with the FC3 enabled and it needs 1:05 minute without it. Still the fact, that you no longer need to disable the FC3 cartridge (and presumably other cartridges as well) every single time, is a clear advantage now. Therefore v1.2 clearly is the best version.

I also noticed one other thing, that surprised me a bit. The game can not be loaded, using the standard    LOAD"*",8,1   command. Instead, you have to type    LOAD"boot",8,1   but that’s only a minor detail and with a fastloader-cartridge active, you don’t have to type anything at all, you simply press the corresponding F-key to initiate the load and that's it. So everything fits now. Good work.

Great news, thanks for testing it so thoroughly! Good to know about the firmware too. I wouldn't have guessed the older SD2IEC firmware was part of the problem.

v1.2 is now the official release. v1.1 and the test file are gone, so nuts-and-dolts-v1.2.d64 is the only download.

The speed makes sense. The FC3 only speeds up the first load. After that the game loads its own files (the tunes and a few small data files) through the ROM's normal LOAD, which is exactly what keeps the FC3 out of the way. So there isn't much left for it to speed up, but at least you don't have to switch it off anymore.

About LOAD"*": BOOT is the first file on the disk, so on a real 1541 it works. On an SD2IEC, "*" can pick a file from the SD card's own directory rather than from the mounted .d64. LOAD"BOOT",8,1 always works, and I've put that tip in the release notes.

Thanks again, this would never have been found without your help.

(4 edits)

Hy. Last point regarding this Loading "*" matter. Normally, when I am inside a d64 file on the SD2IEC, the command    LOAD"*",8,1   should only load the first file of this mounted d64 and nothing else. At least that's my experience so far. But not in this case here. Strange. But that's not really an important thing, because most SD2IEC users will have a fastloader-cartridge too and then they don't need to write loading commands at all. But good idea from you, to put this tip in the release notes in the future. And thanks for making the game compatible to SD2IEC, IDE64, etc, as well as to the FC3 (and probably also to other fastloader-cartridges, as a result of this change). More users will benefit from this.

Hi! Thanks, and you're right, LOAD"*",8,1 should give the first file of the mounted .d64, and on this disk that's BOOT. My best guess is the drive's memory of the last file. A real 1541 treats "*" as "the last file I loaded" if anything was loaded since power-on. It only falls back to the first file in the directory when nothing has been loaded yet. SD2IEC may copy that. So if you'd loaded something else (or switched images) earlier in the session, "*" could still point there. I haven't tested that on a real SD2IEC, so take it as a theory. Either way LOAD"BOOT",8,1, or a fastloader cart, avoids it.

And thanks for the kind words. Making it work with SD2IEC, IDE64 and the FC3 was only possible because you tested it so carefully. Enjoy the game!

Yes, you can be sure, I will enjoy it, because there aren't many games in the *Lemmings" style, so it’s great to have another one. Regarding the "Running it" section, here on the website, it seems like part of a sentence is missing, specifically concerning the SD2IEC, because it now reads, as if it would also work by using the   LOAD"*",8,1   command, with this hardware.

Thanks Sparky, I hope you enjoy it! And good catch, you're right. That line was written before your SD2IEC test, so it still lumped the SD2IEC in with LOAD"*",8,1. I've fixed it: on an SD2IEC, use LOAD"BOOT",8,1 (or a fastloader cart) and then RUN. Thanks again for testing all that hardware, it helps a lot.