6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Sun May 12, 2024 5:28 am

All times are UTC




Post new topic Reply to topic  [ 17 posts ]  Go to page 1, 2  Next
Author Message
PostPosted: Wed Mar 24, 2021 12:40 am 
Offline

Joined: Sat Apr 11, 2020 7:28 pm
Posts: 341
After checking that porting Coherent to the 65816 would be a daunting tasks, I searched for another unix-like OS to be ported to the 65816.

I found the Amiga 500 port of Minix. As the Motorola 68000 was certainly closer to the 65816, by having no MMU or FPU at all, maybe this time it would be easier to port that Mark William's OS.

Some useful links:

Minix for the Amiga, version 1.5.10 including OS sources.
1.5.10 to 1.5.10.2 update that would support 68030 and CBM SCSI hard disks

Thomas Unger's excellent Amiga Minix site (archive.org)


Top
 Profile  
Reply with quote  
PostPosted: Wed Mar 24, 2021 1:15 am 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8180
Location: Midwestern USA
tokafondo wrote:
After checking that porting Coherent to the 65816 would be a daunting tasks, I searched for another unix-like OS to be ported to the 65816.

I found the Amiga 500 port of Minix. As the Motorola 68000 was certainly closer to the 65816, by having no MMU or FPU at all, maybe this time it would be easier to port that Mark William's OS.

Some useful links:

Minix for the Amiga, version 1.5.10 including OS sources.
1.5.10 to 1.5.10.2 update that would support 68030 and CBM SCSI hard disks

Thomas Unger's excellent Amiga Minix site (archive.org)

Do you have a running Minix system to open the source files on disk 7?

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
PostPosted: Wed Mar 24, 2021 1:20 am 
Offline

Joined: Sat Apr 11, 2020 7:28 pm
Posts: 341
I'm getting booting minix in WinUAE tomorrow, just to try to extract all the sources for you developers have a peek.

There are some useful info here, like the root login and password.


Top
 Profile  
Reply with quote  
PostPosted: Wed Mar 24, 2021 1:26 am 
Offline

Joined: Sat Apr 11, 2020 7:28 pm
Posts: 341
In this place I found sources for the Atari ST version of Minix 1.5, that shouldn't be that different from the Amiga ones.

EDIT: This maybe would be something even more useful.

I will try to get the Amiga ones, though.


Top
 Profile  
Reply with quote  
PostPosted: Wed Mar 24, 2021 2:19 am 
Offline
User avatar

Joined: Tue Mar 05, 2013 4:31 am
Posts: 1373
Well, there's a few options on porting "something" over to the 65C816... there's also Fuzix, which has had some work done previously... there's also CP/M 68K, which has a lot of C code, which would "hopefully" make it easier to port over. Granted, there's some 68K assembler code in there as well, which would require a re-write for those parts. Still, that might be a viable path to getting something usable on the '816.

Last year I picked up a couple of Bill Shen's (plasmo on this and other forums) Tiny68K SBC boards. He provides a working CP/M 68K as part of the software for it... in short, brilliant HW design and implementation, along with a bootable CP/M 68K. I really like his hardware implementation with the Altera CPLD. I'd still like to build a pocket-sized 68K board at some point, and have the ability to run CP/M 68K, Minix 1.5 or even Fuzix on it.

Getting back to the '816... here's a link that might be useful:

https://github.com/EtchedPixels/FUZIX/t ... ter/Kernel

_________________
Regards, KM
https://github.com/floobydust


Top
 Profile  
Reply with quote  
PostPosted: Wed Mar 24, 2021 4:12 am 
Offline

Joined: Fri Dec 21, 2018 1:05 am
Posts: 1076
Location: Albuquerque NM USA
I'm bogged down with all the works I need to complete in the present life to work on the past life (i.e. retro computing). Here is a quick link to FUZIX on Tiny68K:
https://www.retrobrewcomputers.org/foru ... 9&start=0&

FUZIX also exists on 6502, right? I have not heard of recent activities of 6502 FUZIX.

Bill


Top
 Profile  
Reply with quote  
PostPosted: Wed Mar 24, 2021 8:58 am 
Offline

Joined: Sat Apr 11, 2020 7:28 pm
Posts: 341
About FUZI and Minix

"The Minix operating system, written for PCs by Andrew Tanenbaum et al, contains many programs that should compile and run under UZI. Since Minix is much less encumbered by licensing provisions than real Unix, it would make sense to port Minix programs to UZI. In fact, UZI itself could be ported to the PC, and used as a replacement for the Minix kernel."


Top
 Profile  
Reply with quote  
PostPosted: Wed Mar 24, 2021 9:15 am 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10800
Location: England
The 68k does have the advantage of a few wildly popular machines to target. What thoughts do you have about which 65816 machine to target? Or indeed, what degree of portability between targets?

(The Apple IIgs is probably the most numerous '816 machine out there, if we discount the SNES. There are of course a few homebrew machines, but none (that I can think of) which were made in volume. And Acorn's Communicator is relatively rare, even in the UK.)


