Create Joey Projects Status

Scott Duensing 2023-04-28 21:59:29 +00:00
parent 3d2ad802a8
commit a5098ee15f

65
Joey-Projects-Status.md Normal file

@ -0,0 +1,65 @@
**JoeyLib** is just one of a suite of projects that make up the entire **JoeyLib** ecosystem. The current components are:
- **JoeyLib**: the programming library itself.
- [**JoeyDev**](https://skunkworks.kangaroopunch.com/skunkworks/joeydev): an IDE for managing and developing **JoeyLib**-based projects.
- [**JoeyBuild**](https://skunkworks.kangaroopunch.com/skunkworks/joeybuild): a virtual machine based build server that works with **JoeyDev** to perform the builds for all the supported targets.
### Why so complicated?
Cross-compiling for numerous platforms from a single system is not something that is easy to configure. Along the way, I've tried several different techniques to help get people up and running with **JoeyLib** and none of them have been as easy as I'd like. Instead of requiring people to use a particular Linux distro and attempt to troubleshoot all the required toolchains, the current setup allows developers to work from their preferred OS with a friendly GUI-based IDE. All the messy compiler infrastructure is handled by Kangaroo Punch. Or, if you prefer, you can run your own build VM on your system using the **JoeyBuild** scripts.
### Current Status & Future Plans
* JoeyBuild
* Project Types:
* "Application" projects (games, demos, apps, etc.) - **_Working_**
* "JoeyLib" projects (working on JoeyLib itself) - _In Progress_
* Targets:
* Apple IIgs:
* 65816 - **_Working_**
* Microsoft Windows:
* XP and later:
* x86 32 bit - **_Working_**
* x86 64 bit - **_Working_**
* ARM 64 bit - _Future_
* 9x:
* x86 32 bit - _Planning_
* 3.x
* x86 32 bit - _Planning_
* Apple Macintosh:
* Modern MacOS:
* x86 32 bit - **_Working_**
* x86 64 bit - **_Working_**
* ARM 64 bit - **_Working_**
* Classic MacOS:
* 68k - _Planning_
* PPC - _Planning_
* DOS:
* x86 32 bit - _Planning_
* BeOS / Haiku:
* x86 32 bit - _In Progress_
* x86 64 bit - _In Progress_
* IBM OS/2:
* x86 32 bit - _Future_
* Raspberry Pi:
* ARM 32 bit (Linux) - _In Progress_
* ARM 64 bit (Linux) - _In Progress_
* ARM 32 bit (Bare Metal) - _Planning_
* ARM 64 bit (Bare Metal) - _Planning_
* Atari ST:
* 68k - _Future_
* Commodore Amiga:
* 68k - _Future_
* Acorn:
* ARM (RISC OS) - _Future_
* Android:
* ARM 64 bit - _Future_
* iOS:
* ARM 64 bit - _Future_
Status Descriptions:
* Working: Implemented, functional. May need cleanup or a few features.
* In Progress: Implemented, not functional. Needs work.
* Planning: Researched, implementation details worked out. Needs coded.
* Future: Target is known to be able to support JoeyLib. Needs research.