Are disk operating systems independent of BASIC?

This is the best place to discuss about the various Oric operating systems like Sedoric, Randos, FT-Dos, and others, as well as serious software, utilities, word processors, disassemblers, etc... that runs on oric computers.
User avatar
6502Nerd
Pilot Officer
Posts: 111
Joined: Thu Oct 08, 2020 9:48 pm
Location: Leicestershire, UK
Contact:

Are disk operating systems independent of BASIC?

Post by 6502Nerd »

Hi all

Hoping this will be a simple answer, but maybe not..!

I am finalising a new ROM which completely replaces the Oric ROM with a whole new language and all the basic input output and machine management stuff. This includes provision to load to and from tape.

So I have a way to get programs off RAM in to permanent storage - but of course tape is rather clunky.

I have had an Oric-1 since 1983, but never had a disk, always used tape hence I do not know the following - are the various Oric DOS tied to the BASIC ROM (1.0 or 1.1)? Is there an easy documented way for custom ROM like mine to integrate with DOS and vice-versa?

Thanks in advance!
User avatar
Chema
Game master
Posts: 3014
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: Are disk operating systems independent of BASIC?

Post by Chema »

I don't think so, as they mostly load code into overlay RAM and were designed to work on both Oric-1 and Atmos, which do not share entry points, etc.

That being said, nothing prevents a DOS program to call ROM routines, use ROM tables or whatever, so I cannot be 100% sure.
User avatar
Dbug
Site Admin
Posts: 4444
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: Are disk operating systems independent of BASIC?

Post by Dbug »

I'm not an expert at all on these, I guess Fabrice France and André Cheramy are the most knowledgeable persons on that, but they are not on the forum.

As far as I remember, when you boot on Sedoric (or the previous versions), the entire system runs from the Overlay Ram, BUT there's also a 256 bytes block of code in page 4, which basically contains a dispatcher to detect if what is typed (or executed if it's a BASIC program) is a DOS command or a BASIC instruction, in which case it switches off the overlay and run the BASIC command.

I maybe be wrong, so don't take that as a true statement :)
User avatar
6502Nerd
Pilot Officer
Posts: 111
Joined: Thu Oct 08, 2020 9:48 pm
Location: Leicestershire, UK
Contact:

Re: Are disk operating systems independent of BASIC?

Post by 6502Nerd »

Thanks chema and dbug for your thoughts. Ok so basically the DOS ROM is like my ROM, a replacement (running on the overlay RAM) - so you mean it has all the functions like keyboard scanning, interrupt handling also? Or the DOS only runs when the dispatcher picks up a command needing the overlay?

Sounds fascinating I will just try and try it and see what happens (on emulator).
User avatar
Dbug
Site Admin
Posts: 4444
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: Are disk operating systems independent of BASIC?

Post by Dbug »

I'm pretty sure (but I never checked) it has its own interrupt handler: The cost of switching back to ROM every time would be extremely costly!

Basically when you boot a Microdisc/Cumana, it boots on an internal 8 kb eprom which sits on top of the memory range (over both the overlay and rom).
This "eprom boot loader" is a mini version of the DOS that only has enough code to load stuff from disk, and if it's a bootable disk, it loads the kernel to from disk to overlay memory, and when it's done switch to the overlay memory.
User avatar
ibisum
Wing Commander
Posts: 1645
Joined: Fri Apr 03, 2009 8:56 am
Location: Vienna, Austria
Contact:

Re: Are disk operating systems independent of BASIC?

Post by ibisum »

I'm very much interested in your new ROM, 6502Nerd - will you not be releasing it in .DSK form, so it could be used from a DOS, and thus support access to the DOS packed into the .DSK?

I could imagine this would allow switching back and forth from DOS and dflat also?
User avatar
6502Nerd
Pilot Officer
Posts: 111
Joined: Thu Oct 08, 2020 9:48 pm
Location: Leicestershire, UK
Contact:

Re: Are disk operating systems independent of BASIC?

Post by 6502Nerd »

ibisum wrote: Sat Nov 14, 2020 9:10 pm I'm very much interested in your new ROM, 6502Nerd - will you not be releasing it in .DSK form, so it could be used from a DOS, and thus support access to the DOS packed into the .DSK?

I could imagine this would allow switching back and forth from DOS and dflat also?
Thanks for your interest! Yes this would be a good idea, to allow it to work from a DSK file. Presently I have it working as a ROM BIN file which can be loaded in to Oricutron, and I am creating the GitHub repository for it too (focusing on documentation to help people understand dflat).

I will work on a DSK version, although I am very unfamiliar with any of the Oric DOS so an tips on how to go from BIN to DSK would be appreciated!

Cheers, 6502Nerd
User avatar
Dbug
Site Admin
Posts: 4444
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: Are disk operating systems independent of BASIC?

Post by Dbug »

All you need really is to have a 16KB file on your DSK, then a small loader that loads it in normal RAM, disable interrupts, enable the overlay ram, memcpy to c000-ffff.
User avatar
6502Nerd
Pilot Officer
Posts: 111
Joined: Thu Oct 08, 2020 9:48 pm
Location: Leicestershire, UK
Contact:

Re: Are disk operating systems independent of BASIC?

Post by 6502Nerd »

Dbug wrote: Sun Nov 15, 2020 3:42 pm All you need really is to have a 16KB file on your DSK, then a small loader that loads it in normal RAM, disable interrupts, enable the overlay ram, memcpy to c000-ffff.
Thanks for the tip Dbug! I will certainly try this. Some more touches on the ROM need doing - finding a few bugs and making some usability changes too.
Post Reply