How Commodore 64 cartridges work + Versa64Cart build

  Рет қаралды 19,606

retrobits

retrobits

Күн бұрын

Ep 34 : ROM cartridges, bank switching, and memory maps. How they work together to allow the Commodore 64's 6510 CPU to access more than 64KB. Building, programming, and testing the Versa64Cart, an open source multi-ROM project for the C64 and C128.
00:00 Introduction
01:18 Memory Maps, Bank Switching and the PLA
05:12 Building the Versa64Cart
09:12 Programming the EEPROM
14:37 3D Printing the Versa64Case
16:39 Jumper and Switch Settings
19:09 Testing the Cartridge
20:15 Commodore 128 Cartridges
21:11 Conclusion
Support Retro Bits on Patreon - / retrobits
@retrobitstv on Twitter - / retrobitstv
Versa64Cart - github.com/bwack/Versa64Cart
Versa64Case - github.com/svenpetersen1965/V...
Products used and featured - www.amazon.com/shop/retrobits
Hakko FX888D Digital Soldering Station - www.amazon.com/gp/product/B00...
Weller Solder Dispenser - www.amazon.com/gp/product/B00...
Velleman Circuit Board Clamping Kit - www.amazon.com/gp/product/B01...
*Retro Bits earns money from Amazon and eBay Partner Links
Images:
www.c64-wiki.com

Пікірлер: 79
@msuc5vette
@msuc5vette 4 ай бұрын
Best explanation of memory mapping I have seen for the 64. I feel like I need one or more wall size layouts and maybe they would make for a cool manage décor some day
@jda4887
@jda4887 3 жыл бұрын
I learned a lot thank you ! kuddos for not forgetting about the C128.
@bwack
@bwack 3 жыл бұрын
Great work, and thanks for the link. I just want to make a shout out to Sven Petersen for the new doc and revision of the board.
@retrobitstv
@retrobitstv 3 жыл бұрын
Thanks to you both for all of your contributions to the retro scene!
@matt4193
@matt4193 3 жыл бұрын
Really loving those soldering timelapses. Great work as always
@75slaine
@75slaine 3 жыл бұрын
Great detail Matt, well done. 👍
@RacerX-
@RacerX- 3 жыл бұрын
Great video that clearly shows the combinations. Super job!
@dvuemedia
@dvuemedia 3 жыл бұрын
I'll keep this video as a reference if I decide to build one. Thanks
@retrobitstv
@retrobitstv 3 жыл бұрын
Awesome, hope it can be of use!
@minombredepila1580
@minombredepila1580 3 жыл бұрын
Excellent video. Just what I was looking for!!!
@doktor6495
@doktor6495 3 жыл бұрын
Wooowww! Amazing video! Very clear, structured and competent! Thank you for your great work! I hope we'll see more of them?! Best regards, Doc64!
@retrobitstv
@retrobitstv 3 жыл бұрын
Thanks! Glad you enjoyed it :)
@mgas1237
@mgas1237 3 жыл бұрын
Well done! That was fun :)
@MichaelDoornbos
@MichaelDoornbos 3 жыл бұрын
I got a VeraCart finished yesterday, it's like you read my mind;-) Good video as usual.
@retrobitstv
@retrobitstv 3 жыл бұрын
Hah nice, good timing then! Have fun with it :)
@alphahr
@alphahr 2 жыл бұрын
This was good info, I was having difficulty understanding the C64 user manual
@michaelcarey
@michaelcarey 2 жыл бұрын
The Bwack Vera64Cart PCB is very cool! I converted a plain old Dead Test cart into a 4in1 Dead Test/Diag cartridge with a Versa64Cart inside.
@retrobitstv
@retrobitstv 2 жыл бұрын
Nice, that's a great upgrade! I need to update mine to include Jani's 1541 test cart as well.
@fulcrumxp13
@fulcrumxp13 3 жыл бұрын
Just a few more steps Matt and you can be the Ben Eater of C64's. Build a c64 from scratch!
@ddelin100
@ddelin100 3 жыл бұрын
Excellent walk through. I have a bunch of these PCBs lying around, guess I will take stab at getting my own diag cartridge assembled soon.
@retrobitstv
@retrobitstv 3 жыл бұрын
Cool, good luck and have fun with it!
@michaelturner4457
@michaelturner4457 3 жыл бұрын
Just subscribed to your channel. I love anything 8-bit, especially Commodore.
@retrobitstv
@retrobitstv 3 жыл бұрын
Welcome aboard!
@darkstatehk
@darkstatehk 3 жыл бұрын
I like the little glass monitor stand as well.
@johneygd
@johneygd 8 ай бұрын
Well explained😁
@CityXen
@CityXen 3 жыл бұрын
Neat stuff
@KC2YTZ
@KC2YTZ 9 ай бұрын
Thank you !
@retrobitstv
@retrobitstv 8 ай бұрын
You're welcome!
@DrDavesDiversions
@DrDavesDiversions 3 жыл бұрын
What a great idea for info to share with us, Matt. I just watched Adrian's [Digital Basement] video q(The "Kung Fu Flash" Cart for the C64 and the Bad Idea Barta Board) and was like .oO( There are different kinds of C64 carts? ) I've had these things since Starpost and Kickman (both of which pretty much stink), but never knew much of how they worked!
@retrobitstv
@retrobitstv 3 жыл бұрын
Same here :) I picked up an XPander 3 a while ago and wasn't sure what all the switches to toggle certain signals were supposed to be used for. This project has been instructive!
@temporarilyoffline
@temporarilyoffline 3 жыл бұрын
I wonder if the hobby was this approachable back when 64s first came out?
@LeftoverBeefcake
@LeftoverBeefcake 3 жыл бұрын
I would say yes, it was. There were a number of excellent print and disk magazines, and a ton of books that taught you programming, maintaining and troubleshooting hardware, gave you free type in programs like games and utilities, etc. And there was a Commodore-centric online service called QuantumLink where you could connect with Commodore users from across the USA. If you preferred to talk to fellow users in person, many cities had user groups where you could meet and swap software or buy/sell hardware. The toughest thing about that era was being a kid with limited funds to get the coolest new gadget or game.
@charlesheinle9908
@charlesheinle9908 3 жыл бұрын
Commodore user groups were everywhere back in the day. STCCC for the win.
@retrobitstv
@retrobitstv 3 жыл бұрын
If nothing else, the information is certainly more accessible. Instead of pouring over books, magazines, and online services at 1200 baud, the good stuff has been distilled over the years into nice file collections, wiki pages, and KZbin videos that can be instantly Googled.
@DrDavesDiversions
@DrDavesDiversions 3 жыл бұрын
@@retrobitstv Ya, we didn't know sh*t about the inner workings of some of these design decisions back then. Certainly more accessible, and also the folks that did this seem like peers now... err, well gods then... and now. ;)
@MartinSteed
@MartinSteed 3 жыл бұрын
The 6th file you added was the crt file not the bin wasnt it at 13:45?
@retrobitstv
@retrobitstv 3 жыл бұрын
Haha, I was waiting for someone to notice that! I totally mis-clicked on the .crt file when doing the screen capture :P
@eric67361
@eric67361 11 ай бұрын
@5:48 cutting towards the other hand had me really worried
@josephneale10215
@josephneale10215 3 жыл бұрын
youtube recommended your channel
@dr.ignacioglez.9677
@dr.ignacioglez.9677 2 жыл бұрын
I LOVE C64 👍🥂🎩
@FairLight1337
@FairLight1337 Жыл бұрын
I was just planning to make a cart episode for Fairlight TV but given that you have already done it beyond great, there is no point. I will just reference this and add the few additional things I would like to cover 🙂 Generally, I guess I would like to see the chip being a battery backed RAM chip, to be able to skip the PROMMING stage. In an ideal world, I guess I would also like to see that the switches were registers you could poke. That would mean you could have a menu and never needed to open up a 3D printed case for every time you wanted to select one of the other segments. 3D printed stuff tends to be fragile - how many openings would you say it could withstand before the hinges starts breaking? And I would also suggest having a look at KickAssembler to build the image. I use it to import and patch data and then export it to a file again. Not the intended primary usage, but it works great for that as well. A lot better than fiddling with a GUI. Sorry if this sounded grumpy - it's really not. GREAT video!
@retrobitstv
@retrobitstv Жыл бұрын
Thanks for the feedback! I had to really dial in my printer to get the top to work reliably since the rail it rides on and the locking mechanism are pretty small. I've opened/closed it dozens of times so far and it's holding up well but the first few prints I made broke immediately. This board really is designed to be a low cost option, often one you'll just set via the solder pads and forget. There are a lot of other more fully-featured multicarts out there but I haven't tested any of them yet so I can't speak with any authority.
@ennio5763
@ennio5763 Жыл бұрын
Does that sound plausible to have a relatively generic method to transform C64 games and programs that are loaded via tape or disk into cartridge ? The loading experience of cartridge is so much more convenient !
@retrobitstv
@retrobitstv Жыл бұрын
This question is a little outside my wheelhouse but I'll try and answer it generally and others can weigh in if they know better. Basically, if a piece of software can fit in its entirety into 16KB or less, then it can be run from a standard C64 cartridge. The code would need to be modified to map into the correct address space and the cartridge header would need to be added. While early C64 software did fit into this small amount of space, later tape and disk-based titles were often larger in size and scope which is why later games were so much more technically advanced than the earlier stuff. Later cartridge formats like Ocean, EasyFlash, GMOD2, etc. use bank switching to accommodate larger software titles up to 1MB, but the software needed to be coded specifically to take advantage of this. So yea, nothing is impossible with enough effort!
@ennio5763
@ennio5763 Жыл бұрын
@@retrobitstv Thanks for the detailed answer! Yeah it doesn't sound "generic", looks like each software needs to be directly modified. I was somehow hoping that one could imagine a "drive emulator" using bank switching cartridge instead of actual floppy. But that would require intercepting commands sent to the drive and redirecting them towards the emulator. That could be too complex to execute.
@francoisleveille409
@francoisleveille409 2 жыл бұрын
These PCBs are standard HASL and absolutely no gold plating! Hello cartridge port wrecker! www.tsb.space/bl0g/ultimate64-cartridge-slot-problem/ Every cartridge Commodore ever made for the VIC-20 and the C64 had gold plating on them. At 18:00 you can clearly see how scratched the surface of the contacts is after only one or two insertions.
@retrobitstv
@retrobitstv 2 жыл бұрын
Great info, thanks for sharing. I absolutely cheaped out when I ordered these and went with the least expensive option available since I figured I'd only have to use this cart once in any given machine (hopefully).
@francoisleveille409
@francoisleveille409 2 жыл бұрын
@@retrobitstv If you know you're not going to use a cart often then using HASL can be ok. However, there are many people on eBay and elsewhere selling carts with HASL contacts that are either games so they will be inserted/removed often or diagnostic carts destined to be used on many machines to be tested.
@teejmiller
@teejmiller 3 жыл бұрын
"I ordered the PCBs from a popular Chinese manufacturer" ..I see you still have an opening for PCB sponsor!
@retrobitstv
@retrobitstv 3 жыл бұрын
Haha yea. I think one company's retro KZbin ad campaign has been pretty successful. Who did you think of first? :)
@teejmiller
@teejmiller 3 жыл бұрын
@@retrobitstv OSHPark, of course!
@ramsa410
@ramsa410 3 жыл бұрын
Few questions I've been mulling over: Are EEPROMS still easy and cheap to source? What would be a decent EEPROM burner with software compatible with Linux? Are there any more modern memory types that could be used as EEPROM replacement?
@retrobitstv
@retrobitstv 3 жыл бұрын
I've been buying packs of 10 Winbond EEPROMs for 3-4 bucks shipped on eBay from a vendor in China. They're billed as new, but that doesn't mean they aren't pulls/refurbs, or are even authentic. I have had no problems with them at all though. There are also plenty of legit new units available from e.g. Digikey for a couple bucks apiece, so no issues with availability. As these are EE, they are much more convenient than the old UV erasable EPROMs already :) I believe the TL866 burners like the one I use work under Linux. I'm sure I've seen Ben Eater use them this way in his videos, but I haven't tried it myself. The XGPro software also apparently works under Wine, so that's also an option.
@methanoid
@methanoid 3 жыл бұрын
Where did you get those "grips" for holding the PCB please?
@retrobitstv
@retrobitstv 3 жыл бұрын
Here's a link: www.amazon.com/gp/product/B01GOL7786/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=B01GOL7786&linkCode=as2&tag=retrobitstv-20&linkId=7274bd88488ef720fbbc888abc7dff33
@dree6212
@dree6212 3 жыл бұрын
Very good information i was looking for something like this.So you can use any kind off ROM file for commodore64/128. thank you.
@retrobitstv
@retrobitstv 3 жыл бұрын
Yup, as long as it's a 8 or 16 KB generic or ultimax cart it will work. Any cartridge that has special hardware like ram expansions, freezers that have buttons on them, or internal bank switching won't work though.
@usermanico
@usermanico 2 жыл бұрын
Can you add passive cooling to the pla to protect them from failure?
@retrobitstv
@retrobitstv 2 жыл бұрын
Adding a heatsink is a common preventative measure and certainly can't hurt to try. While heat is thought to be a major contributor to PLA failure, there are other reasons these chips can expire of old age including moisture/oxidation seeping into the package due to cost compromises and material technologies of the time, vibration, ESD and the breakdown of the dialectric material due to electron movement. For a deeper dive into the subject, checkout Bil Herd's talk on Component Aging and Heat at kzbin.info/www/bejne/hoqnn2yfmdGKmJY
@MatteoPascolini
@MatteoPascolini 3 жыл бұрын
would it be possible to get GEOS onto a ROM for booting purposes? Have it boot from the ROM then access the disk drives as usual once booted. (yes I know everyone's setup would be slightly different but the main prg could be ROM and the rest of the system config reside on the floppy drive
@retrobitstv
@retrobitstv 3 жыл бұрын
GEOS128 had a ROM boot option, but I don't think anything like that was available for the 64. It is possible for GEOS on the 64 to boot quickly using an REU though.
@Mula381
@Mula381 3 жыл бұрын
Where did you get that usb joystick adaptor from?
@retrobitstv
@retrobitstv 3 жыл бұрын
It's a 64jpx and lets you use a Genesis, NES or SNES controller. I like it because it lets you map the second fire button to autofire or up/jump. www.64hdd.com/64jpx/64jpx.html
@tenminutetokyo2643
@tenminutetokyo2643 3 жыл бұрын
DOOD!
@mechaform
@mechaform 10 ай бұрын
I don’t understand why you don’t have more views and followers. Which EPROM programmer is that, a TL866?
@retrobitstv
@retrobitstv 10 ай бұрын
Thanks! KZbin can be tough :P Yep, it's a TL866 that I bought from AliExpress years ago before they were plagued with unauthorized copies. Oh, the irony.
@mechaform
@mechaform 10 ай бұрын
@@retrobitstv ouch! So I take it one has to be super careful where they buy the programmer in order to get a good one?
@retrobitstv
@retrobitstv 10 ай бұрын
@@mechaform The original TL866 that I have had been superceded by a newer model. I think it's called the T48 but don't quote me in that! Check out the XGecu website for more info.
@ElectroDrome
@ElectroDrome Жыл бұрын
You did a mistake and grabbed the crt file instead the bin file at 13:45
@retrobitstv
@retrobitstv Жыл бұрын
Haha, good eye! Yea, I didn't notice at the time but discovered that mistake later and fixed it :P
@ivannasha5556
@ivannasha5556 Ай бұрын
Nobody else noticed he messed up and picked the .crt for the last file XD
@HelloKittyFanMan.
@HelloKittyFanMan. 2 жыл бұрын
"...When one... arrive"? Oops!
@mrsnaglepops1876
@mrsnaglepops1876 2 жыл бұрын
the versa64cart is ok but better to use a magicdesk 1m cart much more versatility with ocean carts
@jhoughjr1
@jhoughjr1 2 жыл бұрын
ti cart mmm hmmm
@infinitecanadian
@infinitecanadian Жыл бұрын
You should invest in a 3D printer. It is worth it if you are into retro-computing.
@retrobitstv
@retrobitstv Жыл бұрын
I have a basic Creality CR-6 SE :)
@johnjoyce
@johnjoyce Жыл бұрын
You should use gloves to avoid washing out the lighting and zoom in so we can see the work
This Commodore 1541 hides a terrible secret.
8:54
retrobits
Рет қаралды 112 М.
1❤️#thankyou #shorts
00:21
あみか部
Рет қаралды 84 МЛН
She ruined my dominos! 😭 Cool train tool helps me #gadget
00:40
Go Gizmo!
Рет қаралды 45 МЛН
How Oldschool ROM Cartridge Games Worked
14:09
The 8-Bit Guy
Рет қаралды 3,3 МЛН
Commodore 64 Part 1: How The Memory Map Worked
18:01
The [Fill in the Blank] Programmer
Рет қаралды 58 М.
Games That Push The Limits of The Commodore 64
15:29
Sharopolis
Рет қаралды 408 М.
[NEW] Crystal Clear HDMI For The Commodore 64 In 60 Seconds
15:19
Retro Hack Shack
Рет қаралды 36 М.
38911 Bytes Free? Commodore 64's BASIC RAM
29:57
8-Bit Show And Tell
Рет қаралды 36 М.
A Bad Amiga 500 ROM plus Pistorm and RGBtoHDMI Install
16:11
More Fun Making It
Рет қаралды 8 М.
Commodore 64 Longplay [074] The Untouchables (EU)
24:31
World of Longplays
Рет қаралды 8 М.
Jim Butterfield Commodore 64 Training Tape - FULL Length C64
1:56:23
The Ultimate II+L Cartridge - The Best C64 Cartridge Money Can Buy?
12:46
Хотела заскамить на Айфон!😱📱(@gertieinar)
0:21
Взрывная История
Рет қаралды 1,7 МЛН
AI от Apple - ОБЪЯСНЯЕМ
24:19
Droider
Рет қаралды 117 М.
сюрприз
1:00
Capex0
Рет қаралды 1,3 МЛН
Дени против умной колонки😁
0:40
Deni & Mani
Рет қаралды 12 МЛН