Oric tape loading

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
Steve M
Squad Leader
Posts: 787
Joined: Fri Mar 24, 2006 3:33 am
Location: Cumbria, UK
Contact:

Oric tape loading

Post by Steve M »

Everyone knows the Oric tape loading code isn't great - but why has no-one rewritten it? With RAM overlays and such you'd think there was scope to rewrite the code and give Oric a good tape loading routine. Or is there just not enough room ???
User avatar
Symoon
Archivist
Posts: 2307
Joined: Sat Jan 14, 2006 12:44 am
Location: Paris, France

Re: Oric tape loading

Post by Symoon »

It all depends on what you mean by "not great" ;)
If you mean improvements like block loading with checksum or things alike, true the loading code is rather "basic".

But about loading reliability, as far as I've understood it's rather a hardware or tape recording quality problem!
User avatar
Chema
Game master
Posts: 3014
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: Oric tape loading

Post by Chema »

I also asked this a long ago, and it seems it is related to the circuitry, which resulted in a distorted noisy wave. Don't know the details, though, and it would be interesting to see if his could be somewhat patched (with some hardware patch, that is).

The loading routines... well the only one that makes sense is the one in the 1.1a ROM, before they removed the error detection completely :?
User avatar
Steve M
Squad Leader
Posts: 787
Joined: Fri Mar 24, 2006 3:33 am
Location: Cumbria, UK
Contact:

Re: Oric tape loading

Post by Steve M »

I think Peter Halford said the routine was copied from some old reliable code so it shouldn't be a problem. (So maybe it is more a hardware issue.)
But I think there could be a few tweaks to improve how it looks. I mean, we just get a loading message and then after along wait it either works or crashes.
It'd be nice to have a bar showing progress or a countdown to the end of the program so you had some idea of how many cups of tea to make before it finish. Even the Speccy showing a noise pattern aroudn the border gave some indication that things were progressing as planned.

I thought the block loading system on the electron was quite good. If a block failed it could be reloaded. But sometimes of the tape was dodgy no amount of reloaded would help.

I'm not sure what all the improvements are but you'd think if the code was as bad as it's made out to be, someone would have rewritten it(?)

We had 300 baud rate and 1200 whereas some of the other computers used 600. Is there any merit in changing the speed to 600 for a more reliable loading?
User avatar
Symoon
Archivist
Posts: 2307
Joined: Sat Jan 14, 2006 12:44 am
Location: Paris, France

Re: Oric tape loading

Post by Symoon »

Remember Progress? ;)
https://forum.defence-force.org/viewtop ... 736#p16736
- Progress bar
- Live loading parity error detection

Only on Atmos though... Funnily, see the very last post of the thread: Dom asked for this to be in the Rom, too ;)


The other problem I see with re-writing ROM routines is that your ROM probably wouldn't load anymore some old programs using special loading/saving routines that made direct calls to ROMs.
User avatar
Steve M
Squad Leader
Posts: 787
Joined: Fri Mar 24, 2006 3:33 am
Location: Cumbria, UK
Contact:

Re: Oric tape loading

Post by Steve M »

Oh yes, I'd forgotten about the progress bar.

I guess my initial thoughts were whether the main code was OK. Has anyone compared loaders from other 6502 computers? Is there room to try an alternative loader without messing up the rest of the ROM?

If the main problems are hardware-related it would seem to suggest the software is OK. In which case - is there a hardware fix? I seem to recall something about the lines on the board being unprotected from neighbouring signals(?)
User avatar
Symoon
Archivist
Posts: 2307
Joined: Sat Jan 14, 2006 12:44 am
Location: Paris, France

Re: Oric tape loading

Post by Symoon »

Well to be honest I don't see any problem with the loading routines code on Oric, except as Chema noticed the mess with error detection in ROM 1.1, leading to "errors found", or lack of "errors found" according to different 1.1 versions. But this is just the control.
The loading routine itself is rather "cool", allowing large speed variations (hence the "F16" format, speeding up the loading by 40% without changing the loading routines).

That being said I have no knowledge on other computers routines, so I can't compare.
User avatar
mikeb
Flight Lieutenant
Posts: 282
Joined: Wed Sep 05, 2018 8:03 pm
Location: West Midlands, UK
Contact:

Re: Oric tape loading

Post by mikeb »

Steve M wrote: Sat Sep 26, 2020 5:52 pm Is there room to try an alternative loader without messing up the rest of the ROM?
If you mean the 16K Oric BASIC ROM, then I don't think there's any room to speak of AT ALL. It's full. Any extensions and bug fixes would require everything else be squished up a little tighter, which is probably one of the reasons Oric didn't already do any extensive re-writes.

Anyone that has patched a non-trivial bug in the Oric ROM so far, or added an extra feature, will have already had to scrabble around in the dirt looking for a byte or two -- and if you're trying to maintain compatibility with ROM entry points, that makes it even harder.
Post Reply