Page 1 of 1

OSDK 1.14

Posted: Sat Jun 08, 2019 10:25 am
by Dbug
After a few weeks of internal and external testing (thanks guys), I've finally decided to release the version, it's probably one of the largest update we had in quite some time, so there you go:

The version 1.14 of the OSDK is now available, with the following changes:

- Upgraded the C Compiler to version 1.36 by integrating all the latest changes from Fabrice Frances: Better code generator, float/int conversion fixes, better error handling.
- Changed the default compile optimization level from -O2 to -O3 - providing significantly better code generation, both in size and speed
- Upgraded Link65 to the version 0.66: The new macro file generate lines that contain multiple instructions, the linker stopped at the first encountered instruction, this new version correctly parses that
- The code generator macro file is now compatible with both XA and FRASM
- Updated FilePack version number to 0.2 to 0.5 after somebody reported an issue with a veryyyyyyy old version which happened to have the same version number of a much more recent one.
- Tap2Dsk 2.1.1: Added a fix to avoid the tool to stay stuck on tapes with incorrect size specified in their headers
- Fixed a problem with itoa not correctly processing negative numbers (the "-" was overwritten by the number printing routine). Also took the opportunity to optimize the code (removed the jsr itoa / rts as well as an unnecessary x register clearing (it's set to zero when we are back from udiv10)
- Added support for %u to printf
- A new environment variable, OSDKVERSION contains the version number of the SDK, it is shown when building a program

As usual, the OSDK is available on the download page at

As usual, please report any issue, changing things like the Linker or build script tend to have side effects for people who used different projects setups

Re: OSDK 1.14

Posted: Wed Jul 10, 2019 12:29 am
by NekoNoNiaow
Great, thanks!
Now using it as my official version (after several months off the Oric!).

Re: OSDK 1.14

Posted: Wed Jul 10, 2019 2:35 am
by NekoNoNiaow
(From viewtopic.php?f=23&t=1976):
Dbug wrote:
Mon Jul 08, 2019 9:05 am
Retroric found that there was a bug in the OSDK 1.14 when using -O3, so if you were planning to code anything, either force -O2 or use the OSDK 1.13 instead.
What does that bug consist of and how is it triggered?
The added oomph brought by -O3 is really useful to me so I would gladly keep using -O3 if I can guarantee that I will not hit that bug with my code. ;)

Re: OSDK 1.14

Posted: Tue Jul 16, 2019 5:53 am
by NekoNoNiaow
And of course, a few days after writing this I find a bug. ;)
Submitted on the OSDK bug report form.

(Thankfully, commenting/adding some lines randomly seems to remove it so I can still code!)

Re: OSDK 1.14

Posted: Tue Jul 16, 2019 10:01 am
by Dbug
well, old versions are available and installable side by side :)
(I got the report)

Re: OSDK 1.14

Posted: Tue Jul 23, 2019 12:13 pm
by waskol
Hello Dbug,

I see that in OSDK you did not update taptap.exe to it's latest version, why ? Any bug or issue ?

It is avilable from my github (sources and binary) :

Code: Select all

Syntax :
taptap [<command> [<parameter1> <parameter1> <parameter1> <parameter1>]]
Syntax of commands is case insensitive.
Please, separate parameters with spaces or tabs. Use double quotation
marks to wrap multiple words as one parameter (such as long file names
containing spaces).

List of commands :
help [<command>] : Without the <command> parameter, displays this help screen.
                   With the <command> parameter, displays extended help
                   on the specified command.
                   example : taptap help cat

cat ............ : Displays the catalog of tape.
ren ............ : Renames an Oric file in a .tap File.
copy............ : Copies one or all files from a .tap file to some separate .tap file(s).
extract......... : Extracts one or all files from a .tap file to some separate .tap file(s).
del............. : Deletes a file from a .tap file.
split........... : Splits .tap file into separate files.
join............ : Merge several .tap Files into one .tap file.
AutoOn ......... : Sets Auto run On
AutoOff ........ : Sets Auto run Off