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: 1637
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by iss »

About the old bug: I think it's fixed, at least I don't have any error messages.
Attached is updated version of STORE/RECALL progs - now the generated MATRIZ.tap file is 145 bytes - exactly as in your post but there is difference in tap header '$05 $4D' vs. '$FF $FF'
diff.png
Please, try with Oricutron built from last git sources.
store-recall-test.zip
(735 Bytes) Downloaded 383 times
About The Quill: I can confirm - saving doesn't work in Oricutron for me too.
Euphoric (v.1020) works and attached are saved immediately after program load Database file and Adventure file.
quill-saved.zip
(5.54 KiB) Downloaded 372 times
User avatar
Chema
Game master
Posts: 3013
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by Chema »

Thanks iss, so it is a bug in Oricutron that Euphoric does not suffer. Interesting. Probably it is due to how it saves data... Xeron surely knows.

Is there any chance that recent changes result in a new release so I can just download it and NOT recompile it?

As a lateral two cents I miss a quick way to "insert a blank tape".
User avatar
iss
Wing Commander
Posts: 1637
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by iss »

Hello all,
Here: http://iss.sandacite.com/oricutron/
you can find fresh Oricutron builds for macOS, Windows and Linux.
This builds are unofficial and are intended mainly for developers.
I plan to keep them permanently updated to latest github sources.
Please, try them and let me know if something is not working.
All binaries are cross-compiled and tested on real target OS: macOS High Sierra, Windows 10, Linux Fedora 27.
User avatar
waskol
Flight Lieutenant
Posts: 414
Joined: Wed Jun 13, 2007 8:20 pm
Location: FRANCE, Paris

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by waskol »

I am afraid, it is not the only bug, but it seems related to the Oric rom itself.

It concerns the two other bytes, those located just to the right of those highlited by iss on his screenshot.
iss bytes represent the memory address of the array in the BASIC stack at the moment they were saved.

Those are not very important since when you do a "RECALL" from another program for example, the destination array will not be at the same address in oric memory.

The big concern is either the 2 following bytes, or the data themselves.
- According to "L'Oric à nu" (which is totally wrong on many points), this value must correspond th the ending address of the array.
- According, to other books, (Geof Phillips, Bertin), we should have the same.
The Oric saving routine is supposed to copy to the tape 9 specific memory location.
In fact, instead, those two bytes give the length of the data that follow instead.
But it is not exactly true, because it gives the length plus a delta (6, 8, ...) which is not always the same.

For many details about the tap format, see my joined pdf)

This among that :
- the slow/fast flag is never set by Oricutron (the 9th header byte).
- in "L'Oric à nu", bytes are show in the wrong order, as stated by Geof Phillips in his book, the header bytes are written to the tape in reverse order.
Attachments
Oric tap file format.pdf
(217.07 KiB) Downloaded 483 times
User avatar
Dbug
Site Admin
Posts: 4437
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by Dbug »

Question to the Oricutron people :)

The current "Official" version is still 1.2, dated from 2014.
Would it make sense to make some official new version?

Basically I'm trying to update the OSDK documentation with an article about profiling, I wanted to add the section from ISS about the Cycle Counter reset parameter... but this feature was added apparently in 2016, so it's not in Oricutron 1.2, and I'd rather not advertise the use of features that are not available in an official build.

If a new version appears, I'll update the OSDK with it (after some testing obviously).

:)
User avatar
iss
Wing Commander
Posts: 1637
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by iss »

In my humble opinion, the current status of Oricutron's sources is quite stable and there is no critical issues reported. That being said I think it's really time for new release. I'm ready to help where is needed!
BTW, I will be very happy if before release all sources are passed trough a code formatter, so tabs/spaces, indentation, the look of () and {}, etc. are consistent everywhere.
User avatar
ibisum
Wing Commander
Posts: 1643
Joined: Fri Apr 03, 2009 8:56 am
Location: Vienna, Austria
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by ibisum »

>>code formatter

Yes, this.
User avatar
Chema
Game master
Posts: 3013
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by Chema »

mmmm... still the bug with saving and loading of data statements (STORE/RECALL) is unsolved, I think. Not sure about Telestrat emulation in the official binary version.

And some of the latest additions (some of which, as Dbug said, are very interesting) are not in, either.
romualdl
Officer Cadet
Posts: 52
Joined: Tue Jan 17, 2006 9:42 pm
Location: France

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by romualdl »

When I "paste from clipboard" some basic code in Oricutron (1.2) it goes in "monitor mode" without any reasons at different stages. If I paste the same lines twice the bug may not happen at the same point but unfortunately happens 100% when doing so.
romualdl
Officer Cadet
Posts: 52
Joined: Tue Jan 17, 2006 9:42 pm
Location: France

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by romualdl »

Well you should be really motivated to get something working on the oric ;)
Since I can't paste my basic stuff in Oricutron (see above) I decided to use txt2bas to have a bas file. I then use oric-dsk manager to put it in a dsk file and then load this in Oricutron (harware/microdisk mode/dir is ok file is there) and as soon as I enter the load"myfile.bas Oricutron goes into monitor mode. F2 has no other effect than skipping to the next address but not exiting the monitor mode.
Last edited by romualdl on Tue Nov 27, 2018 1:57 pm, edited 1 time in total.
User avatar
iss
Wing Commander
Posts: 1637
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by iss »

romualdl wrote: Mon Nov 26, 2018 4:26 pm "paste from clipboard"
@romualdl: Can you download Oricutron form here and test the 'paste'.
This will help to know if the issue is already fixed.
romualdl
Officer Cadet
Posts: 52
Joined: Tue Jan 17, 2006 9:42 pm
Location: France

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by romualdl »

Ok downloaded Oricutron_win32-20181004 ;) and the result is the same.
Monitor mode at different stages of the "paste" of basic lines
Monitor mode when trying to load the .bas file from the dsk created by the dsk manager
User avatar
Chema
Game master
Posts: 3013
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by Chema »

Can you attach the basic or dsk image? I can have a look.. seems to be an illegal instruction.
christian
Pilot Officer
Posts: 96
Joined: Sun Nov 24, 2013 9:58 pm

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by christian »

"paste" put the text in a queue buffer which is used by ay_ticktock() in file 8912.c.
If the queue buffer isn't empty, the CheckKbd routine in ROM is not really executed but simulated by Oricutron.
I think there is a bug in function ay_ticktock() when the IRQ is raised while the 6502 executes a JMP CheckKbd.
I opened an issue on GitHub.

Regarding the other issue, probably something wrong in the .bas file
User avatar
iss
Wing Commander
Posts: 1637
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: Oricutron 1.0 (EDIT: Now 1.2)

Post by iss »

Good find, christian!
I've committed to github your bug fix. It works for me well!

EDIT: Development builds updated here.

Available for download are:
Oricutron_lin64-20181128.zip
Oricutron_sdl2_macOS_i64-20181128.zip
Oricutron_sdl_macOS_i64-20181128.zip
Oricutron_win32-20181128.zip
Oricutron_win64-20181128.zip
Oricutron_android-20181006-1.apk
Post Reply