|
|
|
|
|
Aprom - Documentation - apps
System:
gui - the gui core
shell - command prompt
text - IDE and text editor
zterm - graphic terminal
zgl_dev - software OpenGL device
xcmd - file manager
tools - main tools executable (like busybox)
exec - exec device for centralised starting of applications
Development:
fasm - Flat Assembler by Tomasz Grysztar, ported over.
pexv - linker from FASM output to native executable.
psr - pascal compiler
nano - pascal runtime library/device
Demos:
maxg - MAXGold game, a remake of old M.A.X. classic ( rumaxclub.ru )
se2 - a lousy remake of SimEarth
ca - cellular automaton
csg - 2D csg demo
drheap - memory use visualizer
multidim - 4D rendered
parts - particle system
sdi - just a graphics demo
sinw - draws a sine wave
sprite - lousy sprite demo
tex - procedural textures
worldis - voxel renderer
zgl_demo - OpenGL teapot demo
zgl_gears - OpenGL gears demo
Post/read comments
|
|
|
|
Aprom - Documentation - arostool
arostool is the program to compile AROS (aprom read only filesystem) images, commonly used as storage at boot.
Any file with lnk extension is treated as a symlink onto the object, provided by it's content.
Post/read comments
|
|
|
|
Aprom - Documentation - boot
The boot process for aedis kernel is this:
A multiboot loader, like GRUB, loads the kernel and several modules.
First of these modules is considered an executable, rest are considered ramdisks, and are allocated as rd1..rdxxx devices.
Init is assigned rd0 device, loaded as native executable and executed as task 1.
It is then free to set up whatever system structure it cares of.
In Aprom system the init loads up VFS, terminal, stdio and exec devices, file system drivers, then mount rd1 as root.
It creates a 3 Mb ramdisk with FAT12 filesystem and mounts it, floppies and CDROM's asked for or detected.
After that, it follow the runlevel loading procedures described in runlevel doc.
Post/read comments
|
|
|
|
Aprom - Documentation - exec
exec device is the central handler of file execution, can load native applications form memory or VFS, or call an interpreter by pattern matching.
Execution info is loaded from /cfg/exec.cfg
Format is "hex pattern:command:parameters"
For example:
23217368656C6C:/bin/shell:script
Means that if the file have 23 21 73 68 65 6C 6C bytes at it's start (#!shell in hex), then call /bin/shell script file_name.
Post/read comments
|
|
|
|
Aprom - Documentation - kernel
Aedis kernel is pretty small.
It knows about memory, tasks, devices and IPC primitives.
It exports some abstractions like process ancestry and affinity, parameter passing, native format execution, device tree and standard device access, etc.
It tracks resource allocations, like tasks, memory blocks, devices, ipc primitives, call gates, etc, and handle their deallocation.
It can be preemptive or cooperative.
Many of it's parameters are accessible as kernel registers.
It have no idea about Aprom system, and can be used as a core for a variety of system designs.
Post/read comments
|
|
|
|
Aprom - Documentation - runlevels
At boot user can pick a runlevel, that consists of a set of programs to be auto-run.
Runlevels are defined in /bin/run directory.
Each runlevel have it's directory as a number from 1 to 9 in that location.
Each of them can have a description in descr.txt that would be shown upon selection.
Everything in the selected runlevel's directory will be executed on launch.
Additionally, everything in the root of /bin/run will be executed regardless of selected runlevel.
Common practice is to locate symlinks in the runlevel directories, to save space and duplicity.
Runlevel could be picked automatically by /cfg/runlevel.cfg.
If it contains a number, that runlevel will be auto-choosen.
If it contains a -, then user will be asked for selection.
Post/read comments
|
|
|
|
Aprom - Documentation - shell
shell is the basic console interface.
On start it runs all in the /cfg/shellrun.sh
It have a limited script capability.
& after name means run in background.
Files with #!shell at start would be auto-executed as scripts in default exec configuration.
Post/read comments
|
|
|
|
Aprom - Documentation - text
Text is a mini-IDE for pascal and assembler languages.
F9 runs the buffer content.
Assembler or pascal is detected by file extension.
Post/read comments
|
|
|
|
Aprom - Documentation - zgl
ZGL is a software OpenGL device.
It registers itelf as a kernel device, and gives interface to whatever program asks for it.
It can draw 3D graphics into a buffer provided by the client process.
Post/read comments
|
|
|
|
Aprom - Documentation - zgui
ZGUI (reads "the gui") is the graphical server.
On start it auto-selects the 800x600x16 mode.
If it's executable is called guiman (usually as symlink in runlevels), then it would present a selection of graphic mode to the user.
Same selection would be presented if no viable default graphics mode was found.
Each task have it's own page to draw into, only one page can be shown at a time.
Pages are switched by rectangles in the upper-left side.
Tasks can however multiplex into windows if suitable driver is loaded.
Caps lock toggle tasks.
Win key toggles language.
Quick launch icons in the right corner can be set thru the /cfg/gui.cfg file.
Format is:
command:name:icon
Example:
/bin/xcmd:XC:/data/ico_xcmd.bmp
Starts /bin/xcmd, calls icon XC and loads /data/ico_xcmd.bmp as the icon.
Post/read comments
|
|
|
|
|