Top
 Profile  
Reply with quote  
PostPosted: Wed Mar 24, 2021 10:08 am 
Offline

Joined: Sat Apr 11, 2020 7:28 pm
Posts: 341
Well, it seems that these days everything must be *nix-like and better than that, *nix binary compatible. It's just about being able to have a system that could use the huge amount of C code available everywhere for have ports for it.

The only famous and modern design for a '816 computer today is the C256 Foenix. It's a complete design that runs on a real 65816.

The problem is that as always, they want it to be retro-user friendly so the first thing they ported was BASIC. And apart that, there is assembler.

So I thought that if a *nix-like OS could be ported to the '816, where users could contribute with ports of existing software, because they would be dealing with C instead of BASIC or assembler, and would have a common kernel with the usual kernel calls on the ground, maybe things would be different. I don't think that the '816 would make a comeback after this, but a common, modern implementation could be established for people that likes to use computers.

And I think that maybe it would promote people to start designing computers around the '816 because existing that common base that could be used for it.

At last, it's somehow easy to design a 65xx computer, but what is not that easy (for a regular user like me) is to have something running on it that could make the design effort worthwhile. As I see it, once you have the hardware running, that relies of predefined designs and guidelines from the manufacturer, the creative part of designing software for it is not on everybody's hands.


Top
 Profile  
Reply with quote  
PostPosted: Wed Mar 24, 2021 12:28 pm 
Offline

Joined: Thu Mar 12, 2020 10:04 pm
Posts: 690
Location: North Tejas
As Yoda was known to say, "No, there is another..."

And that is OS-9. Originally written for the 6809 in assembly language, it was ported to the 68000. A later version rewritten in C (still closed source) was marketed as OS-9000. The 6809 version was adapted to the TRS-80 Color Computer and has since been given a new life by enthusiasts as NitrOS-9.

https://en.wikipedia.org/wiki/OS-9

http://www.nitros9.org/


Top
 Profile  
Reply with quote  
PostPosted: Wed Mar 24, 2021 3:18 pm 
Offline
User avatar

Joined: Wed Feb 14, 2018 2:33 pm
Posts: 1411
Location: Scotland
tokafondo wrote:
Well, it seems that these days everything must be *nix-like and better than that, *nix binary compatible. It's just about being able to have a system that could use the huge amount of C code available everywhere for have ports for it.


This is the conundrum I'm in right now ... I'd like to try to make something different, but it just ends up looking something unixy. A unix shell is nothing more than a posh and fancy CP/M A:> prompt at the end of the day - a filing system? Well, you'd want to make the underlying thing Posix compliant, wouldn't you? Multi-tasking/threading? Well, there is the Posix threads model and the unix fork() model... And so on. How can you make something different yet functional without keeping the principle of least surprise?

tokafondo wrote:
The only famous and modern design for a '816 computer today is the C256 Foenix. It's a complete design that runs on a real 65816.

The problem is that as always, they want it to be retro-user friendly so the first thing they ported was BASIC. And apart that, there is assembler.


I looked seriously at this and joined in the forums, etc. in the early days, but a few things put me off the project (and price was just one of them). It is a nice system but is it retro enough? FPGA video system and peripheral controller along with hardware (ok, FPGA again) 32-bit multiply and divide. It would make an ideal platform for my own little BCPL project, but would people pay the price of the hardware just for an old school environment? It's programmers vs. gamers again - games sold the old home micros, but only a relatively small number of people did the actual programming.

Actually, there may be a small exception to that - and that's the BBC Micro - education and TV backing sold that initially (into schools and homes that could afford it) and out of that project came many fine programmers who have gone on to greater things, however when it came to games, the BBC Micro while a good platform at the time (e.g. Elite) it was just too costly for the masses who "made do" with the Sinclair products - the 48K Spectrum for example at less than half the price of the BBC Micro, but because it was under £200 at the time, people put up with it's rubber keyboard, weird graphics, sound and so on because for the most part, they wanted to play games, not write code.

tokafondo wrote:
So I thought that if a *nix-like OS could be ported to the '816, where users could contribute with ports of existing software, because they would be dealing with C instead of BASIC or assembler, and would have a common kernel with the usual kernel calls on the ground, maybe things would be different. I don't think that the '816 would make a comeback after this, but a common, modern implementation could be established for people that likes to use computers.


My own thoughts are that C is possibly a hindrance to some, however it does make things "easy". The trade-off? Code density and execution speed, but that didn't stop us back in the day with BASIC wrappers round little snippets of assembler for the fast bits... these days memory is cheap, so that should not be an issue and with 8Mhz (and much more) speeds being relatively easy to achieve then perhaps compiler efficiency isn't that big a worry? The BBC Micro more or less "solved" the banked memory issue too (at least from my point of view) by providing a clearly defined operating system interface that would transparently activate each (16K) bank as required so a program running in one bank could call (e.g.) a filing system that resided in another bank without even being aware of it.

tokafondo wrote:
And I think that maybe it would promote people to start designing computers around the '816 because existing that common base that could be used for it.


