I remember when I was 6 and my dad brought home an Osbourne for me to play with. Just using CPM felt like dungeon diving to this weird world where you might find a loot in the form of a game or something.
I completely agree with this comment. I could have spent all day on my C64 without even having a game to play or knowing how to code beyond PRINT and GOTO. Hacking around on a computer back in the 80s made me feel like I was part of a secret club and that, at any moment, I was going to live out War Games or some such (especially once we had a modem). The possibilities seemed limitless!
One thing that modern computing has never been able to replicate is instant on. Literally press power button - thing is running. Nothing like having part of your memory address space mapped directly to ROM. No updates and no second chances!
I'd love to reinvent computing from scratch and fix this. There's no good reason it should take so (comparatively) long for modern PC's to boot. It's a symptom of all the complexity grafted on over the decades.
I think there are fundamental technological reasons as well. For example, even if you were willing to never update the OS, could you purchase a 1GB ROM chip for example? If using EEPROM, would the performance match RAM? Most people would not want to trade run time performance for improved boot time.
The thing is, there are far more trade-offs today than there were in the days of the C64. It is a worthwhile goal however, ideally computers should turn on instantly.
When I got my first PC (a Linux Eee PC netbook), I remember opening an xterm and typing each letter of the alphabet, one at a time and hitting TAB-TAB to see all the commands that start with that letter. Not an efficient way to learn how to use bash, but it was exciting.
The biggest hurdle for me was figuring out "how do I open a file?" I could cd around and ls, but what if I wanted to open a .doc in openoffice? There was no "double-click" for the command line.
I eventually found out about xdg-open, but I'm glad that I didn't know about it from the start. I learned to open things the more "normal" way (eg `soffice document.doc`).
Sidenote, I really loved and miss my Asus Eee PC, and that netbook era of laptops. That and my og Motorola droid with the slide keyboard was all i needed (along with my big chucky remote server).
It still feels like this sometimes. Finding poorly documented system calls, changing screen properties in ways beyond BASIC, getting into how CP/M works internally... (more comprehensible than today's 1000x larger systems)... Or even doing Advent of Code in BASIC is cool!
i wouldn't say in our heads like we made it up, but it's just an experience that you cannot replicate if you've already experienced modern computing. growing up and experiencing the changes from analog to digital, dial-up to always on gigabit, 8bit to 64bit address space, 8bit color to 32bit, 8bit audio to 24bit, is all different because we have that frame of reference so it means more to us.
also, i didn't read manuals back then. i didn't know where they were. closest to a manual i had were Byte magazines
As a young teen, I joined a local Commodore users group and at the meetings you could buy the latest monthly floppy disk for a small fee, and you never knew what you would find on it.
I once did something based on the same principle, for a (very-very light) security solution, atop a simple closed-source media appliance that could play from USB Storage.
I made a script on Linux to create a huge directory tree representing every possible sequence of a password of length N. Only one password path through the tree got the viewer to the directory that had the non-kid-safe media files.
The non-security caveat of this was that the appliance seemed to scan the entire filesystem upon mount, which took a long time. (Even though it provided no UI, other than clicking to open directories and media files within them. Maybe the reason for the scan was to report to the mothership what content each user had, though, in this case, I had networking permanently disabled.) At least the huge tree didn't overflow any limit that prevented the appliance from working after an initial delay.
I felt like I wrote this comment because I did exactly the same once long time ago. Made directories like 0/1/2/3/4/5/6/7/8/9 starting from 0 all the way to 9 billion. I was doing it on a Windows XP machine. I don't exactly remember if I completed the process or stopped it midway but in the end I had this structure which windows could never search through in any reasonable time. Only I would know where my files are. After that I tried zipping all that structure and remember taking it like 65MB or something and took many hours. Deleting this whole thing was also very painful. It also grew the size of MFT file significantly.
Never tried this again. And I don't remember availability of USB drives back then.
The "very-very light" part is that it was easily defeated if you removed the USB Storage from the dumb appliance, and plugged it into almost anything else.
If you had only the dumb appliance UI, however, finding the files would be a bigger chore than even energetic kids could accomplish in mere hours, and only if they knew it was there (the "password UI" was also hidden a little).
Interesting. You’d need about a billion files to store all possible 6 character file names assuming you limited yourself to latin alphanumeric characters. How big are these USB drives?
> In the end, the current version of the game create 41,514 directories, 15,2041 files (mostly empty files with messages in their names), and 45,399 links, which makes it rather unplayable for those unfortunate enough to try running it on a mechanical hard drive.
Ramdisks are extremely slept on, there is a lot of stuff you can kludge with a ramdisk in a pinch. I had to do some video stream processing the other day and I didn't have time. So I just made a ramdisk and read/wrote jpegs at 30fps, yeah it's stupid as hell, but it worked when I needed it to and that's what matters.
I have various folders mapped to RAM, like e.g. /var/tmp.
This has many uses, as you said. E.g. sometimes even just downloading a video stream to disc creates a temporary file in the destination folder for every fragment. I just d/l those into /var/tmp first and then mv the finished video to where it's supposed to live. I'm sure both my SSD and HDD are grateful! =)
Hey, it's not stupid if it works! In the context of this particular game, I can't see why it would be a bad idea. Even if you need to conserve some kind of state... gzip the whole thing and copy it elsewhere, it's going to take seconds!
Many years ago I wrote a tamagochi like virtual pet called "Virus" which lived as "name.virus" file in a folder and you could feed it text files with a ".food" extension. Based on its DNA (random strings inside the".virus"file) it liked certain words more or less and had to eat quite a few files when it was Hungry
It also left ".poop" files in the folder you had to clean up in order for it to stay healthy. Also added mating and offsprings which would fork the process so each would "live" their own life
System 7 used to have a 99 level limit on nested folders. as bored teens, we'd do stupid things like nest folders to that 99 deep limit. in the bottom folder, create an apple script file that would force the user to okay/cancel a silly comment. "Click Okay/Accept If you agree dylan604 is the greatest" kind of stupid. Clicking cancel would do nothing, so that you had to click okay to continue. We'd then make this as a startup item. We'd then use an app to make the apple script file hidden, then go up a folder to make the folder hidden, go up a level and make the folder hidden, x99 kind of thing. i can't remember if there was something about the folders being hidden that prevented just nuking the stack from the upper level, or if it really was that simple to clear.
I think you might not have been able to drag such a stack into the Trash, as the Trash was actually a folder and that would have been 100 levels deep (temporarily, before emptying the Trash).
There was also Inner Space (1992) [0] - possibly a similar idea, where levels are directories on your computer, and the goal to collect the "icons" (normally executables IIRC) inside.
Creating these folder crawling games was great, until you get to the end, and the folder paths become too large and files and folders start disappearing.. and you learn about windows folder limits. Ah, fun times..
Ah… I think I vaguely remember a similar older program that would (optionally, of course!) as a funny option delete the files when you “defeated” them.
Or Operation: Inner Space. It used the file system to generate sectors to visit to clear viruses from your EXEs, and collecting non-contaminated EXEs to use as currency.
It works great with Windows' backwards compatibility, but modern filesystems have so many thousands of directories the game is now impossible to complete.
Maybe it was easier? Iirc at least in some recent ish Windows versions, by default you needed admin privileges to run mklink. Given that a shortcut is just a regular file, that solves a lot of problems.
That depends on your version of windows (newer versions are more relaxed on it). Also file links are 'weird' in windows.
You have 3 types junction points, file links and directory links. Each one acting in its very weird odd way. Junction points are for local only directories. Files for files and directories can be either local dirs or remote SMB points. Junctions vs dir can be an interesting trade off on what you want it to do. With junciton being faster for many operations but local only. Also if the file is less than ~500 bytes there is no real gain as you will probably just consume MFT anyway either way.
The problem is the max path size. There was a similar problem on Linux, where you have a max number of symlinks you can follow before the system gives up. Macos works because finder resolves symlinks and opens the target directly.
Interesting idea. Horrible copy. I didn't get much past the first room, where my "eyes perked up" at seeing something shiny. A text adventure, among other things, has to be written well.