Oricutron 1.0 (EDIT: Now 1.2)

Comments, problems, suggestions about Oric emulators (Euphoric, Mess, Amoric, etc...) it's the right place to ask. And don't hesitate to give your tips and tricks that help using these emulations in the best possible way on your favorite operating system.
User avatar
iss
Wing Commander
Posts: 1641
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by iss »

IMO once having the snapshot file it's quite easy to produce tap file from it.
But first, if someone (like me :)) still doesn't know the default file extension for snapshot files it's '*.sna'!
Here are at-least two possible ways to go:
1. Load the snapshot (you will need the same version of Oricutron which produced the .sna file) and press F2 for internal debugger.
Alternatively you can do this from command line:

Code: Select all

oricutron path_and_snapshot_file_name.sna -b
Now you can save any part of memory as binary image, for instance to save from #1000 to #2000 use:

Code: Select all

wm $1000 $1000 filename.bin
To create TAP-file simple use the 'header' utility from OSDK, i.e.

Code: Select all

header -a1 -h1 filename.bin filename.tap 4096
Here -a1 is for autorun flag and 4096 (#1000) for load address, check OSDK help for more details.

2. The .sna file has simple layout - (header)+(64K RAM)+(16K ROM)+(other data). Different versions of Oricutron have different size of the header, but you can easy find the start offset of the ROM searching for it's well known start bytes for Atmos they are:
4C CC EC 4C 71 C4
from their offset below you have the 64K RAM content. The best is to write simple tool which extracts the block you need and use 'header" again. I'm using the Linux 'dd' utility for such 'dissections'.
At end if you have more TAPs you can concatenate them.

@Chema: I hope that I understand description of the problem correctly and the above info is relevant and useful....
User avatar
Chema
Game master
Posts: 3014
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by Chema »

Well, in fact what I wanted is a way either to save to tap in oricutron (not ORT) or to convert an ort to tap ..

I can load the game from ort, create a snapshot and save all the memory content (including screen), but then I'll need the value of processor registers and any data which could be on the stack, at least. Not the most convenient way of doing it.

Also a way to convert the snapshot to a format Euphoric can read could do.
User avatar
Chema
Game master
Posts: 3014
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by Chema »

Okay, I decided to take the shortcut, blantantly stealing code from the Oricutron sources, and making a quick kludge program to convert from ORT to TAP. Done! :D

A quick warning... For what I saw, Oricutron's method for saving files works well when the program calls the ROM, but cannot generate TAPs when the program uses custom routines. I guess that is the same for loading. That is the situation when the *second* method should be used: disable turbo-tape and go to Oricutron's menu to "Save Tape Output [F9]" option. But that will create an ORT file, not a wav or a tap and there is no way to convert it to TAP afterwards, so the result will only be usable from Oricutron.

With a gamemaker such as The Quill this is lethal, as there is no way to create a TAP or a WAV for the game itself to be loaded into a real Oric (or any other emulator).

My dirty solution is terrible, not commented, with the filenames hardcoded and mostly with no error-checking, but maybe someone wants to jump in and create a decent ort2tap from this, and maybe even include it in the OSDK or Oricutron.
User avatar
iss
Wing Commander
Posts: 1641
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by iss »

Chema wrote: Sun Nov 17, 2019 9:30 pm Okay, I decided to take the shortcut, blantantly stealing code from the Oricutron sources, and making a quick kludge program to convert from ORT to TAP. Done! :D
Congrats, it's actually a very clever solution! ;)

About Oricutron: if you look the *.pch files in roms/ directory you will see which tape routines are intercepted - they are almost all documented entry points, but 'The Quill' uses also other alternatives and this is the explanation why it's not working.

BTW, I looked inside 'The Quill' and it's very tricky program :o It seems that conversion to Sedoric will be impossible, but a FloppyBuilder version can be quite doable...
User avatar
Symoon
Archivist
Posts: 2307
Joined: Sat Jan 14, 2006 12:44 am
Location: Paris, France

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by Symoon »

Strange I thought I posted, but my post doesn't seem to appear :?
If you're looking for information about The Quill, I would suggest asking Dom50 on Oric.org. He did study in detail most of the specific tape loading routines a few years ago, and he recently studied The Quill to help him in his adventure games solutions campaign.

And BTW Dom just released a disk version of Grandad, which is a Quill game ;)
omelette
Officer Cadet
Posts: 60
Joined: Wed Mar 10, 2010 9:54 am

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by omelette »

Hi. I've got the latest Oricutron running on Wine, running on Linux and it works great, except for not being able to format (INIT) disk images - it just locks up when I try. Anyone know if this is a Linux/Wine, or an Oricutron issue?
User avatar
Dbug
Site Admin
Posts: 4444
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by Dbug »

