What makes the OS for QL any better, different, unique ?

A place to discuss general QL issues.
tcat
Super Gold Card
Posts: 617
Joined: Fri Jan 18, 2013 5:27 pm
Location: Prague, Czech Republic

Re: What makes the OS for QL any better, different, unique ?

Postby tcat » Mon Jul 27, 2020 9:03 am

Finder/Multifinder wouldn't let you (may have something to do with wanting to protect the resource fork...dunno why else they made that decision)


The resource fork contained executable `CODE' blocks 16/32K each, plus a jump table blocks, acting as page file, no virtual memory needed!

That's what I liked about Macs, no 640K limit, also the whole app was just a single file, even defaults, settings, icons, ... all compiled into one file. Installation simple, just drag over.

Compare to modern OS, apps and their various files scattered across different places on the entire file system, including registry => security?

Each app defining its heap and stack, heap zones, and system heap. There was an interrupt 1/60 secs, checking stack did not grow into heap, if my memory does not fail me.

Data fork was mainly used for code texts and editors, I should think.
EDIT and productivity tools and of course compilers, etc.

Early mobile iOS was chosen cooperative on purpose [the marketing] and effectively beats Symbian OS preemptive, on marketing front => end user easier to use, programmer easier to program.

had to stick GetNextEvent calls everywhere (and capture all those events and handle them)


Plus, in time extensive computing loops (usually graphics render), a programmer was expected to call `SystemEvent()', or something like that, to give some cycles back to the system.

resource.png
ResEdit resource fork
Last edited by tcat on Mon Jul 27, 2020 12:28 pm, edited 2 times in total.


User avatar
pjw
Super Gold Card
Posts: 686
Joined: Fri Jul 11, 2014 8:44 am
Location: Norway
Contact:

Re: What makes the OS for QL any better, different, unique ?

Postby pjw » Mon Jul 27, 2020 10:19 am

@bwinkel67
UAE used to be a good (the best?) Amiga emulator back in the day. I also bought the Cloanto package with legal Kickstart ROMs since I never owned a real Amiga. I gave up on it - and Amiga - when I upgraded to Win2K as it no longer worked. It did have a wee fiddle again later with upgraded versions of various Amiga emulators (I think there was a WinUAE) but with varying success and decreasing time for that particular interest. In its heyday, UAE could even run ShapeShifter, a Mac emulator for Amiga. That was fun! But its all so long ago now, I cant be of any help. Im sure a bit of research on the interweb will set you right.


Per
Be wary of large West-Coast corporations bearing gifts!
- Ancient Trojan proverb
tcat
Super Gold Card
Posts: 617
Joined: Fri Jan 18, 2013 5:27 pm
Location: Prague, Czech Republic

Re: What makes the OS for QL any better, different, unique ?

Postby tcat » Mon Jul 27, 2020 12:39 pm

Not sure it was mentioned here, on cooperative systems, you cannot write loops

Code: Select all

while (true) ;


This locks entire system, on preemptive you can, however is sometimes difficult to find badly formed loop end conditions.

On Apple Mac, you pressed Apple [shredder] Key plus dot [,], to escape from locked app. Similar but not exactly the same as `Ctrl-C' on *ux machines.

.. and on `QDOS', `Ctrl-C' just cycles to the next job, which is a good thing.


User avatar
bwinkel67
Gold Card
Posts: 468
Joined: Thu Oct 03, 2019 2:09 am

Re: What makes the OS for QL any better, different, unique ?

Postby bwinkel67 » Mon Jul 27, 2020 5:29 pm

tcat wrote:That's what I liked about Macs, no 640K limit, also the whole app was just a single file, even defaults, settings, icons, ... all compiled into one file. Installation simple, just drag over.


Well, "a single file" is how the Finder presented it but it was two parts of a file and you could copy each separately and had to copy both to get the entirety (if you didn't use the Finder but instead used file manager commands). In my Mac shell program (of which the ZXSimulator starting point was the original prototype) I had a -d and -r flag for my copy command so a user could copy the resource fork of one file into the data fork of another file, if they so chose...that was a weird combo that I didn't disallow though I don't remember if I actually ever tried it to see what happened. Also, the file contained app specific information though general stuff was contained in the OS (like any OS) and you didn't dare try and change that like one does in Windows by adding libraries of your own so you were a bit limited with the Mac and its world. There are Windows apps that are also single files or are installed as single directory apps. Personally I like Unix better where you it divides things into bin/ and lib/ directories and you can add shared libraries appropriately (though I suppose that has gotten out of hand with so many lib/ and bin/ paths).

In fact doesn't the Modern Max OS X try to keep this idea of "copying a single file" when installing an app? Though I use one for school, to be honest, I haven't dug too deep into it. I have installed an app or two and I recall it being a single drag of an object but if you explored it then you realized it was a collection of files on the Unix side. Not sure if I like this "hiding" of information into its own internal db as I'd rather just have a the file structure exposed.


User avatar
bwinkel67
Gold Card
Posts: 468
Joined: Thu Oct 03, 2019 2:09 am

Re: What makes the OS for QL any better, different, unique ?

Postby bwinkel67 » Mon Jul 27, 2020 5:44 pm

pjw wrote:@bwinkel67
UAE used to be a good (the best?) Amiga emulator back in the day. I also bought the Cloanto package with legal Kickstart ROMs since I never owned a real Amiga. I gave up on it - and Amiga - when I upgraded to Win2K as it no longer worked. It did have a wee fiddle again later with upgraded versions of various Amiga emulators (I think there was a WinUAE) but with varying success and decreasing time for that particular interest. In its heyday, UAE could even run ShapeShifter, a Mac emulator for Amiga. That was fun! But its all so long ago now, I cant be of any help. Im sure a bit of research on the interweb will set you right.


Yup, been playing with WinUAE. Trying to get the Amiga 1000 ROM to boot and then KickStart 1.1 to boot. Unfortunately I'm not a past Amiga user so WinUAE is a bit of a complex interface as it asks for ROM images but also disk images (and a ton of other things). The 1000 would boot off of disks so I would guess you'd have some minimum 1000 ROM BIOS and then load two disk images but he emulator is designed to work with all variations and I think some later models might have loaded this from actual ROM. But I think I'm close to having an original 1000 booted.

I'd also like to find a simple C compiler so I can explore some simple code examples...any suggestions for the 1000? BTW, I'm trying to explore how the original Amiga 1000 did things with KickStart 1.1 so I'm avoiding 500/1200/2000/4000 models and the more modern AmigaOS so this may be a bit more challenging since the Amiga had a chance to mature over its lifetime and I don't have a point of reference having gone through that maturing process in the day (I think I used my roomies in college to play games and that was it).


User avatar
bwinkel67
Gold Card
Posts: 468
Joined: Thu Oct 03, 2019 2:09 am

Re: What makes the OS for QL any better, different, unique ?

Postby bwinkel67 » Mon Jul 27, 2020 6:10 pm

tcat wrote:Not sure it was mentioned here, on cooperative systems, you cannot write loops

Code: Select all

while (true) ;


This locks entire system, on preemptive you can, however is sometimes difficult to find badly formed loop end conditions.

On Apple Mac, you pressed Apple [shredder] Key plus dot [,], to escape from locked app. Similar but not exactly the same as `Ctrl-C' on *ux machines.

.. and on `QDOS', `Ctrl-C' just cycles to the next job, which is a good thing.



I don't believe Apple-dot works on the infinite while loop above. I just tried it on both the Basalisk and Mini vMac emulators and it would not relinquish control. I believe some "good" behavior would have still needed to occur by the application for this to be killed without a reboot.


tcat
Super Gold Card
Posts: 617
Joined: Fri Jan 18, 2013 5:27 pm
Location: Prague, Czech Republic

Re: What makes the OS for QL any better, different, unique ?

Postby tcat » Mon Jul 27, 2020 6:45 pm

Hi Ben,

Yes, you are right, it works as long as you still pass the event loop.
It was an unfortunate example, need to correct my statement, I tried to compare sort of break functionality across systems ~ `Ctrl-C'.

EDIT and probably the app has to be programmed that way, please see the programmer's reference [Inside Mac]

Not having Mac nor reference...

Code: Select all

 event := GetNextEvent()
 case event of
   keypress: if key = '.' & modifier = applekey then exit() end if
 end case


Tomas


tcat
Super Gold Card
Posts: 617
Joined: Fri Jan 18, 2013 5:27 pm
Location: Prague, Czech Republic

Re: What makes the OS for QL any better, different, unique ?

Postby tcat » Tue Jul 28, 2020 4:47 pm

Well, "a single file" is how the Finder presented it but it was two parts


True, but still two files, compared to various settings, tweakings, paths, directories, prefixes, suffixes, registrars, uuids, security files, etc, etc.

I know, is an imprint of evolutionary development, old legacy systems had only a few directories, paths not that long, configs not that complicated. True, could accomplish only simple tasks.

Sometimes I wonder, with the inner complexity of modern systems, that tends to grow with each release, is still possible to manage them, and educate technical staff to do so.

I am glad, I've finally had some understanding of 80's - 90's technology, I did not have when I was young.

EDIT [off-topic] there used to be a trend of lean systems, thin clients... I recall
E. W. Dijkstra: [not exact verbatim just idea]: simple system design ends when there is nothing more to eliminate, compared to complex design that ends when there is nothing more to add


User avatar
bwinkel67
Gold Card
Posts: 468
Joined: Thu Oct 03, 2019 2:09 am

Re: What makes the OS for QL any better, different, unique ?

Postby bwinkel67 » Tue Jul 28, 2020 7:18 pm

I do agree with the simplicity and it also makes teaching this stuff easier. Still, I find Linux/Unix to fit that mold much better than Windows (with its overly complex registry), Mac OSX (with it's bastardization of Unix with it's add-ons to BSD), and iOS (ditto).

I'm glad I got to learn this stuff in the 80's and when I teach I use that point of view for my students to get past the complexity.


tcat
Super Gold Card
Posts: 617
Joined: Fri Jan 18, 2013 5:27 pm
Location: Prague, Czech Republic

Re: What makes the OS for QL any better, different, unique ?

Postby tcat » Tue Jul 28, 2020 7:32 pm

From this perspective, QL was much compromised design, can be viewed as simple, higher level of integration led to just a few IC chips used. H/W and system extensible, compact and nice industrial look. Yes, PCs had better keyboard, but mind the price.

Interesting about QL paths, encoded in the file name itself, only later level1,2 directories.

[off-topic] exploring also Oberon system and language, what is not simple is not usually coded



Who is online

Users browsing this forum: No registered users and 2 guests