This is an absolutely amazing piece of software. The fact that you can play music and move a window at the same time on this 40 years old computer is nuts. Really some people have talent :)
I guess with more modern computers, there are more ideas now of what computers are capable of and the old 8bit PC's were never utilised to their full potential at the time they were new. People back then didn't have any concept of what computers could do or what they were capable of.
Not really that hard to set up an interrupt to call a music player routine once every frame. I remember doing this on a stock C64 , had the music from Driller playing under interrupt - whilst still having access to code and run programs under basic. It did still blow my mind at the time - but its not really that tricky to do.
think what they could do today with modern computers if the drive was there really push the boundaries, and not assume an endless supply of cpu and ram resources
For me, this is almost tear inducing. I grew up using the C64, and it is still one of the most "home" feelings I'll ever have. Some of the games are still among my favorites of all time, as is the physical technology itself. It reminds me of long ago, when things were less messy, my family was still around, and the world seemed bright and overall good. But then again, the 80s in general seem that way, even looking back now, for all of their faults. Thanks so much for reviewing this -- I know I'm just a random person on the internet, but I hope you can get some positive vibes at least from the thanks. :)
@@RetroRecipes Is it just me or did you also get watery / glassy eyes in the video, especially around the 10 minutes mark while talking about the C64 getting something like this 40 years later? :D
@@RetroRecipes Hehe. :D Btw, for me the C64 OS would be more of a toy than a "daily" driver. At least I would get some use out of my SD2IEC which hasn't seen much action since getting a Pi1541. My TFCIII is more than enough graphical UI for my general needs.
In 1986, I wrote a windowing system for the IBM PC (4.77 MHz 8088) with a floppy disk drive. In initial design decision was to use TEXT MODE so the amount of data would be reasonable. Windows were overlapping and could be dragged etc. Turned out to be very fast, even on the original hardware! It was easy for a program to use: creating a window gave it a pointer to a virtual screen of that dimension, and it could manipulate the character and attribute ram in that array as if it were the screen memory. The library would copy from those virtual screens to produce the overlapping windows in the real screen. Due to the limitations of the CGA and general speed, it minimized copying and intelligently picked out just the regions to copy, that showed (not covered by other windows). This proved to be a good engineering decision even on later hardware, as the CPU got faster the interface to the video RAM was stuck in the past and became dog slow in comparison. Because of this, some programs ported to use my library even in a trivial way (one big window) ran much faster! It could manipulate the virtual video memory array in its casual inefficient way, and upon triggering an update the library would minimally copy that to the real video RAM, copying each changed character only once. Note that it always used 16-bit writes to the video RAM, which (on then-current cards) used a protocol newer than the original 8-bit bus, so not only did it transfer twice as much but it used fewer cycles. So, the program updates _only characters_ , writing 8-bit values to non-concecutive addresses. My update copy copies 16-bit values, even though the adjacent 8 bits (the attribute, or color) was not changed. This alone made it faster than the original program was when it wrote directly to video RAM. I later updated it to C++ and wrote a fancy multi-windowed text editor that I used for many years. It wasn't until the mid '90's that I was given a machine at work that had a graphics card that was capable enough to make a GUI-based editor smooth (responsive and fast updating) enough. That was a 70MHz Pentium IIRC, but the big difference I believe was the switch to the PCI bus, and "minimum standard" cards that had some built-in line-drawing, box-drawing, and blitting. But I still have fond memories of doing things in CPU code only, one byte at a time.
Actually seeing a printed manual after many years made me feel very nostalgic. I miss the old big boxes with manuals and sometimes extras like maps and stickers.
My thought exactly when I read that it requires 9000 free blocks. With a 1541 disk drive giving you 664 free blocks on an empty disk...yep, 14 disks. Back in the days, owning even just two disk drives was "insane luxury", and the maximum number of 1541 drives which could be connected simultaneously was four. Apart from that, development was much more difficult. Nowadays, you write your software on a PC. Back in the days, that was something only big companies could afford; a "lone coder" would write his code on the machine itself. Expect 100+ disks of assembler source code.
All I can say is wow.... The C64 was my first experience with computers and even being online with quantumlink. It's so awesome to see new software that is so advance for this system.
a clea labour of love - having written my own text-based screen os back in the day (emulator for clipper in dos, back in the day using turbo pascal), you can see the time and effort taken to manage the wimp interface and make it fully functional for the running apps. Really impressive
a few things... I meant to say that the OS on display here for the c64 was really impressive and had taken care/etc. (didnt mean to imply my own was really impressive), second, unfortunately I lost all my old HDDs in a house fire so nothing to show here.. boo - it would be fascinating to review my own old-school code now (I'm sure i'd be horrified and a large amount of WTF-per-minute)
We kind of did, and more advanced graphically, it was the GEOS operating system, which is mentioned in the video. My dad had a friend who was a programmer at Apple. One day I showed him the GEOS operating system. He was blown away that the C64 could do something very similar to the Apple machines of the day.
This is as groundbreaking as GEOS was back in the day. Seemingly unlimited potential on a 40-year-old platform. I can't wait to see this evolve. There may be some lessons here for modern system programmers in using resources...
Definitely reminds me of GEOS OS wayyy back in the 80's which was a similar attempt to bring Mac like windows to the C64. Its biggest drawback was flipping through multiple floppies and course loading was slow. This is a fresh breath of air to an actual OS attempt. :)
I've been an occasional reader of Greg Naçu's blog pages talking about his design decisions and other challenges. This is an amazing achievement, right up there with Adam Dunkel's Contiki. There just isn't enough space on the VIC-II text screen to show very much. And with UI gadgets and other elements like borders and title bars all around, it's compromised even more. GEOS, for all its glacial (pre-global warming) speed, managed to use bitmap graphics to circumvent that limitation. Even just an 80×25 screen would make a world of difference. The simulated 80 columns of Contiki's second release also come to mind. I know-I _know..._ that using a bitmap screen is a big memory hog. A text screen takes 1000 bytes (not even 1K!) and a bitmap screen takes 8 times as much, and twice _that_ if you're using double-buffering. That isn't even getting into things like color maps and sprite pointers. Greg's managed to get 5 screens in there, switchable, and he's still only 62.5% of the memory footprint of just _one_ bitmap. So, obviously, he's made some deliberate choices. He's favoring speed and compactness over information density. Plus a bitmap screen has the problem of attribute clash, so a text screen is actually more practical for color. Not that a text screen doesn't have its own color limitations, but at least the color isn't going to be split up in ways that break across the middle of a UI element.
If you have enough ROM, there's lots of cool stuff you can do with very little RAM. This Commodore OS probably reads continuously from the flash drive, with most of the complexity being read-only. When running a program, it could save most of its state to the drive and step out of the way. This is why increasing the I/O speed dramatically boosts the OS's performance. An example of a system with a nearly identical processor is the NES. It only had 2k of RAM, with another 2k for video memory (and a little extra for sprite positions and palette data). That's insanely small by today's standards. With 2k, you can only store a 4-bit image with 64 by 64 pixels. Its games were awesome though, because the ROMs were huge in comparison. The PPU was continuously reading from them, just fast enough to keep up with the CRT beam. The CPU read most things out of ROM rather than loading them to RAM first. With banking, you could pull in whatever you wanted to the CPU's 64k address space, or the PPU's (picture processing unit) 16k address space.
I just had to check this out, it caught my eye in the sidebar, 40 years ago my buddy had a C64 with no tape drive or floppy drive, we spent a half a day typing in a BASIC program, he or I tripped over the power cord and lost all our work and that was pretty much it for my interest in a C64! Cool and crazy that somebody is writing a new OS for it! I think Terry Davis is in heaven smiling down at this development!
I kept thinking "cool but what is the point, why would anyone use this?" until you showed that it can load games from SD card. Now I can imagine having every good game on 1 card, all launchable from this OS. There's the reason for existence. What an accomplishment! 😮
I remember watching a few of his earlier update videos. Even early on what he was able to accomplish was absolutely mindblowing. I'm really happy to see it has reached the 1.0 milestone!
Yeah I saw some of those too. Its too bad he had to roll back using icons on the desktop in favor of thr Text based object, but I totally get the extreme limitations the system imposes. Its good the icons still exist and he can at least use them in the app screens.
Actually OS9 for the Color Computer 3 is a full multi-user, multi-tasking OS that is still being developed and updated today, and the original version goes back to the original coco and that was before the c64 I believe...
It needs to be on a cartridge of its own where you can plug the SD card into the cartridge. It will boot instantly running from RMOM. The cartridge can load data so much faster, and the cartridge can directly DMA into the 64.
Yep! Cartridge would be great but it need not be a new hardware. An EF3 (or any cardridge which can emulate one) plus an SD2IEC would be a great combination.
I feel that GEOS from 1988-ish (version 2.0) still offers a more complete, modern experience with its full bitmapped graphics and applications suite (geoWrite, geoPaint, geoPublish, geoFile, etc.) and my personal goal is to get useful output from it, something I can print on a modern printer or send with an email. It seems that requiring a filesystem with directories has limited the new OS in terms of not running on C64Mini, BMC64, etc. I use a 1541-II connected to a Windows XP PC as the link between the modern world and my C64. By not using 1541 drives, C64OS seems to break that link. I’m just not sure what I’d do with it, but I do respect that lots of work has gone into it, and the delivery is particularly impressive, as long as you embrace that SD card solution (which I don’t) :)
Great review. I have never owned a C64, and probably never will, but it pleases me to see that someone has devoted an incredible amount of time and effort to produce a new OS for it.
Even the Atari 8-bits got new OSs and incredible upgrades. Stereo Pokey, 1MB Ultimate, Video Board XE, etcetcetc. It would be nice to see more people talk about them.
Appreciate you showing everything in realtime. That is kind of important in reviews of software like this to give potential users a good look at what to expect. Thumbs up!
My first computer was the C64. When it came out. I progressed to Amigas and then Video Toaster scene. I am amazed at the development this magnificent programmer developed. Amazing.
40 years on and the bread bin has a new OS and this looks damn good with a good few things to do on it as well, love it. This was a great video as always and a nice surprise being a Tuesday so until the next one you guys take care and have a great week. Oh an puppyfractic the 2nd was so the star of the video ☺️☺️
Love your video as always. You look a little like Walter from Big Labowski with beard and sunglasses. Not sure if this is intentional. Its great all these items are being made for those old machines. Seeing you open the manual and seeing that SD card was quite a thrill. I could not help but remember the days when I first opened up some of my favorite games on disk including Silent Service, and Crusade in Europe. I feel like I learned a lot from some of the best gases at the time. I recall taking Western Civ. in college and thinking to myself I doubt my professor ever had the opportunity to use a computer simulation to examine say the Battle of the Bulge. Fun fact: Even tho I am about the same age as you, I just started law school, so its back to the books. One day, I will have man cave perhaps inspired by your channel...time permitting. (PS I only had a few cassette games. The best one was Combat Leader by SSI for Atari 800. Prior to affording a disk drive, most games for me were cartridge. They were OK, but capped at 16 K.) All the best to you and Lady F!!!
It's a great achievement using some very limited technology. One thing I'd suggest adding. C128 support. 80 column support would be a huge improvement, especially since this is all text based. More memory, possible to add ROM support (ala GEOS 128) for fast loading the OS via ROM U36. You could even support... dual monitors!
Love the interpretation of some of the features we all are use to, in a simple and yet responsive interface. I used Geos over the 1541 ... to me is more like a gimic thing ... really slow. As magnificent as it is for such a machine like the 64, this os is more down to the Earth, give the 64 good speed in terms of today's usability "standards"
Great stuff, for great once hw, now i never owned, but i always am mesmerized what ppl can do with old hw and new sw for that hw. Here in the videos is the proof of what im talking about. Its just amazing i think. Sure its slow, but if this was real time, i mean, its ok i think, sure its not fast as with linux or windows or mac, but doesnt matter. It can do all sorta things and if updated regularly it could become really great piece of sw in the future. Just blows my mind that after 40yrs still this can happen in retro circles, this great piece of sw. Needs updating, adding functions and retro enthusiast mostly will love this to bits. I just love watching this old stuff. My friend owned C64, played games only, probably my first introduction to gaming, boot from cassette, slow as hell, but yeah, still fun back in those days. So this is like wtf moment for me. Anyway i think it has potential not only as a show piece but a really useful piece of sw.
Not gonna lie. I had initially thought this OS was a novelty but after seeing this video I see how powerful and fully featured this OS is. My only complaint is that there is no “download only” version.
I never had a C64. My machine for the last 40 years has been the Texas Instruments TI-99/4A, but I found this fascinating and entertaining. Brilliant work by the author 👍🏻
We are truly spoilt with modern machines, this doesn't seem all that until you consider what it is actually doing and what it's running on... It's a total marvel that it runs so well and it seems quite intuitive as well. Fair review too
How beautiful & how clever! I’m sat watching & I’m quite tearful! My first computer was a C64 all those decades ago - I’m sure it’s still in my parents loft somewhere - I must take a look!!
Great review of a very interesting product. It's amazing to see what's still being done for our beloved C64 40 years later. Plus, as someone who recently switched to Windows 10 and isn't all that in love with it yet, I'm hoping that one day we may see C64 OS developed for modern PC's. I'm all for Julia Roberts' knees being added to v2.0 myself.
Well, a very interesting episode. I can see some potential there, and having the file manager for working with the SD card is handy. It does need a bit more work there to make things seamless and smooth, but fascinating to finally see it in action. I don't know if I would use it every day, but I can see me trying it.
I'm kind of in mix of being very impressed and yet disappointed - I think it has to do with the memory use, and with C-64 Contiki OS (with GUI) which had co-operative multitasking kernel, a network stack (you could access internet or even run a server - in fact it had a telnet client, web browser and web server) and much more. It wasn't fast, but the kernel itself was - I think if you stripped it down (Contiki OS [which the C-64 GUI variant branced off from] is designed for very limited 8-bit systems) and built the UI and API's like this OS has it might've been even better, faster and maybe even have smaller memory footprint. Still awesome - and maybe I don't know as much as I think I do
Wow, I have a old c64 computer in a box. I am curious about relearning the platform and now with this it moves higher on my list of to do. Thanks, great video.
Totally gobsmacked here. Can't believe doing all that on the C64. Can you imagine how this would have impacted the life of the platform if this had been possible then?
Six- to nine-year old me back in the early 90s would've been astonished at this OS if we had it running on our C64! My brother and I were just mostly playing whatever few games would actually work (mostly Dino Eggs, Space Taxi, Choplifter, Miner 49er, Defender) and tinkering with Thinking Cap and Print Shop. Eventually, mom got a used PC from work with MS-DOS 6 and Windows 3.1 and we switched to that. Watching these videos brings me back to a simpler time when I had dreams of making games and used Thinking Cap to outline everything.
Nice to see these kinds of developments, even after 40 years. I won't be using this operating system though, I don't need it. But this weekend I did order "Vision Basic" for my C64. Also a new development, a completely new Basic with a lot of potential.
His next challenge is to do a Vic20 version. Just how much OS can you stuff into 3583 bytes? 3583 bytes. How do I remember that after so many years? Can't remember my mobile number, but can remember the Vic20 had 3583 bytes free.
As a bit of a purist geek and a show-off, there is a certain joy in knowing the archaic computer incantations that few others, these days, would know. Most of the time I don't engage in complicated or protracted operations with such simple devices. An updated OS seems like a bit of a cheat. I felt the same when Windows 1.0 and Control Panel interfaces came out. That all being said, I would use this sort of GUI for simplifying disk and file operations if I was in a hurry and had a lot to manage.
This is digital voodoo. I love it! 😊 Perhaps a future version might come bundled on a cart with an SD card slot built in (a la Ultimate). A C128 variant of this that utilises 80 columns would be pretty cool too.
Great review and interesting as usual Perifractic. I want to add to "somewhat of a first", the Voyager space probe got a software overhaul in 1990 and an update earlier this year. But for us mortals down here it's certainly a welcomed first! Perifractic's next episode: Kitesla gets sent to space after being moded with a C64 running this new software while you control it via an old 1200 baud modem connected to your iphone. Somehow I know you'll make it work! 😉😂
Very nice review. The 5 desktop feature is very nice for productivity, one for email / correspondence, one for music, one for gaming, etc. Truly impressive OS and probably the only such product we'll see for hardware that is 40 years old. Would have been nice if this OS could use the border area for time / date, notifications maybe?
It's amazing to see what given 40 years of computer experience what the C64 would have been capable of in the 1980's. OK well it would have had to have had a hard drive to really do this.
My first experience with a computer was @ 12 years old and on a C64 and games, programming, BBS systems all felt like magic. At 16 I moved onto x86 systems and networking, LANTASTIC, etc... which was magical again and Ive been in IT for 35+ years now. I watched this last night and to see the development that went into a 40 year old system and all the amazing stuff that the programmer made the C64 do once again just amazed me and I went to bed thinking... Wow, that was magical to see. Thanks for putting together this video and to the programmer(s) who put that kind of work into a system so many people love and enjoy 40 years later.
Outstanding! Very, very interesting subject. As well as one of your most enjoyable episode ever. Thank you very much! Keep up the great work and engaging content! Wishing you and the whole crew, the best of everything!
I love to see this - so many great memories! I'm glad that there is still a considerable following for the computers that shaped our early experiences.
GEOS was slow mostly because it was severely RAM-limited and had to page stuff in from slow floppy. If there was a GEOS that ran code solely from the PEM RAM, it’d have been pretty snappy. Any external storage system on C64 that did not use the cartridge port was destined to be slow and cycle-hungry. That’s due to very limited I/O capability of the naked 6502 with not much help from the chipset.
When I got my _Final Cartridge III_ around 1988, I was looking forward to doing everything via mouse in the GUI like the big boys on their 16 bit machines. It only took me a few weeks to default back to the BASIC 2.0 interface (with added quick key support for all essential commands) because it was simply *_faster_* to use and overall, more convenient for me.
When they get Wi-Fi, it will need an App Store, and a PETSCII Robots background. Maybe a telnet client... would be good if it could get internet time as well (no need for a RTC).
Now you're speaking my language. Your imagination is being opened to various nice possibilities. These are some of the reasons I started making C64 OS for in the first place.
I think the 1541 Ultimate II+ has one *severely* undermarketed feature: the Hyperspeed kernal. It should be both much faster than JiffyDOS and capable of storing large file sets like C64OS.
Way cool, especially the graphic/text split screen. Neat to see what kind capabilities that modern software development tools and techniques can extract out of the old hardware. A port to the 512KB CoCo3 would be neat. MinuetOS was written all in assembly for the '386 (GUI, multitask), had built in examples of assembly code that could be assembled and ran within the OS. A cool app for c64OS would be a terminal emulator, that could virtualize 80-col mode (e.g. support scrolling left/right to see your 80-col connection even if you're in 40-col mode).
at the very least, an 80 column mode for that 1024x768 feel.. (yes I know thats not the resolution. But do you remember how excited you were the first time you experienced a massive leap in resolution?)
@@epremeaux Since graphics mode is blanked in 2Mhz mode I was learning Assembly so I could access the text memory and bank switching to make custom text graphics since there was no command to do this natively. I just about had it figured out when my buddy convinced me to learn to play guitar/bass and start a rock band instead. I found my old notes I had. I needed a real assembler instead of just the built in monitor that I was using.
Was wondering how you write apps. for the OS that can run in the desktop. You at least showed how you run a conventional app. from the desktop. That is nice. I used to wonder about that with GEOS. Seeing how 64OS operates reminds me of how the IIGS was set up. I remember it had an optional GUI you could boot up. It seemed like you could run full-screen apps. out of it. I don't know, since I only saw a friend use it. He used a command-line interface on it a lot.
If I could make this work to play SIDs as an alarm clock, I would totally run the C64 or 128 24/7. Being able to use mass storage with a C64 so seamlessly is a killer feature. It would be genius if it could run as a cartridge ROM with an inbuilt REU - could make it very zappy.
I think this is incredible and for some functions, yeah, I could use this as a daily driver system. If I can add network capability and being able to read and write to remote text files, simple email and I know already that I can do IRC for real time chat, I would love to do that. Thinking about it... if I could get telnet working reasonably well, I could log into my server and access various chat services in terminal. I would like to use this and see how far I can take it. :)
@@RetroRecipes I like the idea of keeping old tech relevant. Email would be fantastic. I wonder if an implementation of a shared clipboard would be possible? Obviously, only text could be shared but I think it could be possible.
@@drphilxr You could ALMOST do it with an Ultimate 64, Pixelwizard case and the Mechboard 64 but there are still no keycaps... if I could only get myself an injection mold machine...
Great to see that someone is keeping our Commodore 64 alive. I’d like to see it do some productivity like WiFi printing, and recipe storage, CD and music storage. Could a coprocessor be used to fetch the data for display images on a modern monitor, using the C-64 just as the file server asking for display software to do all the work. I’d also like the C-64 to load any of the Commodore 64 games that can be bundled on a SD card.
but commodore made a cd-rom player that didnt sell well with games based on c64 and as I understand it were capable of playing mp1 files music or video cd -files (.dat-files in windows ) - I assume the 384kbps mp1 would equal in quality to DDC Philips digital tape for ordinary compact cassette - I assume they are the same both bombed , DCC to minidisk and Cd and to 8-bit Nintendo and Sega - to little late and expensive
It's very cool. The ultimate would be a Rasberry Pi inside a working c64 case (with a c64'ish graphical interface) that could send commands to the c64 So you could load a program from the Pi as if it was a Linux desktop program but instead it would reset the VIC, load the program and switch video signal to the c64 instead. Something like that atleast. The ultimate 2in1 solution.
I like where you are going with that idea. Kind of like how a C128 has a Z80. I had a similar idea of pairing up a Mister FPGA with a Raspberry Pi. Is this C64 Singularity?
@@puzzud Yeah a modern frankenstein take on the "Amstrad Mega PC" go wild with that concept and see how far you can take it. There should be some very interesting technical challenges to it aswell.
Look up the Orange Cartridge and RVCop64. And maybe super-reu. Or SideKick64. I’m sure you could cobble together a 320x200 VNC client that runs on a cartridge with networking and uses the C64 keyboard, mouse, and display.
Now that I finally got mine, I think I understand the issue with its incompatibility issues with the various storage solutions. For those not aware, it's not that they "don't" work with the OS per se, it's that the OS is intended for mass storage, and those storage solutions are intended to function as true single disk solutions either as real drives or emulations or other simulacra of them such as the 1541IIU+ which does plug into the IEC bus, but doesn't emulate mass storage exactly, but the latest firmware 3.10a did add a ramdrive mode which may not have been available at the time of development but that and the ability to craft new carts may be able to add the IEC connective tissue to make the two things work, not sure if it's possible, but in software anything should be. ^_^ But it may not if it only wants to be a floppy drive, but the CMD FD works right, so there may be hope right? But I ain't one to gossip... .
This is incredible! I've been loosely following the C64 OS development for a while and I didn't think it would be as fully featured as it is shown to be here. I'll be buying this and hopefully we see more app development for it to increase productivity.
in the 80s a friend of mine had a modified C64 with speeddos and exos. crazy machine. copied a disk in 17 seconds. don't know how much those mods costs in the mid 80s
ProDOS 8 2.4.x runs on the Apple II, integer version, from 1976. Not saying that to try and one-up this project since ProDOS is basically a set of disk access routines and a few text-based utility programs. This is a full desktop environment ala GEOS, which is kind of impressive. (Also, I don't actually know what one can realistically do with a 64k Apple II in ProDOS without even Applesoft BASIC. )Although ProDOS 8 2.5 will probably promise better answers to that question…) Rather, I bring it up because of the real point here, that people love these old computers so much that they're upgrading and improving them and writing whole new OSes for them to this very day. And that's just cool.
I remember getting the Byte magazine I believe, and in it there was code to program your own games, and then after days of typing in 1's and 0's, you hoped to God that your tape saved the games correctly. Fun times.
Really nice product. Would be interesting to know how to program apps for this. Does it have any OS routines you can use from your own apps, is there some memory management/protection etc?
Memory management, he wants. Lazy developers, use the damn hardware ya got! But seriously, this OS is fantastic and I get why to want to hack on it. I can’t find a GitHub for it. Wait, the blog is full of low level stuff! Yippie!
I'll be working on the C64 OS Programmer's Guide in the coming months. All of the KERNAL calls, the libraries, the Toolkit classes, drivers, etc, are designed to make it easy to write new Apps. And, if you do write an App, the idea is to split the development into libraries, and Toolkit classes that not only help your app, but can be used in other Apps too. There is a paged memory allocator, and malloc/realloc/free, but no memory protection. That requires hardware that the C64 does not have.
Edit: wrote this before noticing that the developer had also replied to this :D Well, there has to be memory management for this kind of OS to work - and I hope it has some kind of system for loading libraries and applications into memory locations unknown beforehand, otherwise it will be severely limited in it's ability to have more than one application running the same time. Only programs and libraries that don't overlap with their hardcoded memory locations could be loaded at the same time if it doesn't have dynamic address relocation of some kind. As for memory protection, the C-64 wasn't designed with multitasking in mind and has no hardware support for memory protection - it can't be implemented in software, any application will have same access to any memory address that the kernel has. The only kind of "memory protection" on such system is trusting the application developers to not try to do anything malicious and to be capable of eliminating any bugs that may cause memory overflows - just like original x86 (it wasn't until the 286 it got any sort of protected mode - and most 16-bit OS's and desktop suites (like Windows, Geos, Gem, etc.) didn't utilize it. Linus Torvalds called it's design braindead. It wasn't until 386 that *most* x86 OS's started to be written to utilize it's 32-bit protected mode - though OS/2 was one of the exceptions and used protected mode when it was still only a 16-bit OS. But I digress badly. So no memory protection on hardware supported memory management - the former cannot and the latter must be implemented purely in software. Hope my rambling has some value as answer :D
@@robsku1 There was no question, really, but I liked your answer. The memories of GEM, DesqView, EMS, XMS, ahhhh! Then, with the 386, we got to map to “special” RAM between 640k and 1024K. HIMEM, they called it. Somebody was high, I’ll give them that!
The dev took the toothpaste tube, used it up, squeezed everything out of it then managed to get even more out! Absolutely astonishing work
He has one of those little tube slidy attachment things that let you get even more out
@@benlesczynski6194 does that plug into the eight-pin?
noting that there has always a physical use the vic-20 and the c64 programming language for use for commercial gain
And it was one of those metal toothpaste tubes we had in the 80s which you had to use those rollers for to get everything out with.
@@RetroRecipes and then used a needle to get the last bit out of the tube
This is an absolutely amazing piece of software. The fact that you can play music and move a window at the same time on this 40 years old computer is nuts. Really some people have talent :)
I guess with more modern computers, there are more ideas now of what computers are capable of and the old 8bit PC's were never utilised to their full potential at the time they were new. People back then didn't have any concept of what computers could do or what they were capable of.
Not really that hard to set up an interrupt to call a music player routine once every frame. I remember doing this on a stock C64 , had the music from Driller playing under interrupt - whilst still having access to code and run programs under basic. It did still blow my mind at the time - but its not really that tricky to do.
think what they could do today with modern computers if the drive was there really push the boundaries, and not assume an endless supply of cpu and ram resources
@@EsotericArctos Most people do not realize their phones are more powerful than the computers Nasa used for the moonshot.
@@DanT10 the C64 itself was, 40 years ago, a bit more powerful than the Apollo guidance computer designed in the 60s
What a great thing to know that almost 40 years later, someone is still developing on these platforms ... THANKS for sharing !!!
You’re welcome!
For me, this is almost tear inducing. I grew up using the C64, and it is still one of the most "home" feelings I'll ever have. Some of the games are still among my favorites of all time, as is the physical technology itself. It reminds me of long ago, when things were less messy, my family was still around, and the world seemed bright and overall good. But then again, the 80s in general seem that way, even looking back now, for all of their faults.
Thanks so much for reviewing this -- I know I'm just a random person on the internet, but I hope you can get some positive vibes at least from the thanks. :)
Thank you for your kind words! Means a lot 👍🕹️ I agree.
This man speaks for all of us.
@@RetroRecipes Is it just me or did you also get watery / glassy eyes in the video, especially around the 10 minutes mark while talking about the C64 getting something like this 40 years later? :D
@@moomah5929 I have been known to do so but on this occasion that might've been just you ;-)
@@RetroRecipes Hehe. :D
Btw, for me the C64 OS would be more of a toy than a "daily" driver. At least I would get some use out of my SD2IEC which hasn't seen much action since getting a Pi1541. My TFCIII is more than enough graphical UI for my general needs.
In 1986, I wrote a windowing system for the IBM PC (4.77 MHz 8088) with a floppy disk drive. In initial design decision was to use TEXT MODE so the amount of data would be reasonable. Windows were overlapping and could be dragged etc. Turned out to be very fast, even on the original hardware! It was easy for a program to use: creating a window gave it a pointer to a virtual screen of that dimension, and it could manipulate the character and attribute ram in that array as if it were the screen memory. The library would copy from those virtual screens to produce the overlapping windows in the real screen.
Due to the limitations of the CGA and general speed, it minimized copying and intelligently picked out just the regions to copy, that showed (not covered by other windows).
This proved to be a good engineering decision even on later hardware, as the CPU got faster the interface to the video RAM was stuck in the past and became dog slow in comparison. Because of this, some programs ported to use my library even in a trivial way (one big window) ran much faster! It could manipulate the virtual video memory array in its casual inefficient way, and upon triggering an update the library would minimally copy that to the real video RAM, copying each changed character only once. Note that it always used 16-bit writes to the video RAM, which (on then-current cards) used a protocol newer than the original 8-bit bus, so not only did it transfer twice as much but it used fewer cycles. So, the program updates _only characters_ , writing 8-bit values to non-concecutive addresses. My update copy copies 16-bit values, even though the adjacent 8 bits (the attribute, or color) was not changed. This alone made it faster than the original program was when it wrote directly to video RAM.
I later updated it to C++ and wrote a fancy multi-windowed text editor that I used for many years. It wasn't until the mid '90's that I was given a machine at work that had a graphics card that was capable enough to make a GUI-based editor smooth (responsive and fast updating) enough. That was a 70MHz Pentium IIRC, but the big difference I believe was the switch to the PCI bus, and "minimum standard" cards that had some built-in line-drawing, box-drawing, and blitting.
But I still have fond memories of doing things in CPU code only, one byte at a time.
Actually seeing a printed manual after many years made me feel very nostalgic. I miss the old big boxes with manuals and sometimes extras like maps and stickers.
and Monkey Island 2's code wheel :)
Hats off to Gregory Nacu on this very impressive accomplishment! Excellent run-through and review in this video.
It's amazing how much of the limitations of early hardware came down to storage rather than the CPU.
@Jimbo Bimbo oh wow. that sounds amazing. wish i still had my old STE
My thought exactly when I read that it requires 9000 free blocks. With a 1541 disk drive giving you 664 free blocks on an empty disk...yep, 14 disks. Back in the days, owning even just two disk drives was "insane luxury", and the maximum number of 1541 drives which could be connected simultaneously was four.
Apart from that, development was much more difficult. Nowadays, you write your software on a PC. Back in the days, that was something only big companies could afford; a "lone coder" would write his code on the machine itself. Expect 100+ disks of assembler source code.
All I can say is wow.... The C64 was my first experience with computers and even being online with quantumlink. It's so awesome to see new software that is so advance for this system.
a clea labour of love - having written my own text-based screen os back in the day (emulator for clipper in dos, back in the day using turbo pascal), you can see the time and effort taken to manage the wimp interface and make it fully functional for the running apps. Really impressive
Right?! I'd love to see any footage you have of your own OS too...
Id love to see that too. I remember thinking Pascal was "the future" when I found it.
It couldn't be too hard to get Free Pascal (i8086-msdos target) working with your code.
a few things... I meant to say that the OS on display here for the c64 was really impressive and had taken care/etc. (didnt mean to imply my own was really impressive), second, unfortunately I lost all my old HDDs in a house fire so nothing to show here.. boo - it would be fascinating to review my own old-school code now (I'm sure i'd be horrified and a large amount of WTF-per-minute)
It loaded the calculator faster than my core i7 windows 10 PC off a samsung SSD.
Can you imagine how things would have turned out if the C64 had this as its OS in the 80s? Such an amazing idea.
Actually the GUI of final cartridge was pretty nifty back in the day, never got it why geos was the defacto standard
we would end up using PCs.....?
We kind of did, and more advanced graphically, it was the GEOS operating system, which is mentioned in the video. My dad had a friend who was a programmer at Apple. One day I showed him the GEOS operating system. He was blown away that the C64 could do something very similar to the Apple machines of the day.
If this was the C64 OS in the 80ties, todays Windows and OSX would be much different and more advanced.
This gives a glimpse on what may happen when AI starts writing software for modern hardware.
This is as groundbreaking as GEOS was back in the day. Seemingly unlimited potential on a 40-year-old platform. I can't wait to see this evolve. There may be some lessons here for modern system programmers in using resources...
Definitely reminds me of GEOS OS wayyy back in the 80's which was a similar attempt to bring Mac like windows to the C64. Its biggest drawback was flipping through multiple floppies and course loading was slow. This is a fresh breath of air to an actual OS attempt. :)
so much b l o a t in modern computing
I've been an occasional reader of Greg Naçu's blog pages talking about his design decisions and other challenges. This is an amazing achievement, right up there with Adam Dunkel's Contiki.
There just isn't enough space on the VIC-II text screen to show very much. And with UI gadgets and other elements like borders and title bars all around, it's compromised even more. GEOS, for all its glacial (pre-global warming) speed, managed to use bitmap graphics to circumvent that limitation. Even just an 80×25 screen would make a world of difference. The simulated 80 columns of Contiki's second release also come to mind.
I know-I _know..._ that using a bitmap screen is a big memory hog. A text screen takes 1000 bytes (not even 1K!) and a bitmap screen takes 8 times as much, and twice _that_ if you're using double-buffering. That isn't even getting into things like color maps and sprite pointers. Greg's managed to get 5 screens in there, switchable, and he's still only 62.5% of the memory footprint of just _one_ bitmap.
So, obviously, he's made some deliberate choices. He's favoring speed and compactness over information density. Plus a bitmap screen has the problem of attribute clash, so a text screen is actually more practical for color. Not that a text screen doesn't have its own color limitations, but at least the color isn't going to be split up in ways that break across the middle of a UI element.
This OS incorporates ideas and functions that we could only have dreamed of back in the eighties. Mind-blowing!
And many of those things hadn't even been thought up yet too back then.
Absolutely magical. How on earth does someone code such a thing with so little resources and leave enough for apps to run on it?
If you have enough ROM, there's lots of cool stuff you can do with very little RAM. This Commodore OS probably reads continuously from the flash drive, with most of the complexity being read-only. When running a program, it could save most of its state to the drive and step out of the way. This is why increasing the I/O speed dramatically boosts the OS's performance.
An example of a system with a nearly identical processor is the NES. It only had 2k of RAM, with another 2k for video memory (and a little extra for sprite positions and palette data). That's insanely small by today's standards. With 2k, you can only store a 4-bit image with 64 by 64 pixels. Its games were awesome though, because the ROMs were huge in comparison. The PPU was continuously reading from them, just fast enough to keep up with the CRT beam. The CPU read most things out of ROM rather than loading them to RAM first. With banking, you could pull in whatever you wanted to the CPU's 64k address space, or the PPU's (picture processing unit) 16k address space.
I just had to check this out, it caught my eye in the sidebar, 40 years ago my buddy had a C64 with no tape drive or floppy drive, we spent a half a day typing in a BASIC program, he or I tripped over the power cord and lost all our work and that was pretty much it for my interest in a C64! Cool and crazy that somebody is writing a new OS for it! I think Terry Davis is in heaven smiling down at this development!
I kept thinking "cool but what is the point, why would anyone use this?" until you showed that it can load games from SD card. Now I can imagine having every good game on 1 card, all launchable from this OS. There's the reason for existence. What an accomplishment! 😮
I remember watching a few of his earlier update videos. Even early on what he was able to accomplish was absolutely mindblowing. I'm really happy to see it has reached the 1.0 milestone!
Yeah I saw some of those too. Its too bad he had to roll back using icons on the desktop in favor of thr Text based object, but I totally get the extreme limitations the system imposes. Its good the icons still exist and he can at least use them in the app screens.
Always cool seeing new stuff released for our old toys, cudos for the developper! J.R. must be gratefull playing with you🙂
Actually OS9 for the Color Computer 3 is a full multi-user, multi-tasking OS that is still being developed and updated today, and the original version goes back to the original coco and that was before the c64 I believe...
It needs to be on a cartridge of its own where you can plug the SD card into the cartridge. It will boot instantly running from RMOM. The cartridge can load data so much faster, and the cartridge can directly DMA into the 64.
Yep! Cartridge would be great but it need not be a new hardware. An EF3 (or any cardridge which can emulate one) plus an SD2IEC would be a great combination.
IDE64 is a "cartridge." And booting from an IDE64 is supported and it's wicked fast.
Interested in running this using clonatos roms and a mister box…
I never owned a c64 .. but it was the computer most of my friends had
What a wonderful thing. I can see this opening up so many possibilities and enjoyment. The C64 never stops growing. 😊
I feel that GEOS from 1988-ish (version 2.0) still offers a more complete, modern experience with its full bitmapped graphics and applications suite (geoWrite, geoPaint, geoPublish, geoFile, etc.) and my personal goal is to get useful output from it, something I can print on a modern printer or send with an email.
It seems that requiring a filesystem with directories has limited the new OS in terms of not running on C64Mini, BMC64, etc. I use a 1541-II connected to a Windows XP PC as the link between the modern world and my C64. By not using 1541 drives, C64OS seems to break that link.
I’m just not sure what I’d do with it, but I do respect that lots of work has gone into it, and the delivery is particularly impressive, as long as you embrace that SD card solution (which I don’t) :)
This is incredible!!! I would buy a brand new C64 packaged with this OS. I’m a novice user but I love the idea of a modern OS on old hardware.
Great review. I have never owned a C64, and probably never will, but it pleases me to see that someone has devoted an incredible amount of time and effort to produce a new OS for it.
It's amazing that after all these years so many old systems are still very much alive.
I ran the original GEOS graphical interface operating system on my C64 years ago. Interesting new operating system
Even the Atari 8-bits got new OSs and incredible upgrades. Stereo Pokey, 1MB Ultimate, Video Board XE, etcetcetc. It would be nice to see more people talk about them.
Appreciate you showing everything in realtime. That is kind of important in reviews of software like this to give potential users a good look at what to expect. Thumbs up!
My first computer was the C64. When it came out. I progressed to Amigas and then Video Toaster scene. I am amazed at the development this magnificent programmer developed. Amazing.
I’m REALLY interested in this being a computer nerd of the 80s, but your voice is just so soothing that I want to fall asleep! 😂
Sweet dreams
40 years on and the bread bin has a new OS and this looks damn good with a good few things to do on it as well, love it. This was a great video as always and a nice surprise being a Tuesday so until the next one you guys take care and have a great week. Oh an puppyfractic the 2nd was so the star of the video ☺️☺️
Glad you liked this! We are truly spoilt (as is Ozzyfractic!) 🙌
Love your video as always. You look a little like Walter from Big Labowski with beard and sunglasses. Not sure if this is intentional. Its great all these items are being made for those old machines. Seeing you open the manual and seeing that SD card was quite a thrill. I could not help but remember the days when I first opened up some of my favorite games on disk including Silent Service, and Crusade in Europe. I feel like I learned a lot from some of the best gases at the time. I recall taking Western Civ. in college and thinking to myself I doubt my professor ever had the opportunity to use a computer simulation to examine say the Battle of the Bulge. Fun fact: Even tho I am about the same age as you, I just started law school, so its back to the books. One day, I will have man cave perhaps inspired by your channel...time permitting. (PS I only had a few cassette games. The best one was Combat Leader by SSI for Atari 800. Prior to affording a disk drive, most games for me were cartridge. They were OK, but capped at 16 K.) All the best to you and Lady F!!!
Thank you!!
40 Golden Years on and we are still Keeping up with the Commodore !
It's a great achievement using some very limited technology.
One thing I'd suggest adding.
C128 support. 80 column support would be a huge improvement, especially since this is all text based. More memory, possible to add ROM support (ala GEOS 128) for fast loading the OS via ROM U36. You could even support... dual monitors!
Seeing this reminds me of what it would be like to replace an Idiot Phone with an original Palm Pilot. Yes, I have one that still works.
Could you imagine mailing this to your self back in time? Oh wow.
It boggles my mind how much some of these talented people are managing to strangle out of this old hardware, it's incredible.
Love the interpretation of some of the features we all are use to, in a simple and yet responsive interface. I used Geos over the 1541 ... to me is more like a gimic thing ... really slow. As magnificent as it is for such a machine like the 64, this os is more down to the Earth, give the 64 good speed in terms of today's usability "standards"
Great stuff, for great once hw, now i never owned, but i always am mesmerized what ppl can do with old hw and new sw for that hw. Here in the videos is the proof of what im talking about. Its just amazing i think. Sure its slow, but if this was real time, i mean, its ok i think, sure its not fast as with linux or windows or mac, but doesnt matter. It can do all sorta things and if updated regularly it could become really great piece of sw in the future. Just blows my mind that after 40yrs still this can happen in retro circles, this great piece of sw. Needs updating, adding functions and retro enthusiast mostly will love this to bits. I just love watching this old stuff. My friend owned C64, played games only, probably my first introduction to gaming, boot from cassette, slow as hell, but yeah, still fun back in those days. So this is like wtf moment for me. Anyway i think it has potential not only as a show piece but a really useful piece of sw.
Not gonna lie. I had initially thought this OS was a novelty but after seeing this video I see how powerful and fully featured this OS is.
My only complaint is that there is no “download only” version.
That was my complaint too. Software out of stock...it's like we're back in the 80's again. 😂
I only ever owned the VIC-20 but seeing what can be done with the C64 today is pretty amazing.
I never had a C64. My machine for the last 40 years has been the Texas Instruments TI-99/4A, but I found this fascinating and entertaining. Brilliant work by the author 👍🏻
We are truly spoilt with modern machines, this doesn't seem all that until you consider what it is actually doing and what it's running on... It's a total marvel that it runs so well and it seems quite intuitive as well.
Fair review too
How beautiful & how clever! I’m sat watching & I’m quite tearful! My first computer was a C64 all those decades ago - I’m sure it’s still in my parents loft somewhere - I must take a look!!
You're very welcome!
Great review of a very interesting product. It's amazing to see what's still being done for our beloved C64 40 years later. Plus, as someone who recently switched to Windows 10 and isn't all that in love with it yet, I'm hoping that one day we may see C64 OS developed for modern PC's.
I'm all for Julia Roberts' knees being added to v2.0 myself.
😆
Thats very impressive. I'm doffing my cap in Gregory's general direction
Well, a very interesting episode. I can see some potential there, and having the file manager for working with the SD card is handy. It does need a bit more work there to make things seamless and smooth, but fascinating to finally see it in action. I don't know if I would use it every day, but I can see me trying it.
Yes I agree and I hope it grows into something full of apps. I can certainly imagine using it for the disk file organisation as you mentioned.
I'm kind of in mix of being very impressed and yet disappointed - I think it has to do with the memory use, and with C-64 Contiki OS (with GUI) which had co-operative multitasking kernel, a network stack (you could access internet or even run a server - in fact it had a telnet client, web browser and web server) and much more. It wasn't fast, but the kernel itself was - I think if you stripped it down (Contiki OS [which the C-64 GUI variant branced off from] is designed for very limited 8-bit systems) and built the UI and API's like this OS has it might've been even better, faster and maybe even have smaller memory footprint.
Still awesome - and maybe I don't know as much as I think I do
Wow, I have a old c64 computer in a box. I am curious about relearning the platform and now with this it moves higher on my list of to do. Thanks, great video.
Totally gobsmacked here. Can't believe doing all that on the C64. Can you imagine how this would have impacted the life of the platform if this had been possible then?
Dude you look quite dapper in episode, I was going to ask but then I remembered your married to Lady Fractic
Well thank you!
I remember using my C64 back in the late 80s. What a fantastic time it was 🙂
Six- to nine-year old me back in the early 90s would've been astonished at this OS if we had it running on our C64! My brother and I were just mostly playing whatever few games would actually work (mostly Dino Eggs, Space Taxi, Choplifter, Miner 49er, Defender) and tinkering with Thinking Cap and Print Shop. Eventually, mom got a used PC from work with MS-DOS 6 and Windows 3.1 and we switched to that. Watching these videos brings me back to a simpler time when I had dreams of making games and used Thinking Cap to outline everything.
The fact it’s already this fast with just the fastloader is just amazing
I was born a Spectrum man and I will go to the colour clash in the sky a Spectrum man but phuk me sideways that is impressive!
Nice to see these kinds of developments, even after 40 years. I won't be using this operating system though, I don't need it.
But this weekend I did order "Vision Basic" for my C64. Also a new development, a completely new Basic with a lot of potential.
imagine travelling back in time 40 years and showing to c64 users.
That looks great. Amazing considering the difference in time from the machine to the software 😘
I don't intend this negatively but those glasses made me immediately think, Walter from The Big Lebowski. Really cool to see the new OS. Thanks!
You are precisely the 42nd person to say that 😎
His next challenge is to do a Vic20 version. Just how much OS can you stuff into 3583 bytes?
3583 bytes. How do I remember that after so many years? Can't remember my mobile number, but can remember the Vic20 had 3583 bytes free.
So excited to see new stuff for the 64 and we were long overdue for a new OS. Great review, Christian!
Very impressive! Thanks for showing and sharing 😄👍
As a bit of a purist geek and a show-off, there is a certain joy in knowing the archaic computer incantations that few others, these days, would know. Most of the time I don't engage in complicated or protracted operations with such simple devices. An updated OS seems like a bit of a cheat. I felt the same when Windows 1.0 and Control Panel interfaces came out. That all being said, I would use this sort of GUI for simplifying disk and file operations if I was in a hurry and had a lot to manage.
This is digital voodoo. I love it! 😊
Perhaps a future version might come bundled on a cart with an SD card slot built in (a la Ultimate). A C128 variant of this that utilises 80 columns would be pretty cool too.
That would be like the CoCo 3 has with the CoCoSDC and Nitro9
This has changed my life! I've had my C64 since 1985 and this is revolutionary. BTW, your transatlantic accent makes the video even more appealing.
Thank you
Awesome to see it in action! Greg has done a fantastic job! 👏
Agreed shtunners!
The C64 just gets stronger and stronger, the support out their is just astounding. And is this the best YT channel out there, you bet it is!!
Great review and interesting as usual Perifractic. I want to add to "somewhat of a first", the Voyager space probe got a software overhaul in 1990 and an update earlier this year. But for us mortals down here it's certainly a welcomed first! Perifractic's next episode: Kitesla gets sent to space after being moded with a C64 running this new software while you control it via an old 1200 baud modem connected to your iphone. Somehow I know you'll make it work! 😉😂
Damn don’t spoil the surprise!!
Very nice review. The 5 desktop feature is very nice for productivity, one for email / correspondence, one for music, one for gaming, etc. Truly impressive OS and probably the only such product we'll see for hardware that is 40 years old. Would have been nice if this OS could use the border area for time / date, notifications maybe?
It's amazing to see what given 40 years of computer experience what the C64 would have been capable of in the 1980's. OK well it would have had to have had a hard drive to really do this.
My first experience with a computer was @ 12 years old and on a C64 and games, programming, BBS systems all felt like magic. At 16 I moved onto x86 systems and networking, LANTASTIC, etc... which was magical again and Ive been in IT for 35+ years now. I watched this last night and to see the development that went into a 40 year old system and all the amazing stuff that the programmer made the C64 do once again just amazed me and I went to bed thinking... Wow, that was magical to see. Thanks for putting together this video and to the programmer(s) who put that kind of work into a system so many people love and enjoy 40 years later.
Incredible! No other words to describe.
I would actually use this os as the main use for my c64 it’s about time for an update had my same machine since 1984
Outstanding! Very, very interesting subject. As well as one of your most enjoyable episode ever. Thank you very much! Keep up the great work and engaging content! Wishing you and the whole crew, the best of everything!
Thank you for your kind words! Means a lot 👍🕹️
@@RetroRecipes Your content just keeps getting better. Many thanks from a grateful fan.
25:15 Prawn?? Were you feeling hungry or something? O.o
This is great, kudos to these developers!!!
I love to see this - so many great memories! I'm glad that there is still a considerable following for the computers that shaped our early experiences.
GEOS was so slow, this is very snappy. Some ram expansion, this may just be the normal use. Love it.
GEOS was slow mostly because it was severely RAM-limited and had to page stuff in from slow floppy. If there was a GEOS that ran code solely from the PEM RAM, it’d have been pretty snappy. Any external storage system on C64 that did not use the cartridge port was destined to be slow and cycle-hungry. That’s due to very limited I/O capability of the naked 6502 with not much help from the chipset.
When I got my _Final Cartridge III_ around 1988, I was looking forward to doing everything via mouse in the GUI like the big boys on their 16 bit machines. It only took me a few weeks to default back to the BASIC 2.0 interface (with added quick key support for all essential commands) because it was simply *_faster_* to use and overall, more convenient for me.
Genuinely super impressive bit of software, very cool!
The tie fighter looks like. Moving back and forth through the months of a calendar.
You’re right!
When they get Wi-Fi, it will need an App Store, and a PETSCII Robots background. Maybe a telnet client... would be good if it could get internet time as well (no need for a RTC).
Now you're speaking my language. Your imagination is being opened to various nice possibilities. These are some of the reasons I started making C64 OS for in the first place.
I think the 1541 Ultimate II+ has one *severely* undermarketed feature: the Hyperspeed kernal. It should be both much faster than JiffyDOS and capable of storing large file sets like C64OS.
Way cool, especially the graphic/text split screen. Neat to see what kind capabilities that modern software development tools and techniques can extract out of the old hardware. A port to the 512KB CoCo3 would be neat. MinuetOS was written all in assembly for the '386 (GUI, multitask), had built in examples of assembly code that could be assembled and ran within the OS. A cool app for c64OS would be a terminal emulator, that could virtualize 80-col mode (e.g. support scrolling left/right to see your 80-col connection even if you're in 40-col mode).
Love it.
I wonder if they'll do an updated C128 version. I'd like to see how the extra C128 features could be used!
Exactly. Would be interested to see something like this using the VDC chip and FAST mode.
Same with the extra internal RAM, a maxed out REU, and Wifi to access something like Frog Find.
at the very least, an 80 column mode for that 1024x768 feel.. (yes I know thats not the resolution. But do you remember how excited you were the first time you experienced a massive leap in resolution?)
@@epremeaux Since graphics mode is blanked in 2Mhz mode I was learning Assembly so I could access the text memory and bank switching to make custom text graphics since there was no command to do this natively. I just about had it figured out when my buddy convinced me to learn to play guitar/bass and start a rock band instead. I found my old notes I had. I needed a real assembler instead of just the built in monitor that I was using.
C64 OS is incredible work.
Great review.
Was wondering how you write apps. for the OS that can run in the desktop. You at least showed how you run a conventional app. from the desktop. That is nice. I used to wonder about that with GEOS. Seeing how 64OS operates reminds me of how the IIGS was set up. I remember it had an optional GUI you could boot up. It seemed like you could run full-screen apps. out of it. I don't know, since I only saw a friend use it. He used a command-line interface on it a lot.
If I could make this work to play SIDs as an alarm clock, I would totally run the C64 or 128 24/7. Being able to use mass storage with a C64 so seamlessly is a killer feature. It would be genius if it could run as a cartridge ROM with an inbuilt REU - could make it very zappy.
I think this is incredible and for some functions, yeah, I could use this as a daily driver system. If I can add network capability and being able to read and write to remote text files, simple email and I know already that I can do IRC for real time chat, I would love to do that. Thinking about it... if I could get telnet working reasonably well, I could log into my server and access various chat services in terminal.
I would like to use this and see how far I can take it. :)
Yep he envisions email etc for it so you could do just that!
@@RetroRecipes I like the idea of keeping old tech relevant. Email would be fantastic. I wonder if an implementation of a shared clipboard would be possible? Obviously, only text could be shared but I think it could be possible.
@@drphilxr You could ALMOST do it with an Ultimate 64, Pixelwizard case and the Mechboard 64 but there are still no keycaps... if I could only get myself an injection mold machine...
Great to see that someone is keeping our Commodore 64 alive. I’d like to see it do some productivity like WiFi printing, and recipe storage, CD and music storage. Could a coprocessor be used to fetch the data for display images on a modern monitor, using the C-64 just as the file server asking for display software to do all the work. I’d also like the C-64 to load any of the Commodore 64 games that can be bundled on a SD card.
but commodore made a cd-rom player that didnt sell well with games based on c64 and as I understand it were capable of playing mp1 files music or video cd -files (.dat-files in windows ) - I assume the 384kbps mp1 would equal in quality to DDC Philips digital tape for ordinary compact cassette - I assume they are the same both bombed , DCC to minidisk and Cd and to 8-bit Nintendo and Sega - to little late and expensive
It's very cool.
The ultimate would be a Rasberry Pi inside a working c64 case (with a c64'ish graphical interface) that could send commands to the c64
So you could load a program from the Pi as if it was a Linux desktop program but instead it would reset the VIC, load the program and switch video signal to the c64 instead.
Something like that atleast.
The ultimate 2in1 solution.
I like where you are going with that idea. Kind of like how a C128 has a Z80. I had a similar idea of pairing up a Mister FPGA with a Raspberry Pi. Is this C64 Singularity?
@@puzzud Yeah a modern frankenstein take on the "Amstrad Mega PC" go wild with that concept and see how far you can take it.
There should be some very interesting technical challenges to it aswell.
Look up the Orange Cartridge and RVCop64. And maybe super-reu. Or SideKick64. I’m sure you could cobble together a 320x200 VNC client that runs on a cartridge with networking and uses the C64 keyboard, mouse, and display.
Now that I finally got mine, I think I understand the issue with its incompatibility issues with the various storage solutions. For those not aware, it's not that they "don't" work with the OS per se, it's that the OS is intended for mass storage, and those storage solutions are intended to function as true single disk solutions either as real drives or emulations or other simulacra of them such as the 1541IIU+ which does plug into the IEC bus, but doesn't emulate mass storage exactly, but the latest firmware 3.10a did add a ramdrive mode which may not have been available at the time of development but that and the ability to craft new carts may be able to add the IEC connective tissue to make the two things work, not sure if it's possible, but in software anything should be. ^_^ But it may not if it only wants to be a floppy drive, but the CMD FD works right, so there may be hope right?
But I ain't one to gossip... .
This is incredible! I've been loosely following the C64 OS development for a while and I didn't think it would be as fully featured as it is shown to be here.
I'll be buying this and hopefully we see more app development for it to increase productivity.
in the 80s a friend of mine had a modified C64 with speeddos and exos. crazy machine. copied a disk in 17 seconds. don't know how much those mods costs in the mid 80s
I think an REU and an accelerator would really change the disposition of this OS. :D
WOW !!! I feel like I am a happy 5 years old again of 1980's with a Pacman on DOS PC
ProDOS 8 2.4.x runs on the Apple II, integer version, from 1976. Not saying that to try and one-up this project since ProDOS is basically a set of disk access routines and a few text-based utility programs. This is a full desktop environment ala GEOS, which is kind of impressive. (Also, I don't actually know what one can realistically do with a 64k Apple II in ProDOS without even Applesoft BASIC. )Although ProDOS 8 2.5 will probably promise better answers to that question…)
Rather, I bring it up because of the real point here, that people love these old computers so much that they're upgrading and improving them and writing whole new OSes for them to this very day. And that's just cool.
I remember getting the Byte magazine I believe, and in it there was code to program your own games, and then after days of typing in 1's and 0's, you hoped to God that your tape saved the games correctly. Fun times.
Really nice product. Would be interesting to know how to program apps for this. Does it have any OS routines you can use from your own apps, is there some memory management/protection etc?
Memory management, he wants. Lazy developers, use the damn hardware ya got! But seriously, this OS is fantastic and I get why to want to hack on it. I can’t find a GitHub for it.
Wait, the blog is full of low level stuff! Yippie!
I'll be working on the C64 OS Programmer's Guide in the coming months. All of the KERNAL calls, the libraries, the Toolkit classes, drivers, etc, are designed to make it easy to write new Apps. And, if you do write an App, the idea is to split the development into libraries, and Toolkit classes that not only help your app, but can be used in other Apps too. There is a paged memory allocator, and malloc/realloc/free, but no memory protection. That requires hardware that the C64 does not have.
@@c64os Ok, very nice. Thanks!
Edit: wrote this before noticing that the developer had also replied to this :D
Well, there has to be memory management for this kind of OS to work - and I hope it has some kind of system for loading libraries and applications into memory locations unknown beforehand, otherwise it will be severely limited in it's ability to have more than one application running the same time. Only programs and libraries that don't overlap with their hardcoded memory locations could be loaded at the same time if it doesn't have dynamic address relocation of some kind.
As for memory protection, the C-64 wasn't designed with multitasking in mind and has no hardware support for memory protection - it can't be implemented in software, any application will have same access to any memory address that the kernel has. The only kind of "memory protection" on such system is trusting the application developers to not try to do anything malicious and to be capable of eliminating any bugs that may cause memory overflows - just like original x86 (it wasn't until the 286 it got any sort of protected mode - and most 16-bit OS's and desktop suites (like Windows, Geos, Gem, etc.) didn't utilize it. Linus Torvalds called it's design braindead. It wasn't until 386 that *most* x86 OS's started to be written to utilize it's 32-bit protected mode - though OS/2 was one of the exceptions and used protected mode when it was still only a 16-bit OS. But I digress badly.
So no memory protection on hardware supported memory management - the former cannot and the latter must be implemented purely in software.
Hope my rambling has some value as answer :D
@@robsku1 There was no question, really, but I liked your answer. The memories of GEM, DesqView, EMS, XMS, ahhhh! Then, with the 386, we got to map to “special” RAM between 640k and 1024K. HIMEM, they called it. Somebody was high, I’ll give them that!