-------------------------------------------------------------------
ArmPit Scheme (aps) Version 080
(c) 2006-2018, Hubert Montas
Please read license (MIT) in source code file: aps_080.s
-------------------------------------------------------------------
This release of Armpit Scheme is designed to be assembled using
GNU binutils version 2.28.
Pre-built .bin files are included in the "bin" directory.
Corresponding .map files indicate addresses of some symbols.
Executing ./build_all rebuilds these .bin files, for all targets,
if desired.
Two types of binaries are generated: 1) board-specific bootloaders
(lsd), and; 2) armpit scheme executables (aps). There are 4 aps:
aps32.bin for Cortex-A5, A8 and A9
aps64.bin for Cortex-A53
apsT2.bin for Cortex-M4F & M7 where code runs from 0x00
apsT2Co2.bin for Cortex-M4F & M7 where code runs from 0x20000000
Depending on the specific board used, the board-specific bootloader
file (eg. MIMXRT1050_EVK_T2.bin, or BeagleBoneBlack_32.bin, or
A64_olinuxino_64.bin ...) is to be either: a) renamed and placed in
the first sector of a FAT16-formatted SD-card, or; b) copied (with
dd) into specific blocks of the SD_card, or; c) flashed into the
MCU's boot area. The appropriate armpit scheme executable is to be
copied to the first sector of the same FAT16-formatted SD-card.
On startup, the MCU will execute the bootloader's code which will
set-up PLLs, LEDs, external RAM and other relevant peripherals, and
will then load the armpit scheme executable from the SD-card and
start running it. A short log of the process is printed on the
default uart, for example:
lsd-080,mem,sd,loading aps64.bin,fpu,mmu,ints,usb
aps-080,loading rep,no startup file
ap>
The system has been designed so that formatting utilities are not
needed to post-process the binaries (upon rebuilding them), except
for the A64_Olinuxino and Parallela P1601. For these boards, an
ANSI-C program named bin2loadable.c (found in the util/ sub-folder
of the Allwinner/ or Xilinx/ folder of this distribution) is called
automatically by ./build_all to add a checksum or crc32 in the
header portion of the binary. The script ./utils_compile in the
aps_080 folder can be used to recompile bin2loadable.c, and
./utils_remove can be used to delete it.
-------------------------------------------------------------------
Visit armpit.sourceforge.net for more information.
-------------------------------------------------------------------