[HN Gopher] Commodore 900: Unix-like workstation/server that was...
___________________________________________________________________
Commodore 900: Unix-like workstation/server that was eclipsed by
Amiga (2020)
Author : indigodaddy
Score : 110 points
Date : 2022-01-07 11:42 UTC (11 hours ago)
(HTM) web link (vintagecomputer.ca)
(TXT) w3m dump (vintagecomputer.ca)
| jamesdco wrote:
| This is quite an interesting read for the retro game enthusiasts:
| https://pikuma.com/blog/game-console-history-for-programmers
| retrocoder wrote:
| Great read!
| clan wrote:
| We have got one of those as well for those interested in more
| details.
|
| https://datamuseum.dk/wiki/Commodore/CBM900
|
| The boot-roms of the CBM900 has been reverse-engineered in the
| PyReveng3 project:
| https://github.com/bsdphk/PyReveng3/tree/master/examples/CBM...
| reaperducer wrote:
| Unrelated to the post, but since this thread is likely to attract
| a bunch of Commodore enthusiasts, I'll mention here that a
| Commodore 64-DX/C-65 popped up on fleaBay a few days ago.
|
| Unfortunately, it's in kinda rough shape, and the starting bid is
| $15,000. I don't think he'll get any bidders at that price.
| rsync wrote:
| Huh.
|
| I have a very nice 64-DX/C-65 on a shelf in the lab.
|
| I also have a factory sealed, brand-new-in-box, Sun
| Sparcstation 20 :)
| nix23 wrote:
| If one is interested you can try Confluence as a VM...and btw
| it's opensource now:
|
| https://www.autometer.de/unix4fun/coherent/#vbox
|
| https://www.autometer.de/unix4fun/coherent/ftp/vms/
|
| http://www.nesssoftware.com/home/mwc/manpage.php?contents
|
| http://www.nesssoftware.com/home/mwc/manual.php
| EvanAnderson wrote:
| HN discusson re: the Coherent OS:
| https://news.ycombinator.com/item?id=21200902
| bullen wrote:
| I bought an Amiga 1200 yesterday for 300EUR.
|
| I had a new transparent case for it since a while back, time to
| fill that case!
|
| I also hoarded breadbins for a while with RR-Net and Nunchuk64 +
| NES classic controllers, so I definitely have the Commodore
| disease!
|
| The first open successful computer; the last being the Raspberry
| 4, for eternity probably... Q.E.D.
| jacques-noris wrote:
| >The first open successful computer
|
| I love the C64, but the first was probably the Apple II
| bullen wrote:
| The Apple 2 was a prototype for the C64.
|
| You have to look at the video and audio: the SID is still to
| our day one of the best analog 8-bit generation synth chips,
| the VIC-II pushed 8-bit graphics to their logical extreme.
|
| NES and SMS both had separate video chips that where not
| programmable from the CPU or shared the RAM in the same
| manner. Also the C64 had software that you could copy!
|
| Finally the C64 has more releases today than the PC, the
| Apple 2 has maybe one release every 2 years: http://csdb.dk
|
| Maybe I should have added "with audio/visual quality".
| snuci wrote:
| Not to be forgotten, Amiga's AMIX was a proper port of System V
| Release 4 on the Amiga 2500UX and 3000UX. Here it is running on
| the Amiga 2500UX: https://vintagecomputer.ca/wp-
| content/uploads/2022/01/A2500U...
| rbanffy wrote:
| Past the boot, where it used a VGA/EGA/MDA-like font, the
| terminal font looks remarkably similar to Sun's console font.
|
| I love it!
|
| BTW, if the Amiga came out with a Unix-like OS from the start
| (such as Coherent), it'd have been a game changer. With some (a
| lot, really) luck we could be all be running Unixes on different
| CPUs instead of Windows on x86's...
|
| I also like that cursor keys are closer to where the mouse uses
| to be (for the right-handed, at least)
| tyingq wrote:
| Ah, yeah. The Sun serif console font.
|
| https://virtuallyfun.com/wordpress/wp-content/uploads/2017/1...
| bitwize wrote:
| Gallant 12x22! Also available for your Linux console.
| rbanffy wrote:
| Sadly, Debian's `sudo dpkg --reconfigure console_setup`
| doesn't offer it as an option. I think Oracle's Linux does,
| IIRC.
| beagle3 wrote:
| Part of the reason the Amiga was well received is it's OS. It
| was exceptionally well designed, and everything except, I
| think, multiuser (which was missing) and process separation
| (which did not have proper hardware support at first, and not
| enough memory), was better than what Unix could offer at the
| time.
|
| Iirc, porting Unix software was actually very easy. I don't
| think the non-Unix of AmigaOS is the reason we're stuck with
| windows
| foobarian wrote:
| I still remember the first time I used Unix after a lifetime
| on the 8-bit home computers and DOS/Windows PCs, and typed an
| ampersand after a command. It took me about five minutes to
| convince myself that what the computer said was happening was
| actually happening. It was like finding an advanced alien
| ship with an antigravity generator and not believing it
| actually works.
| rbanffy wrote:
| > It took me about five minutes to convince myself that
| what the computer said was happening was actually happening
|
| And if you were on a terminal far from the machine, you
| wouldn't even see or hear the computer busy at work.
|
| I remember using a windowing terminal (all text windows)
| that could have multiple sessions over a single RS_232
| using a custom shell on the computer.
| [deleted]
| rbanffy wrote:
| > I don't think the non-Unix of AmigaOS is the reason we're
| stuck with windows
|
| It was not, but if the Amiga users who ventured past the GUI
| and into the command line interface were used to Unix, it'd
| be a much more natural migration path for them to move to
| Unixes than it was to move to Windows (as most did).
|
| Also, if the Amiga was, even if by accident, positioned as an
| entry level Unix workstation, it'd certainly be very popular
| at computer labs everywhere. It cost a lot less than a
| diskless workstation back then.
| pjmlp wrote:
| UNIX never had anything like AmigaDOS and the way it was
| extensible via dyanmic libraries for file formats, or the
| volume mounts as done on AmigaOS.
|
| All the UNIX ports, including the follow up AMIX, were a
| shadow of the multimedia capabilities of AmigaOS.
|
| Irix, NeXTSTEP and Sun NeWS are the only UNIX based
| experiences, that had remarkable hardware.
|
| All of them managed it, by being more than mere UNIX
| clones.
| rbanffy wrote:
| > UNIX never had anything like AmigaDOS and the way it
| was extensible via dyanmic libraries for file formats
|
| That's true, but all that could have been added to
| Coherent. I'm stressing Coherent here because it was the
| cheapest Unix clone available back then.
|
| > All the UNIX ports, including the follow up AMIX, were
| a shadow of the multimedia capabilities of AmigaOS.
|
| That's a hardware enablement issue. The biggest drawback
| of Coherent (and most Unixes back then) was that it
| couldn't run from a floppy, so, the minimum viable Amiga
| would need a hard disk. It could be possible to slim it
| down, however, or, maybe, just adding a POSIX
| compatibility layer on top of the AmigaDOS base would
| suffice. My point is that, if Amiga users had an easier
| path towards Unixes or if universities got lots of Amigas
| instead of far fewer Unix workstations (for the same
| money), we'd have a somewhat different world right now.
| pjmlp wrote:
| To this day POSIX has zero support about anything
| multimedia.
| rbanffy wrote:
| It would be a superset of POSIX anyway. POSIX is the
| minimum common denominator and should work with an ASR-33
| teletype connected to a serial port.
| pjmlp wrote:
| Which never happened in 50 years.
| rbanffy wrote:
| Being POSIX compliant never prevented an OS from having
| excellent multimedia capabilities. Perhaps Commodore
| management didn't see the value of a Unix-like OS for a
| home computer back then and, when they saw it, with the
| 3000/UX, it was way too late for the 68K.
| panzagl wrote:
| Does anyone else remember Fred Fish disks? They always had
| a bunch of ported Unix commands/utilities on them.
| Certainly all the important stuff like UUCP and whatnot.
| pjmlp wrote:
| Although the team was full of UNIX heads, and they also went
| and created AMIX, thankfully Amiga OS wasn't another UNIX
| clone.
|
| We wouldn't never had the desktop development experience that
| keeps the Amiga nostalgy alive if that had been the case.
|
| Hardly anyone discusses hardware from UNIX clones beyond what
| CPU they might have used.
| rbanffy wrote:
| > We wouldn't never had the desktop development experience
| that keeps the Amiga nostalgy alive if that had been the
| case.
|
| I know the Amiga GUI was way better than X, but that the
| development experience would be better is not a given. Unixes
| were always light-years ahead of anything else in development
| and automation tools. That, combined with a good set of APIs
| for all the custom hardware, would be extremely compelling.
|
| What would be much harder to do is direct hardware access.
| For that, you'd need to be running in runlevel 1 (which would
| make sense for a stand-alone computer).
| rjsw wrote:
| The GUI for the HLH Orion [1] was nice, a vendor didn't
| have to use X back then.
|
| [1] https://en.wikipedia.org/wiki/HLH_Orion
| rbanffy wrote:
| True. The AT&T Unix PC and the NeXT didn't use X either
| (it could be added to the NeXT, though).
| pjmlp wrote:
| I think you mixed up UNIX with Xerox PARC, regarding being
| beyond everyone else, including the CLI experience.
| rbanffy wrote:
| Developing for Windows felt nicer than developing for
| Amiga and I did both back then.
| pjmlp wrote:
| I thought the whole point was how great UNIX was.
| rbanffy wrote:
| Depends on what you are targeting. The bare Windows API
| was tragic, but you could avoid a lot of the low-level
| stuff with some care, and the Amiga felt much nicer - the
| events you'd deal with were much higher level, but the
| environment itself was not. Macs had a reasonable GUI
| designer (at least for dialog boxes). Where Unix excelled
| was in the rich tooling that didn't exist (or was poorly
| implemented) on other platforms - lex, yacc, grep, sed,
| m4, some source control versioning tools, pipes, etc - it
| was developed mostly for programmers, by programmers, so
| that's not surprising.
| zozbot234 wrote:
| > BTW, if the Amiga came out with a Unix-like OS from the start
| (such as Coherent), it'd have been a game changer.
|
| The first versions of the Amiga ran on the MC68000 processor
| which could not support a MMU, so no Unix there. AIUI, this
| became first possible with the MC68010, which however was quite
| uncommon early on.
| fulafel wrote:
| Microsoft sold Xenix for the 68000, I wonder how that worked
| given the often mentioned unix problem caused by inability of
| the processor to recover from bus faults.
|
| As for a MMU, I guess it's not a given that Unix requires
| paged virtual memory. Traditionally whole processes were
| swapped in and out.
| ch_123 wrote:
| Some of the early 68k workstations, including the original
| Sun and Apollo hardware simulated an MMU by using an extra
| 68k. IIRC, in the event of a trap, the second CPU would
| kick in, set up some mappings, and then hand control back
| to the main CPU.
| retrac wrote:
| Those workstations still had custom MMUs, and the 68K had
| most of the signals to work with an MMU. The issue was
| instruction recovery on exception, particularly page
| fault.
|
| With an instruction like move (a2)+, (a3) the processor
| first loads the value from memory at the address in a2,
| increments a2, then goes to store it at the address in
| a3. If a3 holds an invalid address, the processor faults
| halfway through the instruction. The problem is the 68000
| doesn't store enough state anywhere to tell you how to
| rollback and attempt the whole instruction again. (Was a2
| incremented already or not?)
|
| The dual 68K approach would keep the whole instruction
| pending on the other processor, in case it needed to be
| restarted, after resolving the page fault. And it was
| still possible to implement classic base-and-bounds
| swapping with a single 68K.
| rjsw wrote:
| Some C compilers for the 68000 added an instruction to do
| a dummy read before doing any stack operations to trigger
| a fault in a way that it didn't matter to the
| instructions doing real work.
| zozbot234 wrote:
| This is still done today to guard against stack
| overflows, in combination with unmapped "guard" pages.
| jacquesm wrote:
| The best thing about Xenix was the documentation, not the
| OS. I used that set for years after I stopped using Xenix.
| my123 wrote:
| Xenix was also sold for the 8086.
| retrac wrote:
| The 8086 was the first microprocessor UNIX was ported to.
| Maybe unsurprising as the first 16 bit processor that
| could address more than 64 KB of RAM. 8086 segmentation
| was and is much-lamented, but it did enable a poor man's
| form of virtual memory. If the user process never touched
| the segment registers, the OS could move allocated code,
| stack and data blocks in RAM around transparently to the
| process. It also allows every process to assume it starts
| at address 0.
| jacquesm wrote:
| Before OS/9?
| [deleted]
| retrac wrote:
| I think so. The 8086 port was done at AT&T in 1978. Xenix
| was based on that work.
| jacquesm wrote:
| Close call then with OS/9 released in '79.
| rbanffy wrote:
| > it did enable a poor man's form of virtual memory.
|
| Indeed. As long as you didn't need more than 64K, you'd
| be completely happy. That, and malloc would fail if you
| asked for too much memory.
| rbanffy wrote:
| I learned C on a Unix-like OS, QNX, running on a 640K
| 8088 PC clone. It booted from a 360K floppy and had, in
| those 360K, a shell, vi and a C compiler.
| jacquesm wrote:
| I _still_ miss QNX. Rock solid, super responsive, very
| tight and a neat model to build scalable applications.
| rbanffy wrote:
| I'm probably unhealthily attached to my Blackberry Q10
| because of this.
| nullsmack wrote:
| Wow, I didn't know QNX was always so compact. I remember
| a demo disk released in '99 or '98 that would boot from
| one floppy into a graphical environment with a web
| browser and a few other things. It was really impressive
| on a single floppy.
| throwawayboise wrote:
| Minix also ran on the 8086/8088.
| vidarh wrote:
| It was not entirely unable to recover from bus faults. It
| was unable to _restart the instruction executing at the
| time_ correctly.
|
| So it was unusable for more complex setups without hacks
| like ch_123 mentions Apollo and others used where you'd
| have two CPU's and let one of them pause while the second
| handled paging. But if you were content with killing the
| offending process, you could do that with "just" a single
| 68000 CPU and a simple MMU.
|
| (on a side note, Apollo's OS was fascinating for the era
| [1]: "Certain efficiencies were gained by careful design;
| for example, the memory page size, network packet, and disk
| sector were all 1K byte in size. With this arrangement, a
| page fault could take place across the network as well as
| on the individual computer and Aegis file system was a
| single system of memory mapped files across the entire
| network. The namespace of the network was self discovering
| as new nodes (workstations) were added.")
|
| [1] https://en.wikipedia.org/wiki/Apollo_Computer
| rbanffy wrote:
| Apollos were amazing. Truly a lost treasure.
|
| It saddens me how some beautiful creations just died
| because of worse is better.
| zengargoyle wrote:
| https://news.ycombinator.com/item?id=28081181
|
| The OS was close enough and wonderful under the hood. So many
| UNIX people bought one for home just because it was so easy to
| port UNIX code. I wrote Amiga apps on a Sun3/50 using Sun's
| compiler and just transferred the binary over to my machine.
| The Amiga Pascal software even had a special program included
| to transfer binaries over serial/parallel from a UNIX box
| (usually a Sun). You mostly just needed to link to a different
| crt.o / clib.
| tralarpa wrote:
| Maybe I am missing some context here, but are we talking
| about AMIX or AmigaOS? I am asking because the latter never
| looked particularly UNIX-like to me. But maybe that's because
| I never worked with MS-DOS, so, being only familiar with
| Linux, Windows, and AmigaOS, I might be overestimating the
| difference between UNIX and AmigaOS.
|
| Edit: btw, the AmigaDOS developers manual says that there was
| also a cross compiler (and serial transfer tool) for MS-DOS.
| I am wondering whether anybody every used that.
| bni wrote:
| The Amiga had to be sold with a minuscule amount of memory to
| have any chance in the home computer market. Memory at this
| time was very expensive and UNIX would have required too much
| of it.
| rbanffy wrote:
| I'm not user that much memory would be needed in the lower
| end models. A home computer would run on single-user mode and
| that wouldn't need a lot of the extra memory structures a
| multi-user environment needs.
| reaperducer wrote:
| FWIW, a mid-1980's high-end multi-user CP/M system I was
| looking at has 1 meg of RAM for four users: 64K for each
| user, and the rest to run the system. It was in the $8,000
| range, without the terminals.
| rbanffy wrote:
| An Amiga 1000 came with 256K of RAM for a single user.
| The 500 came out with at least twice as much. The TRS-80
| Model 16 came with 128K and Xenix, about five years
| before the 1000. A Unix-based Amiga 1000 would be
| completely feasible.
| runjake wrote:
| > With some (a lot, really) luck we could be all be running
| Unixes on different CPUs instead of Windows on x86's...
|
| But, we _are_ doing this -- en masse. I get your jist, though.
| rbanffy wrote:
| We could be doing that since the 90's...
| bitwize wrote:
| Yeah, except no. AmigaOS was built on a lightweight, near-real-
| time, multitasking microkernel that was designed in tandem with
| the hardware and which a single person could understand in
| totality. There's no way something as amazing as the Amiga
| could be produced on a Unix base and still be affordable.
| rbanffy wrote:
| > Yeah, except no. AmigaOS was built on a lightweight, near-
| real-time, multitasking microkernel
|
| So was QNX and QNX felt a lot like Unix and had tons of tools
| easily ported from Unix. It ran on an 8088 PC off a floppy
| disk. I now runs a lot of in-car entertainment and
| instrumentation systems (a nice home for an RTOS)
| theodric wrote:
| I remember when one of these appeared on eBay, and still regret
| not buying it!
| jamesdco wrote:
| same here :)
| jamesdco wrote:
| Enjoyed reading this, nothing like a trip down the memory lane
| cmrdporcupine wrote:
| This machine actually could be in many ways considered a
| predecessor to the Atari ST rather than the Amiga. Shiraz Shivji
| (one of the designers of the C64 and eventually director of
| engineering at Commodore) worked on it and then left to join the
| new Atari Corp with Jack Tramiel where he was the chief designer
| of the Atari ST hardware. In fact there was a lawsuit accusing
| him of stealing IP from the CBM900 (he was acquitted.)
| eschaton wrote:
| Acquitted only applies to criminal charges. Since this was a
| civil and not criminal matter, you'd just say that Shivji won
| (or Commodore lost) the lawsuit.
| alexisread wrote:
| Looking at the specs and focus, out of interest, what would
| have be taken from the C900 over to the ST? Different CPU,
| board and bus, graphics on a plugin card, different OS,
| different market focus and pricepoint. I can't see anything
| there apart from Shivji that's common. I'm guessing that this
| was a countersuit to delay Atari after they sued Commodore for
| 'stealing' the Amiga, thereby delaying the Amiga.
|
| As far as OS goes, ironically MultiTos is POSIX compatible. Had
| Atari stuck it out, it might have ended up similar to OSX in
| that you could cross-compile UNIX apps to MultiTos to use with
| a standard UI (GEM).
| cmrdporcupine wrote:
| Yeah for sure there's little in common and I'm sure it was
| just corporate legal hostility. But I'm sure the general
| experience of developing a 16-bit machine was educational.
| And I'm sure the choice to go with the 68000 (or NS32k which
| they also evaluated at first at Atari) was likely informed by
| the annoyance of having fiddled with the Z8000's awkward
| segmented architecture.
|
| Re: POSIX, we Atari users were already crosscompiling things
| to MiNT (that MultiTOS was based on) back then before
| MultiTOS came out. In 1990/1991 I ran a setup (off floppies!)
| that had a bash shell, uucp, nn, etc all set up. Friends of
| mine with larger hard drives and TTs were using GCC and so
| on. This was all just before Linux came out and before I
| moved to a 486, which I only did because Linux was an option
| there.
|
| Eric R Smith was the author of MiNT and was hired by Atari in
| their latter days to work on TOS and make his work
| "official." Sort of a last gasp effort after neglecting TOS
| for years, and the last few OS releases for the Falcon and TT
| were actually pretty compelling and competitive in some ways
| with what was on the Mac, etc..
|
| Later, MiNT was all open sourced under GPL as FreeMiNT and
| it's still very actively developed today. You can set up a
| whole open source Unix-like environment today on FreeMiNT +
| EmuTOS complete with bash, login, initd, etc. RPM package
| management, whole thing.
| marktangotango wrote:
| > informed by the annoyance of having fiddled with the
| Z8000's awkward segmented architecture.
|
| That's interesting, I was under the impression that Z8000
| uptake was hindered due to bugs in it's implementation, do
| you have any references about this segmented architecture?
| cmrdporcupine wrote:
| I'm not saying the segmentation is the reason Z8000
| uptake was low, I have no idea why it didn't succeed.
|
| But you can read about the Z8000's segmentation on WP: _"
| The Z8000 used a segmented memory map, with a 7-bit
| "segment number" and a 16-bit offset. Both numbers were
| represented by pins on the Z8001, meaning that it could
| directly address a 23-bit memory, or 8 MB.[4]
| Instructions could only directly access a 16-bit
| offset."_
| https://en.wikipedia.org/wiki/Zilog_Z8000#Memory_handling
|
| Many 16-bit systems around this time did this kind of
| thing. Makes it really annoying to do things like draw in
| a framebuffer bigger than 64k. It does look like at least
| the PC could hold a whole 23-bit address, so that's good.
| EvanAnderson wrote:
| The whole situation with Jack Tramiel leaving Commodore,
| acquiring Atari, Commodore staff following Jack to Atari, the
| Amiga Corporation[1] loan from Atari pre-Tramiel, subsequent
| repayment under Tramiel, and acquisition by post-Tramiel
| Commodore reads like fiction. It's an amazing story to me.
|
| [0] https://en.wikipedia.org/wiki/Amiga_Corporation
| Zenst wrote:
| Oh there are a few documentary's that cover it and was a a
| good one saw recently that encompassed all this -
| https://www.imdb.com/title/tt5706894/ do recommend that one.
| foresto wrote:
| The documentary is available here:
|
| https://archive.org/details/8bit_Generation_The_Commodore_W
| a...
|
| Following the "by Commodore" link on that page leads to
| some other interesting archives as well, including an
| AmigaDOS manual.
| rbanffy wrote:
| Another interesting Z-8000-based machine (and this one was
| actually produced and sold) is the Olivetti M-20. It's chunky,
| but I really like it's monolithic design. It says "serious
| computer" all over it. If anyone has a spare one, my birthday is
| in March.
| flohofwoe wrote:
| Also the East German P8000
| (https://en.wikipedia.org/wiki/P8000), unfortunately(?) the
| "higher-ups" then decided to hop on the x86 train not much
| later.
|
| PS: the conversion from East German Mark to Deutsche Mark
| doesn't make much sense on that Wikipedia page (the conversion
| factor seems to be inverted).
| pram wrote:
| I'm impressed they had so many OS clones, even UNIX!
___________________________________________________________________
(page generated 2022-01-07 23:01 UTC)