FreeBASIC and OMA games for RISC OS =================================== This directory contains my native 32-bit ARM FreeBASIC package for RISC OS, the support packages it needs, and RISC OS packages for the OMA games, OpenSlicks, fb-VNC, and the OpenSesh MIDI editor. These ZIP files are RiscPkg packages. They contain RISC OS file types and package metadata, so do not unpack them on Windows or Linux and copy the loose files over. Install the ZIPs with PackMan or another RiscPkg-compatible package manager. That preserves the file types and puts applications and modules in the right places. Installing the compiler ----------------------- A complete compiler installation uses four packages from this directory: 1. SharedUnixLibrary_1.16-1.zip 2. DRenderer_0.56-r-1.zip 3. GCC4_4.7.4-Rel6-1.zip 4. FreeBASIC_1.20.3-1.zip SharedUnixLibrary supplies the UnixLib runtime module. DRenderer supplies the audio module used by sfxlib. GCC4 supplies the native GCC, assembler, linker and other build tools. The FreeBASIC package supplies fbc, its headers and its libraries. Installing FreeBASIC alone is not enough to compile a program. Install the packages in that order if the package manager is not resolving local dependencies for you. Reboot after installing the system modules. Then double-click !GCC once and double-click !FreeBASIC once. This boots their command-line environments and adds fbc to Run$Path. Open a TaskWindow or press F12 and compile a program with: fbc hello.bas -x hello The result is a native RISC OS AIF program. The compiler targets the 32-bit ARMv4, soft-float ABI used by GCCSDK and UnixLib, so it works on StrongARM RiscPC systems as well as newer compatible RISC OS machines. Clean installation check ------------------------ On 31 August 2026 I tested the published packages on a new copy of the RISC OS Open 5.30 HardDisc4 image in RPCEmu 0.9.5. The test image contained only the files from the four published package ZIPs. The installed SharedUnixLibrary and DRenderer modules loaded, GCC ran, and the installed fbc compiled and ran a new hello-world program. I also compiled the single-threaded and multithreaded media libraries, opened windowed and full-screen graphics modes, used the RISC OS DigitalRenderer sound driver, and compiled and ran the maths test. I installed each of the nine published game packages on the same clean base and launched it for an eight-second liveness check. All nine remained active. That part of the test was headless, so it proves that the applications install and start without immediately failing; it was not a visual comparison of the rendered frames. Installing a game ----------------- To run a game, you only need these three packages: 1. SharedUnixLibrary_1.16-1.zip 2. DRenderer_0.56-r-1.zip 3. The ZIP for the game you want GCC4 and FreeBASIC are not required just to play a packaged game. Install the two modules first, reboot, then install the game package. The game appears as an application below Apps.Games; double-click it to start it. The OpenSlicks package includes a small original test track. It does not contain the original Slicks 'n Slide data. Copy legally owned .SS or .SZT tracks into the application's TRACKS directory to add courses. Installing fb-VNC ----------------- The viewer is in: FBVNC_0.1-1.zip It needs the same two runtime modules as the games: 1. SharedUnixLibrary_1.16-1.zip 2. DRenderer_0.56-r-1.zip 3. FBVNC_0.1-1.zip Install those packages in that order if the package manager is not resolving local dependencies, then reboot and run !fbVNC below Apps.Internet. GCC4 and FreeBASIC are not required to use the viewer. They are only needed if you want to rebuild it. The application opens a connection window. A server can be written as an address, a VNC display, or a literal TCP port: 192.168.1.10 192.168.1.10:1 192.168.1.10::5900 A single colon selects a display number. Two colons select the literal port. This is the serial gfxlib2 build. The current RISC OS Wimp driver does not support resizable gfxlib windows or page switching, so the viewer uses a fixed 320 by 240, single-page window there. It can still connect to a larger remote desktop and scale it into that window, but keep the remote reasonably small on a Risc PC class machine because the complete 32-bit framebuffer is kept in memory. On 1 September 2026 I installed SharedUnixLibrary, DRenderer and this fb-VNC package on a clean RISC OS Open 5.30 HardDisc4 image in RPCEmu. The image did not contain GCC4 or FreeBASIC. I configured rpcem0 through RPCEmu's NAT, connected the packaged viewer to the VNC test server on my PC, completed the RFB handshake, and received the 1920 by 1080 Raw framebuffer. This test used the same FBVNC_0.1-1.zip published here. Classic VNC authentication does not encrypt the session. I only use this viewer on a trusted LAN or through a tunnel. Installing OpenSesh ------------------- The editor is in: OpenSesh_0.9.0-2.zip It needs the same two runtime modules as the games: 1. SharedUnixLibrary_1.16-1.zip 2. DRenderer_0.56-r-1.zip 3. OpenSesh_0.9.0-2.zip Install those packages in that order if the package manager is not resolving local dependencies, then reboot and run !OpenSesh below Apps.Music. GCC4 and FreeBASIC are not required to use the editor. They are only needed if you want to rebuild it. OpenSesh can create, open, edit, play, and export MIDI files. The software synth is included, but the package does not include a SoundFont. This port does not have a RISC OS hardware-MIDI backend yet, so the external MIDI Input and MIDI Output device lists are empty for now. On 1 September 2026 I installed SharedUnixLibrary, DRenderer, and this OpenSesh package on a clean RISC OS Open 5.30 HardDisc4 image in RPCEmu. The image did not contain GCC4 or FreeBASIC. The editor remained active for the 20-second check and the captured screen showed the score and mixer interface. The RISC OS backend fits an oversized initial request to the current desktop, which gives this 800 by 600 test desktop a usable 640 by 480 editor window. Checksums --------- SHA256SUMS contains the SHA-256 hash of every package and this README. The manifest does not hash itself. Check the download before passing it to RISC OS. end of readme.txt