English Amiga Board

English Amiga Board (https://eab.abime.net/index.php)
-   Coders. General (https://eab.abime.net/forumdisplay.php?f=37)
-   -   Amiga 500 HD and SAS/C timeline (https://eab.abime.net/showthread.php?t=117126)

kerravon 11 March 2024 08:52

Amiga 500 HD and SAS/C timeline
 
Hi.

I bought an Amiga 500 HD (hard disk) in 1988 I think it was. Probably early 1988.

ANSI C89 was available as a draft already around then (it needs to be frozen for a year before it is published I believe).

I can't remember what the capacity of the hard disk was.

SAS/C was available in that timeframe. I can't remember the version or cost or capability.

Regardless, these things were affordable (compared to the cost of a car - I was working but I didn't have a car).

Knowing what I now know, and with what I now have (PDOS/386 at http://pdos.org) - an OS and tools written in C90 that is capable of running C90-compliant (plus ANSI X3.64) executables for OS/2 2.0, Win32 and Linux programs, I could have compiled all the source code using SAS/C on the Amiga 500 (AmigaOS had virtual memory I believe, so that shouldn't have been a problem).

PDOS/386 fits on a 360k floppy, so the 720k IBM PC floppies that the Amiga supported (as well as 880k) could have been written to, and I could have then had a 32-bit 80386 operating system in 1988, beating Linux (1991), OS/2 2.0 (1992) and Windows NT (1993) - but capable of running certain/sufficient executables for all 3. Plus a 32-bit version of MSDOS. Plus what I really want, which is PDOS-generic (invented in another thread in this forum).

Or not necessarily me - anyone with the required skills could have done it using consumer hardware. The code itself could have been written earlier, on an IBM XT compatible, in preparation for the Amiga becoming available with the required compiler.

OS/2 1.0 came out in 1987 for reference.

Does anyone know what version of SAS/C was available then and how close it was to C90 and what sort of hard disk was available then?

Thanks. Paul.

Samurai_Crow 11 March 2024 15:11

First of all, getting virtual memory required a 3rd party add-on and an MMU. There was no MMU on a 68000 and it wasn't standard on 68020 (even the full version).

What was available on a stock 68000 was overlay hunks. (Virtual memory done manually like GEOS on the Commodore 8 bits.) The SAS/C compiler could generate overlays but didn't use them itself.

kerravon 11 March 2024 16:52

Quote:

Originally Posted by Samurai_Crow (Post 1673527)
First of all, getting virtual memory required a 3rd party add-on and an MMU. There was no MMU on a 68000 and it wasn't standard on 68020 (even the full version).

What was available on a stock 68000 was overlay hunks. (Virtual memory done manually like GEOS on the Commodore 8 bits.) The SAS/C compiler could generate overlays but didn't use them itself.

Ok, thanks. In that case I must have been remembering that it allowed 32-bit programming and multitasking.

In that case, it would have depended on how much memory I was willing to buy.

If I got in in early 1988 before some sort of massive price rise, I could have got $163/MB.

https://jcmit.net/memoryprice.htm

That's about $440 today:

https://www.inflationtool.com/us-dol...equency=yearly

I'm not sure how much memory GCC 3.2.3 requires if I switch off optimization. The executable itself is 3 MB.

The limit of the Amiga 500 was 9 MB at the time it seems:

https://en.wikipedia.org/wiki/Amiga_500

So around US$4000? Still within the price of a car.

My experience with getting GCC to rebuild itself with full optimization on the mainframe is that it needs about 20 MB, but on 80386 it was something like 37 MB I think.

However, I can defer doing an optimized build until I get onto the 80386. Although I'm not sure that I can go above 16 MiB like the first one:

https://en.wikipedia.org/wiki/Compaq_Deskpro_386

But I really only need to optimize the OS, not the compiler, so I would need to check the memory requirements of that. I'll see if I can do that.

Otherwise I might need to wait for SubC to come up to (C90 or close) speed and live without optimization. The executable is only about 100k currently.

Samurai_Crow 11 March 2024 17:04

The i386SX and 68000 both had 24-bit addressing and 16 bit data. The 68020 and i386DX had 32 bits both addressing and data but was expensive back then.

kerravon 11 March 2024 17:15

Quote:

Originally Posted by Samurai_Crow (Post 1673540)
The i386SX and 68000 both had 24-bit addressing and 16 bit data. The 68020 and i386DX had 32 bits both addressing and data but was expensive back then.

Yes, but I had access to an Amiga 500 with OS and compiler, but not an 80386 with an OS (other than MSDOS) and compiler on it. Not sure when DOS extenders and compilers capable of generating 32-bit code became available, but I guess that would be an alternate route to the same thing.

Doing the work on the Amiga would have increased the clean room nature of it though. Microsoft's lawyers couldn't argue that there was an implied restriction that I can't use MSDOS to create a rival x86 OS.

SAS's lawyers (and Commodore's lawyers) could argue that I can't use their systems either.

And it's not just theoretical lawyers. Individuals may have an opinion that it is unfair to use Microsoft's own products to compete against them, but not see the use of the Amiga as a competitor.

It's an alternate route I could have taken. An interesting technical constraint, anyway - no virtual memory.


All times are GMT +2. The time now is 05:39.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.

Page generated in 0.04062 seconds with 11 queries