Questions, bug reports, features requests, ... about the Oric Software Development Kit. Please indicate clearly in the title the related element (OSDK for generic questions, PictConv, FilePack, XA, Euphoric, etc...) to make it easy to locate messages.
Nothing specially exciting in this new version, but I need to make sure the core of the system is still working fine, there was many small changes and fixes I imported from multiple sources (like fixes made on my laptop while in holidays, etc...) which had never made it to the repository.
So, here is the list of changes:
Upgraded Bas2Tap to version 2.2, with improved error messages, and support for easily importing and calling assembler modules
Upgraded XA to the version 2.2.6 which now returns an Error code value 1 if a source file is missing
Upgraded FloppyBuilder to version 1.3 (fixed some issues with relative paths in the description file)
Added two sample programs in sample\mixed\basic_with_assembler to show how to mix assembly code and BASIC and one in sample\basic to demonstrate the use of symbols in a BASIC program
Mixing ASM and BASIC was so complicated up to now .. Very interesting feature.
My only disappointment is that the monitor of the Oricutron provided with the OSDK is still not usable for non-qwerty keyboard owners (that I belong to).
For people facing the same issue, I want to tell that my debug sessions allways start with:
i have installed osdk 1.20 and my antivirus (g-data) found this (see attached picture)
That's normal unfortunately.
Basically modern antivirus are shit, and that's not really there fault because it has become impossible to make a proper virus detection, so they are using heuristics, which includes "Oh, nobody even ran this program, so it must be dangerous".
A way to mitigate that is to digitally sign an executable, but that requires to have a code signing certificate, and that costs at a minimum 50 euros a year.
So yes, these are false positives, they were rebuilt with Visual Studio like one hour ago from the source code from the SVN server.
My only disappointment is that the monitor of the Oricutron provided with the OSDK is still not usable for non-qwerty keyboard owners (that I belong to).
That's indeed an issue, not sure if @iss has made any progress on that?
Dbug wrote: ↑Mon Jan 16, 2023 7:58 am
Maybe I could add these instructions on osdk.org
Sure. They work but they should be considered more as hack.
What I can do is:
- Add to the download page a link to the SVN repository location with the OSDK
- Add a "how to build the OSDK" page, with a section on how to do it with Visual Studio and one for Linux with a link to the "use OSDK under Linux" thread in case things don't work as expected.
It's not a professional system, it's not like we had to have things work 100%, but at least that would make it easier for people to find out the relevant information.
bodhi@Linux:~$ mkdir ~/OSDK-build
bodhi@Linux:~$ cd ~/OSDK-build
bodhi@Linux:~/OSDK-build$ mkdir ~/OSDK-build
mkdir: das Verzeichnis »/home/bodhi/OSDK-build“ kann nicht angelegt werden: Die Datei existiert bereits
bodhi@Linux:~/OSDK-build$ chmod +x doit-osdk.sh
bodhi@Linux:~/OSDK-build$ ./doit-osdk.sh
./doit-osdk.sh: 6: svn: not found
./doit-osdk.sh: 9: cd: can't cd to pc/shared_libraries/unittestcpp
make: *** Keine Regel, um „clean“ zu erstellen. Schluss.
Ingnoring the error :)
./doit-osdk.sh: 14: cd: can't cd to /home/bodhi/OSDK-build/pc/tools/osdk/main
touch: 'compiler/sources/debug.c' kann nicht berührt werden: Datei oder Verzeichnis nicht gefunden
make: *** Keine Regel, um „clean“ zu erstellen. Schluss.
cp: Aufruf von stat für 'Osdk/_final_/include' nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: Aufruf von stat für 'Osdk/_final_/lib' nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: Aufruf von stat für 'Osdk/_final_/macro' nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: Aufruf von stat für 'Osdk/_final_/macro/MACRO.H' nicht möglich: Datei oder Verzeichnis nicht gefunden
dos2unix: Datei osdk-linux/bin/doit-osdk.sh wird ins Unix-Format umgewandelt …
DONE! Your OSDK for Linux is in: /home/bodhi/OSDK-build/osdk-linux/
bodhi@Linux:~/OSDK-build$ ./doit-osdk.sh
./doit-osdk.sh: 6: svn: not found
./doit-osdk.sh: 9: cd: can't cd to pc/shared_libraries/unittestcpp
make: *** Keine Regel, um „clean“ zu erstellen. Schluss.
Ingnoring the error :)
./doit-osdk.sh: 14: cd: can't cd to /home/bodhi/OSDK-build/pc/tools/osdk/main
touch: 'compiler/sources/debug.c' kann nicht berührt werden: Datei oder Verzeichnis nicht gefunden
make: *** Keine Regel, um „clean“ zu erstellen. Schluss.
cp: Aufruf von stat für 'Osdk/_final_/include' nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: Aufruf von stat für 'Osdk/_final_/lib' nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: Aufruf von stat für 'Osdk/_final_/macro' nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: Aufruf von stat für 'Osdk/_final_/macro/MACRO.H' nicht möglich: Datei oder Verzeichnis nicht gefunden
dos2unix: Datei osdk-linux/bin/doit-osdk.sh wird ins Unix-Format umgewandelt …
DONE! Your OSDK for Linux is in: /home/bodhi/OSDK-build/osdk-linux/
bodhi@Linux:~/OSDK-build$ cd Test/Compis/Oric
bash: cd: Test/Compis/Oric: Datei oder Verzeichnis nicht gefunden
bodhi@Linux:~/OSDK-build$ cd
bodhi@Linux:~$ cd Test/Compis/Oric/osdk_1_19
bodhi@Linux:~/Test/Compis/Oric/osdk_1_19$ wine bas2tap -b2t1 Robot Substraction.txt Robot Substraction.tap
0039:err:ntoskrnl:ZwLoadDriver failed to create driver L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\winio64": c0000142
0009:err:module:__wine_process_init L"C:\\windows\\system32\\bas2tap.exe" not found
bodhi@Linux:~/Test/Compis/Oric/osdk_1_19$ wine bas2tap -b2t1 Robot Substraction.txt Robot_Substraction.tap
003a:err:ntoskrnl:ZwLoadDriver failed to create driver L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\winio64": c0000142
0009:err:module:__wine_process_init L"C:\\windows\\system32\\bas2tap.exe" not found
bodhi@Linux:~/Test/Compis/Oric/osdk_1_19$ cd Bin
bodhi@Linux:~/Test/Compis/Oric/osdk_1_19/Bin$ wine bas2tap -b2t1 Robot Substraction.txt Robot_Substraction.tap
003a:err:ntoskrnl:ZwLoadDriver failed to create driver L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\winio64": c0000142
Bas2Tap - Version 2.001 - This program is a part of the OSDK (http://www.osdk.org)
Authors:
Fabrice Frances (original version)
Mickael Pointier (extended BASIC features)
Purpose:
Converting a text file containing a BASIC source code to a binary
encoded TAPE file that can be loaded using the CLOAD command.
(and the opposite operation as well).
Parameters:
<options> <sourcefile> <destinationfile>
Options:
-b2t[0|1] for converting to tape format with autorun (1) or not (0)
-t2b for converting from tape format text
-color[0|1] for enabling colored comments
-optimize[0|1] for allowing for optimizations (disabling comments, etc...)
Source Commands:
#labels to enable labels and auto numbering
#optimize to enable optimization
#defines to define symbols
'tilde' to escape sequences and 'paragraph' to insert current line number
Example:
Bas2Tap -b2t1 final.txt osdk.tap
Bas2Tap -t2b osdk.tap program.txt
bodhi@Linux:~/Test/Compis/Oric/osdk_1_19/Bin$ wine bas2tap -b2t1 Robot_Substraction.txt Robot_Substraction.tap
003a:err:ntoskrnl:ZwLoadDriver failed to create driver L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\winio64": c0000142
Bas2Tap: Unable to load source file
bodhi@Linux:~/Test/Compis/Oric/osdk_1_19/Bin$ wine bas2tap -b2t1 Robot_Subtraction.txt Robot_Substraction.tap
0039:err:ntoskrnl:ZwLoadDriver failed to create driver L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\winio64": c0000142
Bas2Tap: Missing line number in file Robot_Subtraction.txt line 68
0041:err:module:__wine_process_init L"C:\\windows\\Microsoft.NET\\Framework64\\v4.0.30319\\mscorsvw.exe" not found
bodhi@Linux:~/Test/Compis/Oric/osdk_1_19/Bin$ wine bas2tap -b2t1 Robot_Subtraction.txt Robot_Substraction.tap
0039:err:ntoskrnl:ZwLoadDriver failed to create driver L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\winio64": c0000142
bodhi@Linux:~/Test/Compis/Oric/osdk_1_19/Bin$ wine bas2tap -b2t1 Robot_Subtraction.txt Robot_Substraction.tap
003c:err:ntoskrnl:ZwLoadDriver failed to create driver L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\winio64": c0000142
bodhi@Linux:~/Test/Compis/Oric/osdk_1_19/Bin$ wine bas2tap -b2t1 Robot_Subtraction.txt Robot_Substraction.tap
0039:err:ntoskrnl:ZwLoadDriver failed to create driver L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\winio64": c0000142
bodhi@Linux:~/Test/Compis/Oric/osdk_1_19/Bin$ wine bas2tap -b2t1 Robot_Subtraction.txt Robot_Substraction.tap
0038:err:ntoskrnl:ZwLoadDriver failed to create driver L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\winio64": c0000142
bodhi@Linux:~/Test/Compis/Oric/osdk_1_19/Bin$ wine bas2tap -b2t1 Robot_Subtraction.txt Robot_Substraction.tap
0039:err:ntoskrnl:ZwLoadDriver failed to create driver L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\winio64": c0000142
bodhi@Linux:~/Test/Compis/Oric/osdk_1_19/Bin$ 0015:err:service:process_send_command service protocol error - failed to read pipe r = 0 count = 0!
wine bas2tap -b2t1 Robot_Subtraction.txt Robot_Substraction.tap
0039:err:ntoskrnl:ZwLoadDriver failed to create driver L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\winio64": c0000142
bodhi@Linux:~/Test/Compis/Oric/osdk_1_19/Bin$ cd
bodhi@Linux:~$ cd OSDK-build/oricsdk-public_pc_tools_osdk_main-r1602/main/
bodhi@Linux:~/OSDK-build/oricsdk-public_pc_tools_osdk_main-r1602/main$ make
make[1]: Verzeichnis „/home/bodhi/OSDK-build/oricsdk-public_pc_tools_osdk_main-r1602/main/common“ wird betreten
Makefile:1: ../../../rules.mk: Datei oder Verzeichnis nicht gefunden
make[1]: *** Keine Regel, um „../../../rules.mk“ zu erstellen. Schluss.
make[1]: Verzeichnis „/home/bodhi/OSDK-build/oricsdk-public_pc_tools_osdk_main-r1602/main/common“ wird verlassen
make: *** [Makefile:11: all] Fehler 2
bodhi@Linux:~/OSDK-build/oricsdk-public_pc_tools_osdk_main-r1602/main$ ./configure
bash: ./configure: Datei oder Verzeichnis nicht gefunden
bodhi@Linux:~/OSDK-build/oricsdk-public_pc_tools_osdk_main-r1602/main$ cd
bodhi@Linux:~$ cd OSDK-build
bodhi@Linux:~/OSDK-build$ ./doit-osdk
bash: ./doit-osdk: Datei oder Verzeichnis nicht gefunden
bodhi@Linux:~/OSDK-build$ ls
doit-osdk.sh
oricsdk-public_pc_tools_osdk_main-r1602
oricsdk-public_pc_tools_osdk_main-r1602.zip
osdk-linux
bodhi@Linux:~/OSDK-build$ ./doit-osdk.sh
./doit-osdk.sh: 6: svn: not found
./doit-osdk.sh: 9: cd: can't cd to pc/shared_libraries/unittestcpp
make: *** Keine Regel, um „clean“ zu erstellen. Schluss.
Ingnoring the error :)
./doit-osdk.sh: 14: cd: can't cd to /home/bodhi/OSDK-build/pc/tools/osdk/main
touch: 'compiler/sources/debug.c' kann nicht berührt werden: Datei oder Verzeichnis nicht gefunden
make: *** Keine Regel, um „clean“ zu erstellen. Schluss.
cp: Aufruf von stat für 'Osdk/_final_/include' nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: Aufruf von stat für 'Osdk/_final_/lib' nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: Aufruf von stat für 'Osdk/_final_/macro' nicht möglich: Datei oder Verzeichnis nicht gefunden
cp: Aufruf von stat für 'Osdk/_final_/macro/MACRO.H' nicht möglich: Datei oder Verzeichnis nicht gefunden
dos2unix: Datei osdk-linux/bin/doit-osdk.sh wird ins Unix-Format umgewandelt …
DONE! Your OSDK for Linux is in: /home/bodhi/OSDK-build/osdk-linux/
bodhi@Linux:~/OSDK-build$ ./doit-osdk.sh
Dbug wrote: ↑Mon Jan 16, 2023 2:11 pmWhat I can do is:
- Add to the download page a link to the SVN repository location with the OSDK
- Add a "how to build the OSDK" page, with a section on how to do it with Visual Studio and one for Linux with a link to the "use OSDK under Linux" thread in case things don't work as expected.
There is already such topic in documentation/doc_installation.htm and maybe for now the best is to put a link to the forum post.
IMHO it will be not to difficult to fix the "original" Makefiles made by: