f256/distro/README
2024-04-30 20:02:22 -05:00

106 lines
4 KiB
Text

_____ ____ ____ __ _ _
| ___|___ \| ___| / /_ | | |_ ___ __ ___ _ __ ___ ___ ___
| |_ __) |___ \| '_ \ | | \ \ / / '_ ` _ \ _____| '_ ` _ \ / _ \/ __|
| _| / __/ ___) | (_) | | | |\ V /| | | | | |_____| | | | | | (_) \__ \
|_| |_____|____/ \___/ |_|_| \_/ |_| |_| |_| |_| |_| |_|\___/|___/
Welcome to LLVM-MOS for the Foenix F256 family of computers!
REQUIREMENTS
============
The compiler toolchain and utilites will run on recent versions of Windows,
Linux, and Apple Silicon MacOS. There is currently no support for Intel MacOS.
On Windows, you will need:
* WinRAR (https://www.rarlab.com/) or 7-Zip (https://www.7zip.com/) installed.
* Python 3.x (https://www.python.org/) installed and in your PATH.
INSTALLATION
============
Download the appropriate installation script:
* 64 bit Intel Windows: f256-install-windows.bat
* 64 bit Intel Linux: f256-install-linux.sh
* 64 bit ARM MacOS: f256-install-macos.sh
Create a new, empty directory, with no spaces in the name (or in the names of
the parent directories) and place this file into it. From that folder, execute
the script. It will download additional dependencies and install them. Aside
from some Python modules needed by FoenixManager, everything will stay inside
this new folder. Uninstalling is just a matter of deleting it.
CONFIGURATION
=============
You will need to modify foenixmgr.ini in the main installation folder. The
only thing that should need updated is the COM port used to communicate with
your F256. See: https://github.com/pweingar/FoenixMgr
ASSUMPTIONS
===========
This package was designed to be easy to use for new programmers. As such, some
liberties were taken that aren't entirely common practice. There are no
project files, makefiles, or other build configuration systems. The included
f256build and f256run scripts assume you have arranged your code in directories
like the example programs. The main requirement is that each program have its
own parent directory named for that program and inside it, a "src" directory
where the actual code lives. Example:
C:\FOENIX\CODE\MYPROGRAM\SRC
This would be a project named "MYPROGRAM" located in a CODE folder under the
folder you installed the toolkit in. (You do not have to locate your projects
under the toolkit folder.) To build this, you would run f256build from the
C:\FOENIX folder as follows:
f256build code\myprogram
UNIX folks, flip your slashes!
USAGE
=====
As shown above, f256build is used to build projects using the default linker
settings. If you do not have linker settings in your project already, the
defaults will be added (in a file named f256.ld in your project directory).
Unless you need to use embedded binary data in your project, the defaults are
all you need. Embedded data examples are included. See SPRITES and TILEMAP in
the EXAMPLES folder. More details can be found in the f256lib documentation.
When building your project f256build will create a ".builddir" folder in your
project directory. In here you will find copies of your source code that have
been modified by the overlay tool (for creating programs larger than 64k),
"trampoline" headers (again, generated by the overlay tool), intermediate
binary files, symbol listings, assembler source listings, memory maps,
additional linker information, and more. These can be safely ignored or used
to assist in debugging your application.
To run your program on the F256 using a USB debug cable, use f256run just as
you did f256build. Example:
f256run code\myprogram
If you do not have a debug cable, you can copy the PGZ for your program from
its project directory to the SD card used in your F256.
SUPPORT
=======
Drop by the Foenix Retro Systems Discord! https://discord.gg/e32efF7FGy I am
almost always online as "sduensin".
Additional information on the F256 family of computers can be found on the F256
wiki: http://wiki.f256foenix.com/
As a last resort, you can email me, Scott Duensing, at scott@kangaroopunch.com
and I'll probably ask you to join the Discord. :-)