Regarding Oricutron, my biggest problem recently has been the sound quality.

I'm not quite sure what changed, but there seem to be some remaining hissing on some channels when the audio is normally stopped, which did not happen earlier.

I only noticed when I started doing videocaptures for my youtube channel.
User avatar
iss
Wing Commander
Posts: 1641
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by iss »

omelette wrote: Mon Nov 18, 2019 8:47 pmI've got the latest Oricutron running on Wine, running on Linux and it works great...
Why not use the native Linux binary?
omelette wrote: Mon Nov 18, 2019 8:47 pm...except for not being able to format (INIT) disk images - it just locks up when I try...
This is not quite correct. The Sedoric command INIT works, but without FORMAT!
You can't select to format the disk because it requires the low-level FDC command WRITE TRACK which is not implemented yet.
christian
Pilot Officer
Posts: 96
Joined: Sun Nov 24, 2013 9:58 pm

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by christian »

I wrote a patch some time ago to support the WRITE TRACK command but I have never published.
I needed it for a program that formatted its data diskettes (can't remember its name)

If I remember correctly, my modification works but the delay before the IRQ interrupt may not be accurate.
User avatar
iss
Wing Commander
Posts: 1641
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by iss »

christian wrote: Mon Nov 18, 2019 10:11 pmIf I remember correctly, my modification works but the delay before the IRQ interrupt may not be accurate.
It's better than nothing :). If you can find your patch it would be great to merge it.
christian
Pilot Officer
Posts: 96
Joined: Sun Nov 24, 2013 9:58 pm

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by christian »

I found my quick and dirty patch, it works with Ftdos and Sedoric.

I still have to add some checks to avoid having buffer overflow (when trying to format an image with more tracks than the image file)
Also the header of the disk image isn't modified...
omelette
Officer Cadet
Posts: 60
Joined: Wed Mar 10, 2010 9:54 am

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by omelette »

Dbug wrote: Mon Nov 18, 2019 8:57 pm Regarding Oricutron, my biggest problem recently has been the sound quality.

I'm not quite sure what changed, but there seem to be some remaining hissing on some channels when the audio is normally stopped, which did not happen earlier.

I only noticed when I started doing videocaptures for my youtube channel.
I'm after digging out my Atmos and having been using Oricutron for a few weeks now, immediately noticed that 'certain' sounds are reproduced way better on the Oric itself. One other thing that bugs me about Oricutron is how its emulation sometimes 'crashes' and drops you to the debug menu, leaving you with no way of returning to the Oric - hard-resetting doesn't work - so requiring a close/restart of Oricutron.
User avatar
iss
Wing Commander
Posts: 1641
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by iss »

omelette wrote: Thu Nov 21, 2019 3:54 pm... leaving you with no way of returning to the Oric
'F1' works in debug mode too showing the pop-up menu.
Else you can change the PC register to known working address and continue emulation with F2.
omelette
Officer Cadet
Posts: 60
Joined: Wed Mar 10, 2010 9:54 am

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by omelette »

iss wrote: Mon Nov 18, 2019 9:01 pm
omelette wrote: Mon Nov 18, 2019 8:47 pmI've got the latest Oricutron running on Wine, running on Linux and it works great...
Why not use the native Linux binary?
Long version, I'm stuck with a really old Mint 17.3 right now because the caddy's controller-chip in my laptop, which is a PATA -> SATA i/f for an SSD, no longer works with ALL modern Linux kernels. I do have a the linux version of Oricutron in my Oric_Stuff folder but could never get it to even run. More to the point, I could never get the M$ version of Oricutron to run on Wine until very recently either - well, it ran, but would crash whenever I tried to load a fire. I needed 'oricutron_sld2.exe' to overcome that obstacle, which I found on what I think is the developers site. This version seems also bang up to date, having "2019" shown in its 'About' information menu.
This is not quite correct. The Sedoric command INIT works, but without FORMAT!
You can't select to format the disk because it requires the low-level FDC command WRITE TRACK which is not implemented yet.
Yes,I know but what ideally I was trying to do was create a new 'blank' disk image,which I discovered Oricutron cannot do, so hoped I could at least format an already existing one - which it also cannot do! Just deleting the files wasn't enough as I was playing with Sedoric's directory structure.
omelette
Officer Cadet
Posts: 60
Joined: Wed Mar 10, 2010 9:54 am

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by omelette »

iss wrote: Thu Nov 21, 2019 4:10 pm
omelette wrote: Thu Nov 21, 2019 3:54 pm... leaving you with no way of returning to the Oric
'F1' works in debug mode too showing the pop-up menu.
Else you can change the PC register to known working address and continue emulation with F2.
Oh, ok. But wouldn't it make more sense to just give the user a means of resetting/clearing the program from memory - or maybe I'm just being pedantic. :)
Post Reply