I don't think it's an easy CPU to get into. The banks of 64K make it quite awkward for most newbies to get their head round, especially if they've never used a system with such a memory layout before and they want data blocks > 64KB. Faced with a retro '816 (that only saw one real commercial success, the Apple //gs, maybe 2 if you count the SNES) or a retro 68K CPU which was used in many systems from the Sinclair QL to Unix systems then what would you go for? The only reason I've built up a system is my 6502 "loyalty" and that's wearing thin now.

tokafondo wrote:
At last, it's somehow easy to design a 65xx computer, but what is not that easy (for a regular user like me) is to have something running on it that could make the design effort worthwhile. As I see it, once you have the hardware running, that relies of predefined designs and guidelines from the manufacturer, the creative part of designing software for it is not on everybody's hands.


Yes, it's easy now, especially if you "cheat" with a GAL or CPLD/FPGA now. But what do you do? Start afresh, or make it a C64/Apple II/BBC Micro look-a-like? It's a tough call - Almost as hard as the old Z80 vs 6502 "holy wars" of the early years. Ruby started fresh-ish, but I ended up writing my own Apple II like "monitor" for it and running EhBASIC, Applesoft and Apple Integer Basic on it but wanting a nicer/faster BASIC it then migrated into an Acorn MOS like operating system so I could run BBC Basic on it, so not that novel in that respect...

-Gordon

_________________
--
Gordon Henderson.
See my Ruby 6502 and 65816 SBC projects here: https://projects.drogon.net/ruby/


Top
 Profile  
Reply with quote  
PostPosted: Wed Mar 24, 2021 3:36 pm 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8180
Location: Midwestern USA
drogon wrote:
tokafondo wrote:
And I think that maybe it would promote people to start designing computers around the '816 because existing that common base that could be used for it.

I don't think it's an easy CPU to get into. The banks of 64K make it quite awkward for most newbies to get their head round, especially if they've never used a system with such a memory layout before and they want data blocks > 64KB.

Huh? With the exception of direct page and stack accesses, which are limited to bank $00, banks only matter to programs, not data. If a program will fit into 64KB the 65C816 will treat it no differently than the 65C02.

From a data perspective, the 65C816 has a flat memory model. Use of the [<dp>] and [<dp>],Y addressing modes allows a program to touch anything in the 16 MB space without any more effort than using (<zp>) and (<zp>),Y addressing in a 65C02 program to access that MPU's 64KB space. The only time bank gets into the picture while handling data is if 16-bit addressing a la the 65C02 is used, in which case, the value in DB dictates in which bank a fetch or store occurs.

I actually find the 65C816 easier to program than the 65C02, and certainly far easier than a 80286.

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
PostPosted: Wed Mar 24, 2021 3:47 pm 
Offline
User avatar

Joined: Wed Feb 14, 2018 2:33 pm
Posts: 1411
Location: Scotland
BigDumbDinosaur wrote:
drogon wrote:
tokafondo wrote:
And I think that maybe it would promote people to start designing computers around the '816 because existing that common base that could be used for it.

I don't think it's an easy CPU to get into. The banks of 64K make it quite awkward for most newbies to get their head round, especially if they've never used a system with such a memory layout before and they want data blocks > 64KB.

Huh? With the exception of direct page and stack accesses, which are limited to bank $00, banks only matter to programs, not data. If a program will fit into 64KB the 65C816 will treat it no differently than the 65C02.

From a data perspective, the 65C816 has a flat memory model. Use of the [<dp>] and [<dp>],Y addressing modes allows a program to touch anything in the 16 MB space without any more effort than using (<zp>) and (<zp>),Y addressing in a 65C02 program to access that MPU's 64KB space. The only time bank gets into the picture while handling data is if 16-bit addressing a la the 65C02 is used, in which case, the value in DB dictates in which bank a fetch or store occurs.

I actually find the 65C816 easier to program than the 65C02, and certainly far easier than a 80286.


You're not a newbie. Try hanging round some of the other 'retro' forums for a while.

-Gordon

_________________
--
Gordon Henderson.
See my Ruby 6502 and 65816 SBC projects here: https://projects.drogon.net/ruby/


Top
 Profile  
Reply with quote  
PostPosted: Wed Mar 24, 2021 6:01 pm 
Offline

Joined: Sat Apr 11, 2020 7:28 pm
Posts: 341
I found this document about recompiling Minix.

Attachment:
recompiling.pdf [69.09 KiB]
Downloaded 100 times


Top
 Profile  
Reply with quote  
PostPosted: Wed Mar 24, 2021 7:06 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8433
Location: Southern California
drogon wrote:
but would people pay the price of the hardware just for an old school environment?

At this point it would have to be for the interest. If it turns out to be profitable too, so much the better; but you'd have to take the approach that it doesn't have to be profitable to be considered a success. I've seen a few hardware and software projects like that over the years.

_________________
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 17 posts ]  Go to page 1, 2  Next

All times are UTC


Who is online

Users browsing this forum: No registered users and 10 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: