Very good video! Thanks! :) I used the C128 when it came out on the market as a kid. I loved typing in all that Basic code and the C128 was superior than the C64 in terms of sprite creation and doing all sorts of things in just simple Basic. :)
2:22 I had a Commodore 1750, CMD 1750, and a 2MB CMD REU. 2:34 The REU RAM not being directly accessible isn't necessarily a disadvantage, considering that you can fetch and stash its content at 1 MB/sec and you can use it to copy and fill internal RAM at 500 KB/sec and 1 MB/sec, respectively (minus setup overhead). It's fast enough to traverse data structures held in the REU. In fact, you can fetch small data-structure nodes into Zero-page RAM to process them faster than you could with (zp),Y addressing to main memory. I did this with text lines in the Zed text editor. You can also do Blitter-type operations for graphics, which I did to scroll the Soft-80 screen in the C64 ACE OS.
Dr. Craig, I've checked your site and the info on your C64 ACE OS. I'm very interested and I hope you would make a video of how it is now and also show/share the progress. Are thinking of including a c compiler for your OS?
A video about ACE would be really cool but also very daunting. There's so much to it! I recently found a printout I had made way back in the late '90s of the ACE documentation.
@@8-bitshowandtell247: The documentation is still on my website. It's not clear if you're talking about the user documentation or the programming documentation. There is a lot to it. The system was designed with full-screen text applications in mind and is kind of the Zed text editor pulled inside-out and expanded.
The German system guide is much more helpful than the English original. One page per BASIC command/function, explanations, examples 👍 I am keeping my eyes open to finally get hold of a 1750 but the sellers know how rare they are...
hi Robin, i love your work Sir. I have 30yr career in IT and im currently learning c64 assembly as inspired by your videos. thankyou so much for the inspiration, friend. I just managed to purchase a 1764 REU. if it works, i plan to fully populate the RAM to max it out. will a new commodore c64 power supply be ok for power? I still have the old creme c64 brick power supply but was thinking the new one may be electrically "safer" ? any tips appreciated friend.
Awesome video. i had asked about replacing the 64K chips on the MB with 128K but that is a NO GO. but I could see an awesome video game taking full advantage of the RAM and making a killer fast game.
The c128 had so much potential but so little time :( I was an avid c64 user for years, and by the time I got my c128 I was at the end of high school and had other things to do. Im still dying inside to write a dual screen BBS for it hehe...someday! Thanks Robin.
The 1764 power supply appears to be a slightly modified version of the Commodore 128 power supply. Both appear to be very reliable. I've been using this 1764 power supply for several years now, and I also have a (still working) C-128 power supply that I modified for C64 use (by cutting off the square C128 connector and putting a round C64 connector in its place) that I used for many years before that. Both were made in the '80s.
I checked my 128D manual, and sure enough, the RAM bank selection section had been corrected to specify that a 1700 uses banks 0-3, and a 1750 uses banks 0-7. I was not expecting to see it specify that you shouldn't use this command while at 2MHz, and you should use the SLOW command before executing a transfer. Curious...
I think I've read before that REU transfers aren't reliable at 2MHz, but I had forgotten about that. I still don't have a good video capture solution working for the 80-column VDC that supports 2 MHz, so all my C128 videos so far have just been at 1 MHz.
Now, I need to admit, I haven't worked on the old Commodore computers for a long time, but I was thinking how you could have BASIC programs that were larger than 128KB. From what I remember, you could set a pointer for where the variable memory started to a specific spot to preallocate memory for the lines of BASIC CODE. I think it was a trick they used when they wanted to embed machine language subroutines and have them load without the , 8,1 at the end of the Load command. Now, I was thinking, you could bank swap the BASIC code with more BASIC routines loaded into the other banks. The first few lines of BASIC are identical, which handle bank switching then return execution to a particular line number. The variable memory storage would never be touched by the bank switching and not get corrupted and since the program searched for the next line of code dynamically because it looked for the line numbers in memory as each line was run. I do hope I'm describing this right.
Not a lot, but yes, a few examples: GEOS made excellent use of the REU, and later Infocom games would use it as a high-speed cache to drastically cut disk-access.
Can someone explain how it works wit TMP. When the source code is assembled it needs to have access to the source code and write the Programm. But you can assemble the code anywhere even to the location of the source code itself. Also copying a whole page would most likely mess up your system wouldn’t it?
There is a recent C128 romset that allows full REU banking up to 16 megabytes, if you have such REU-like device (they exist) or emulator support (also exists). Check out the ICE romset for the 128 here - csdb.dk/release/?id=171583
Unfortunately, no, they're not pin compatible and even if they were, the Atari systems (both 2600, and 400/800) have very different input/output chips so the software isn't compatible, even if they share basically the same processor. I have heard that there was an adapter planned for the Commodore VIC-20 (and maybe C64) that would support Atari 2600 cartridges but despite being advertised, was never actually released as far as we know.
Memory access in the CMD RAMLink worked similar to the GeoRAM: you tickle some registers and your selected page of external RAM shows up at $DE00-$DEFF for you to access. However, if you had an REU *_and_* a RAMLink, you could copy content between the $DE00 page and the main system RAM at 500 KB/sec (minus overhead) by stashing and re-fetching the content with the REU. The RAMLink came with up to 16 MiB of RAM.
As far as I know the Ramlink uses a different transfer method which isn't as fast as the REU, but the Ramlink does a better job of simulating a very fast disk drive, and also is battery-backed so it acts as a much more permanent disk.
But having 2 MHZ available, a lot of REU RAM and especially the emulators around, why today nobody develops new "advanced" games in 128 mode but prefers C64?
It'd be great to see more C128 games that make good use of the 80-column VDC. It's just fairly slow to update the screen on it, and unfortunately the REU can't help with moving VDC video RAM around. And 2 MHz mode doesn't work with the C128 VIC chip, so it's only certain cases where the C128 has much advantage for games. The C128 really shines when doing productivity or programming.
Very good video! Thanks! :) I used the C128 when it came out on the market as a kid. I loved typing in all that Basic code and the C128 was superior than the C64 in terms of sprite creation and doing all sorts of things in just simple Basic. :)
A nice Demo, Robin. I have a couple of Commodore REUs myself but have never put them to good use.
Thanks Robin... That is definitely going to provide me with several hours of fun with the Ultimate 1541-II Plus cartridge on my Red C128.
Nice video, thanks. There are many comments, I am very glad that the Commodore 128 is still very popular.
2:22 I had a Commodore 1750, CMD 1750, and a 2MB CMD REU.
2:34 The REU RAM not being directly accessible isn't necessarily a disadvantage, considering that you can fetch and stash its content at 1 MB/sec and you can use it to copy and fill internal RAM at 500 KB/sec and 1 MB/sec, respectively (minus setup overhead). It's fast enough to traverse data structures held in the REU. In fact, you can fetch small data-structure nodes into Zero-page RAM to process them faster than you could with (zp),Y addressing to main memory. I did this with text lines in the Zed text editor. You can also do Blitter-type operations for graphics, which I did to scroll the Soft-80 screen in the C64 ACE OS.
Dr. Craig, I've checked your site and the info on your C64 ACE OS. I'm very interested and I hope you would make a video of how it is now and also show/share the progress. Are thinking of including a c compiler for your OS?
@@Mr_ToR: I haven't worked on it in decades.
A video about ACE would be really cool but also very daunting. There's so much to it! I recently found a printout I had made way back in the late '90s of the ACE documentation.
@@8-bitshowandtell247: The documentation is still on my website. It's not clear if you're talking about the user documentation or the programming documentation. There is a lot to it. The system was designed with full-screen text applications in mind and is kind of the Zed text editor pulled inside-out and expanded.
The German system guide is much more helpful than the English original. One page per BASIC command/function, explanations, examples 👍
I am keeping my eyes open to finally get hold of a 1750 but the sellers know how rare they are...
hi Robin, i love your work Sir. I have 30yr career in IT and im currently learning c64 assembly as inspired by your videos. thankyou so much for the inspiration, friend. I just managed to purchase a 1764 REU. if it works, i plan to fully populate the RAM to max it out. will a new commodore c64 power supply be ok for power? I still have the old creme c64 brick power supply but was thinking the new one may be electrically "safer" ? any tips appreciated friend.
oh, man! "fetch" and "stash", iso read/write!
back from when computing was cool!
Awesome video. i had asked about replacing the 64K chips on the MB with 128K but that is a NO GO. but I could see an awesome video game taking full advantage of the RAM and making a killer fast game.
@8:57 this is one of those trippy programmer moments that get ya now and again.
Always fascinating!
Can you show us how to write HelloWorld for GEOSS?
Wow! 512k!! That must have been expensive AF back in the day.
The c128 had so much potential but so little time :( I was an avid c64 user for years, and by the time I got my c128 I was at the end of high school and had other things to do. Im still dying inside to write a dual screen BBS for it hehe...someday! Thanks Robin.
Thanks and great video as always 😀
9:05 You can call it "A very ugly example" if you will, but it's showing off some very elegant techniques in the process. :)
Very cool, now do it in TMP! ;)
This kind of memory should allow for some nice sampled music or not too bad animations or even movie-like fast video slide show.
Nuvie Videos: th-cam.com/video/Htx6-FF-5Cw/w-d-xo.html
I thought about doing it on 8-bit Atari. Set video memory to cartridge area and stream video from external source ;)
@@Okurka. Amazing stuff. I see nouvie maker is freely available. Wonder what the making process looks like.
Robin, maybe you could upgrade your REU with additional memory chips, to get the 2MB you lust(ed) over? :)
I've heard that there's a mod that can be done to expand to 2 MB, but I'd really love to get one of those tidy little CMD 1750XL with it built-in :)
The CP/M Mode of the C128 uses the Memory Expansion as a Ramdisk.
I'd love to do a video about CP/M mode but I'm pretty clueless about it. I'll have to make time to learn about it.
Hello,
I would like to ask you some advices on the REU programming, how may I contact you ?
Excellent information. Is that 1764 P/S prone to the same degradation and failure mode as the stock C64 P/S?
The 1764 power supply appears to be a slightly modified version of the Commodore 128 power supply. Both appear to be very reliable. I've been using this 1764 power supply for several years now, and I also have a (still working) C-128 power supply that I modified for C64 use (by cutting off the square C128 connector and putting a round C64 connector in its place) that I used for many years before that. Both were made in the '80s.
I checked my 128D manual, and sure enough, the RAM bank selection section had been corrected to specify that a 1700 uses banks 0-3, and a 1750 uses banks 0-7.
I was not expecting to see it specify that you shouldn't use this command while at 2MHz, and you should use the SLOW command before executing a transfer. Curious...
I think I've read before that REU transfers aren't reliable at 2MHz, but I had forgotten about that. I still don't have a good video capture solution working for the 80-column VDC that supports 2 MHz, so all my C128 videos so far have just been at 1 MHz.
Now, I need to admit, I haven't worked on the old Commodore computers for a long time, but I was thinking how you could have BASIC programs that were larger than 128KB.
From what I remember, you could set a pointer for where the variable memory started to a specific spot to preallocate memory for the lines of BASIC CODE. I think it was a trick they used when they wanted to embed machine language subroutines and have them load without the , 8,1 at the end of the Load command.
Now, I was thinking, you could bank swap the BASIC code with more BASIC routines loaded into the other banks. The first few lines of BASIC are identical, which handle bank switching then return execution to a particular line number. The variable memory storage would never be touched by the bank switching and not get corrupted and since the program searched for the next line of code dynamically because it looked for the line numbers in memory as each line was run.
I do hope I'm describing this right.
Was there any commercial software released that used any of these REUs?
Not a lot, but yes, a few examples: GEOS made excellent use of the REU, and later Infocom games would use it as a high-speed cache to drastically cut disk-access.
@@8-bitshowandtell247 Very interesting - thanks for letting me know.
I wonder how the U2+ compares to these in terms of power. Granted with a 5v 5amp PSU I'm not worried about it. lol
Can someone explain how it works wit TMP. When the source code is assembled it needs to have access to the source code and write the Programm. But you can assemble the code anywhere even to the location of the source code itself. Also copying a whole page would most likely mess up your system wouldn’t it?
There is a recent C128 romset that allows full REU banking up to 16 megabytes, if you have such REU-like device (they exist) or emulator support (also exists). Check out the ICE romset for the 128 here - csdb.dk/release/?id=171583
Can you use atari cartridges on the commodore 64c in the cartridge port?
Unfortunately, no, they're not pin compatible and even if they were, the Atari systems (both 2600, and 400/800) have very different input/output chips so the software isn't compatible, even if they share basically the same processor.
I have heard that there was an adapter planned for the Commodore VIC-20 (and maybe C64) that would support Atari 2600 cartridges but despite being advertised, was never actually released as far as we know.
Is the operation the same in the CMD Ramlink? I was curious it was available as 1-4 MB using 30 pin DIMMs.
Memory access in the CMD RAMLink worked similar to the GeoRAM: you tickle some registers and your selected page of external RAM shows up at $DE00-$DEFF for you to access. However, if you had an REU *_and_* a RAMLink, you could copy content between the $DE00 page and the main system RAM at 500 KB/sec (minus overhead) by stashing and re-fetching the content with the REU. The RAMLink came with up to 16 MiB of RAM.
As far as I know the Ramlink uses a different transfer method which isn't as fast as the REU, but the Ramlink does a better job of simulating a very fast disk drive, and also is battery-backed so it acts as a much more permanent disk.
So it's not easy to use the extra memory for a spreadsheet or database. You keep on swapping and need to know exactly where de data is.
i still have REU 1750 factory sealed
@ungratefulmetalpansy still have it
Do bad lines slow the transfer?
Yeah, the REU gets halted during badlines so to truly get the full 1 MB/s you'd have to blank the screen.
This video isn't showing up in my feed. =/
This video is on my second channel, so maybe you haven't subscribed to it?
Hmm, screen memory double buffering...
But having 2 MHZ available, a lot of REU RAM and especially the emulators around, why today nobody develops new "advanced" games in 128 mode but prefers C64?
It'd be great to see more C128 games that make good use of the 80-column VDC. It's just fairly slow to update the screen on it, and unfortunately the REU can't help with moving VDC video RAM around. And 2 MHz mode doesn't work with the C128 VIC chip, so it's only certain cases where the C128 has much advantage for games. The C128 really shines when doing productivity or programming.
Is anyone currently producing REU like this?
The U1541 cartridge will emulate a REU. A friend of mine is working on a clone now; hopefully it'll see production.
720p60 ahhhh
I get 1080p60.
Yeah, I uploaded 1080p60.
This dude sounds like vwwestlife I think his username is..
I'm a fan of VWestlife but he's from New Jersey and I'm from Northern Ontario, so it'd be unusual for us to sound very similar :)