Renamed readme
This commit is contained in:
96
.cproject
Normal file
96
.cproject
Normal file
@@ -0,0 +1,96 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<?fileVersion 4.0.0?>
|
||||
|
||||
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
|
||||
<storageModule moduleId="org.eclipse.cdt.core.settings">
|
||||
<cconfiguration id="cdt.managedbuild.config.gnu.cross.exe.debug.2005394801">
|
||||
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.cross.exe.debug.2005394801" moduleId="org.eclipse.cdt.core.settings" name="Debug">
|
||||
<externalSettings/>
|
||||
<extensions>
|
||||
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
</extensions>
|
||||
</storageModule>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.cross.exe.debug.2005394801" name="Debug" parent="cdt.managedbuild.config.gnu.cross.exe.debug">
|
||||
<folderInfo id="cdt.managedbuild.config.gnu.cross.exe.debug.2005394801." name="/" resourcePath="">
|
||||
<toolChain id="cdt.managedbuild.toolchain.gnu.cross.exe.debug.1400950274" name="Cross GCC" superClass="cdt.managedbuild.toolchain.gnu.cross.exe.debug">
|
||||
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="cdt.managedbuild.targetPlatform.gnu.cross.497470371" isAbstract="false" osList="all" superClass="cdt.managedbuild.targetPlatform.gnu.cross"/>
|
||||
<builder buildPath="${workspace_loc:/retrobsd_Prod/Debug}" id="cdt.managedbuild.builder.gnu.cross.1169681113" managedBuildOn="true" name="Gnu Make Builder.Debug" superClass="cdt.managedbuild.builder.gnu.cross"/>
|
||||
<tool id="cdt.managedbuild.tool.gnu.cross.c.compiler.743530851" name="Cross GCC Compiler" superClass="cdt.managedbuild.tool.gnu.cross.c.compiler">
|
||||
<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.option.optimization.level.2088809317" superClass="gnu.c.compiler.option.optimization.level" valueType="enumerated"/>
|
||||
<option id="gnu.c.compiler.option.debugging.level.1691651993" superClass="gnu.c.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
|
||||
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1173201816" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
|
||||
</tool>
|
||||
<tool id="cdt.managedbuild.tool.gnu.cross.cpp.compiler.238529657" name="Cross G++ Compiler" superClass="cdt.managedbuild.tool.gnu.cross.cpp.compiler">
|
||||
<option id="gnu.cpp.compiler.option.optimization.level.1337147306" superClass="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>
|
||||
<option id="gnu.cpp.compiler.option.debugging.level.155295277" superClass="gnu.cpp.compiler.option.debugging.level" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/>
|
||||
</tool>
|
||||
<tool id="cdt.managedbuild.tool.gnu.cross.c.linker.336260163" name="Cross GCC Linker" superClass="cdt.managedbuild.tool.gnu.cross.c.linker">
|
||||
<inputType id="cdt.managedbuild.tool.gnu.c.linker.input.1635633583" superClass="cdt.managedbuild.tool.gnu.c.linker.input">
|
||||
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
|
||||
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
|
||||
</inputType>
|
||||
</tool>
|
||||
<tool id="cdt.managedbuild.tool.gnu.cross.cpp.linker.1561906147" name="Cross G++ Linker" superClass="cdt.managedbuild.tool.gnu.cross.cpp.linker"/>
|
||||
</toolChain>
|
||||
</folderInfo>
|
||||
</configuration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
|
||||
</cconfiguration>
|
||||
<cconfiguration id="cdt.managedbuild.config.gnu.cross.exe.release.143715626">
|
||||
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.cross.exe.release.143715626" moduleId="org.eclipse.cdt.core.settings" name="Release">
|
||||
<externalSettings/>
|
||||
<extensions>
|
||||
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
</extensions>
|
||||
</storageModule>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.cross.exe.release.143715626" name="Release" parent="cdt.managedbuild.config.gnu.cross.exe.release">
|
||||
<folderInfo id="cdt.managedbuild.config.gnu.cross.exe.release.143715626." name="/" resourcePath="">
|
||||
<toolChain id="cdt.managedbuild.toolchain.gnu.cross.exe.release.50003903" name="Cross GCC" superClass="cdt.managedbuild.toolchain.gnu.cross.exe.release">
|
||||
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="cdt.managedbuild.targetPlatform.gnu.cross.706384764" isAbstract="false" osList="all" superClass="cdt.managedbuild.targetPlatform.gnu.cross"/>
|
||||
<builder buildPath="${workspace_loc:/retrobsd_Prod/Release}" id="cdt.managedbuild.builder.gnu.cross.1884783820" managedBuildOn="true" name="Gnu Make Builder.Release" superClass="cdt.managedbuild.builder.gnu.cross"/>
|
||||
<tool id="cdt.managedbuild.tool.gnu.cross.c.compiler.422405783" name="Cross GCC Compiler" superClass="cdt.managedbuild.tool.gnu.cross.c.compiler">
|
||||
<option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.option.optimization.level.1854146073" superClass="gnu.c.compiler.option.optimization.level" valueType="enumerated"/>
|
||||
<option id="gnu.c.compiler.option.debugging.level.1459044258" superClass="gnu.c.compiler.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/>
|
||||
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.307795853" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
|
||||
</tool>
|
||||
<tool id="cdt.managedbuild.tool.gnu.cross.cpp.compiler.1769428831" name="Cross G++ Compiler" superClass="cdt.managedbuild.tool.gnu.cross.cpp.compiler">
|
||||
<option id="gnu.cpp.compiler.option.optimization.level.21652725" superClass="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
|
||||
<option id="gnu.cpp.compiler.option.debugging.level.68635301" superClass="gnu.cpp.compiler.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
|
||||
</tool>
|
||||
<tool id="cdt.managedbuild.tool.gnu.cross.c.linker.1489596080" name="Cross GCC Linker" superClass="cdt.managedbuild.tool.gnu.cross.c.linker">
|
||||
<inputType id="cdt.managedbuild.tool.gnu.c.linker.input.853204976" superClass="cdt.managedbuild.tool.gnu.c.linker.input">
|
||||
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
|
||||
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
|
||||
</inputType>
|
||||
</tool>
|
||||
<tool id="cdt.managedbuild.tool.gnu.cross.cpp.linker.1293763598" name="Cross G++ Linker" superClass="cdt.managedbuild.tool.gnu.cross.cpp.linker"/>
|
||||
</toolChain>
|
||||
</folderInfo>
|
||||
</configuration>
|
||||
</storageModule>
|
||||
</cconfiguration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<project id="retrobsd_Prod.cdt.managedbuild.target.gnu.cross.exe.276914627" name="Executable" projectType="cdt.managedbuild.target.gnu.cross.exe"/>
|
||||
</storageModule>
|
||||
<storageModule moduleId="scannerConfiguration">
|
||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
|
||||
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.cross.exe.debug.2005394801;cdt.managedbuild.config.gnu.cross.exe.debug.2005394801.;cdt.managedbuild.tool.gnu.cross.c.compiler.743530851;cdt.managedbuild.tool.gnu.c.compiler.input.1173201816">
|
||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
|
||||
</scannerConfigBuildInfo>
|
||||
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.cross.exe.release.143715626;cdt.managedbuild.config.gnu.cross.exe.release.143715626.;cdt.managedbuild.tool.gnu.cross.c.compiler.422405783;cdt.managedbuild.tool.gnu.c.compiler.input.307795853">
|
||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
|
||||
</scannerConfigBuildInfo>
|
||||
</storageModule>
|
||||
</cproject>
|
||||
130
README
130
README
@@ -1,130 +0,0 @@
|
||||
This is the RetroBSD source directory.
|
||||
|
||||
|
||||
Source Roadmap
|
||||
~~~~~~~~~~~~~~
|
||||
bin User commands.
|
||||
etc Template files for /etc.
|
||||
include System include files.
|
||||
lib System libraries.
|
||||
libexec System binaries.
|
||||
sbin System administration commands.
|
||||
share Shared resources.
|
||||
sys Kernel sources.
|
||||
tools Build tools and simulators.
|
||||
|
||||
|
||||
Supported hardware
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
* chipKIT Max32 board.
|
||||
* Sparkfun UBW32 board.
|
||||
* Maximite and Colour Maximite computers.
|
||||
* Microchip Explorer 16 board, with PIC32 CAN-USB plug-in module and SD & MMC pictail.
|
||||
* Microchip PIC32 USB or Ethernet Starter Kit, with I/O Expansion board and SD & MMC pictail.
|
||||
* Olimex Duinomite, Duinomite-Mini and Duinomite-Mega boards.
|
||||
* Olimex Pinguino-Micro board with PIC32MX795F512H microcontroller.
|
||||
* eflightworks DIP board.
|
||||
|
||||
|
||||
Build
|
||||
~~~~~
|
||||
By default, the system is configured for the Max32 board.
|
||||
To select another target board, edit a top-level Makefile
|
||||
and change a TARGET value under section "Select target board":
|
||||
|
||||
TARGET = $(UBW32) # for the UBW32 board with USB console
|
||||
TARGET = $(UBW32UART) # for the UBW32 board with UART console
|
||||
TARGET = $(MAXIMITE) # for the Maximite board
|
||||
TARGET = $(MAXCOLOR) # for the Colour Maximite board
|
||||
TARGET = $(EXPLORER16) # for the Explorer 16 board
|
||||
TARGET = $(STARTERKIT) # for the PIC32 USB or Ethernet Starter Kit
|
||||
TARGET = $(MAX32) # default
|
||||
TARGET = $(DUINOMITE) # for the Duinomite board
|
||||
TARGET = $(PINGUINO) # for the Pinguino-Micro board
|
||||
TARGET = $(DIP) # for the DIP board
|
||||
|
||||
You can also change a desired filesystem size and swap area size,
|
||||
as required. Default is:
|
||||
|
||||
FS_KBYTES = 16384
|
||||
SWAP_KBYTES = 2048
|
||||
|
||||
To compile the kernel and build a filesystem image, run:
|
||||
|
||||
make
|
||||
|
||||
A resulting root filesystem image is in file `filesys.img`.
|
||||
A kernel is in file `unix.hex` in your target board subdirectory.
|
||||
|
||||
|
||||
Filesystem image
|
||||
~~~~~~~~~~~~~~~~
|
||||
You need to put a filesystem image on a SD card. On Windows, use
|
||||
Win32DiskImager utility (https://launchpad.net/win32-image-writer/+download).
|
||||
On Linux, run:
|
||||
|
||||
sudo dd if=filesys.img of=/dev/XYZ
|
||||
|
||||
Here `XYZ` is a device name of SD card, as recognized by Linux (sdb in my case).
|
||||
|
||||
|
||||
Install kernel
|
||||
~~~~~~~~~~~~~~
|
||||
Kernel image should be written to PIC32 flash memory. The procedure depends
|
||||
on a board used.
|
||||
|
||||
Max32 board:
|
||||
cd sys/pic32/ubw32
|
||||
AVRTOOLS=/Applications/Mpide.app/Contents/Resources/Java/hardware/tools
|
||||
$AVRTOOLS/bin/avrdude -C$AVRTOOLS/etc/avrdude.conf -c stk500v2 -p pic32 \
|
||||
-P /dev/tty.usbserial-* -b 115200 -v -U flash:w:unix.hex:i
|
||||
|
||||
Here you need to change AVRTOOLS path and tty name according to your system.
|
||||
|
||||
UBW32 board:
|
||||
Use a pic32prog utility (http://code.google.com/p/pic32prog/)
|
||||
and a USB cable to install a kernel:
|
||||
|
||||
pic32prog sys/pic32/ubw32/unix.hex
|
||||
|
||||
Maximite:
|
||||
Use the bootload program for Windows, available for download by link:
|
||||
http://geoffg.net/Downloads/Maximite/Maximite_Update_V2.7B.zip
|
||||
|
||||
Explorer 16 board:
|
||||
There is an auxiliary PIC18 chip on the Explorer 16 board, which can be
|
||||
used as a built-in programmer device. You will need a PICkit 2 adapter
|
||||
to install a needed firmware, as described in article:
|
||||
http://www.paintyourdragon.com/?p=51
|
||||
(section "Hack #2: Lose the PICkit 2, Save $35").
|
||||
This should be done only once.
|
||||
|
||||
Then, you can use a pic32prog utility (http://code.google.com/p/pic32prog/)
|
||||
and a USB cable to install a kernel:
|
||||
|
||||
pic32prog sys/pic32/explorer16/unix.hex
|
||||
|
||||
PIC32 Starter Kit:
|
||||
Use PICkit 2 adapter and software to install a boot loader from
|
||||
file `sys/pic32/starter-kit/boot.hex`. This should be done only once.
|
||||
|
||||
Then, you can use a pic32prog utility (http://code.google.com/p/pic32prog/)
|
||||
and a USB cable to install a kernel:
|
||||
|
||||
pic32prog sys/pic32/starter-kit/unix.hex
|
||||
|
||||
|
||||
Simulator
|
||||
~~~~~~~~~
|
||||
You can use a MIPS32 simulator to develop a debug a RetroBSD software,
|
||||
without a need for hardware board. By default, a simulator is configured
|
||||
to imitate a Max32 board. To build it:
|
||||
|
||||
cd tools/virtualmips
|
||||
make
|
||||
|
||||
Run it:
|
||||
|
||||
./pic32
|
||||
|
||||
Configuration of simulated board is stored in file `pic32_max32.conf`.
|
||||
132
README.md
132
README.md
@@ -1,4 +1,130 @@
|
||||
retrobsd
|
||||
========
|
||||
This is the RetroBSD source directory.
|
||||
|
||||
Main RetroBSD Operating System
|
||||
|
||||
Source Roadmap
|
||||
~~~~~~~~~~~~~~
|
||||
bin User commands.
|
||||
etc Template files for /etc.
|
||||
include System include files.
|
||||
lib System libraries.
|
||||
libexec System binaries.
|
||||
sbin System administration commands.
|
||||
share Shared resources.
|
||||
sys Kernel sources.
|
||||
tools Build tools and simulators.
|
||||
|
||||
|
||||
Supported hardware
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
* chipKIT Max32 board.
|
||||
* Sparkfun UBW32 board.
|
||||
* Maximite and Colour Maximite computers.
|
||||
* Microchip Explorer 16 board, with PIC32 CAN-USB plug-in module and SD & MMC pictail.
|
||||
* Microchip PIC32 USB or Ethernet Starter Kit, with I/O Expansion board and SD & MMC pictail.
|
||||
* Olimex Duinomite, Duinomite-Mini and Duinomite-Mega boards.
|
||||
* Olimex Pinguino-Micro board with PIC32MX795F512H microcontroller.
|
||||
* eflightworks DIP board.
|
||||
|
||||
|
||||
Build
|
||||
~~~~~
|
||||
By default, the system is configured for the Max32 board.
|
||||
To select another target board, edit a top-level Makefile
|
||||
and change a TARGET value under section "Select target board":
|
||||
|
||||
TARGET = $(UBW32) # for the UBW32 board with USB console
|
||||
TARGET = $(UBW32UART) # for the UBW32 board with UART console
|
||||
TARGET = $(MAXIMITE) # for the Maximite board
|
||||
TARGET = $(MAXCOLOR) # for the Colour Maximite board
|
||||
TARGET = $(EXPLORER16) # for the Explorer 16 board
|
||||
TARGET = $(STARTERKIT) # for the PIC32 USB or Ethernet Starter Kit
|
||||
TARGET = $(MAX32) # default
|
||||
TARGET = $(DUINOMITE) # for the Duinomite board
|
||||
TARGET = $(PINGUINO) # for the Pinguino-Micro board
|
||||
TARGET = $(DIP) # for the DIP board
|
||||
|
||||
You can also change a desired filesystem size and swap area size,
|
||||
as required. Default is:
|
||||
|
||||
FS_KBYTES = 16384
|
||||
SWAP_KBYTES = 2048
|
||||
|
||||
To compile the kernel and build a filesystem image, run:
|
||||
|
||||
make
|
||||
|
||||
A resulting root filesystem image is in file `filesys.img`.
|
||||
A kernel is in file `unix.hex` in your target board subdirectory.
|
||||
|
||||
|
||||
Filesystem image
|
||||
~~~~~~~~~~~~~~~~
|
||||
You need to put a filesystem image on a SD card. On Windows, use
|
||||
Win32DiskImager utility (https://launchpad.net/win32-image-writer/+download).
|
||||
On Linux, run:
|
||||
|
||||
sudo dd if=filesys.img of=/dev/XYZ
|
||||
|
||||
Here `XYZ` is a device name of SD card, as recognized by Linux (sdb in my case).
|
||||
|
||||
|
||||
Install kernel
|
||||
~~~~~~~~~~~~~~
|
||||
Kernel image should be written to PIC32 flash memory. The procedure depends
|
||||
on a board used.
|
||||
|
||||
Max32 board:
|
||||
cd sys/pic32/ubw32
|
||||
AVRTOOLS=/Applications/Mpide.app/Contents/Resources/Java/hardware/tools
|
||||
$AVRTOOLS/bin/avrdude -C$AVRTOOLS/etc/avrdude.conf -c stk500v2 -p pic32 \
|
||||
-P /dev/tty.usbserial-* -b 115200 -v -U flash:w:unix.hex:i
|
||||
|
||||
Here you need to change AVRTOOLS path and tty name according to your system.
|
||||
|
||||
UBW32 board:
|
||||
Use a pic32prog utility (http://code.google.com/p/pic32prog/)
|
||||
and a USB cable to install a kernel:
|
||||
|
||||
pic32prog sys/pic32/ubw32/unix.hex
|
||||
|
||||
Maximite:
|
||||
Use the bootload program for Windows, available for download by link:
|
||||
http://geoffg.net/Downloads/Maximite/Maximite_Update_V2.7B.zip
|
||||
|
||||
Explorer 16 board:
|
||||
There is an auxiliary PIC18 chip on the Explorer 16 board, which can be
|
||||
used as a built-in programmer device. You will need a PICkit 2 adapter
|
||||
to install a needed firmware, as described in article:
|
||||
http://www.paintyourdragon.com/?p=51
|
||||
(section "Hack #2: Lose the PICkit 2, Save $35").
|
||||
This should be done only once.
|
||||
|
||||
Then, you can use a pic32prog utility (http://code.google.com/p/pic32prog/)
|
||||
and a USB cable to install a kernel:
|
||||
|
||||
pic32prog sys/pic32/explorer16/unix.hex
|
||||
|
||||
PIC32 Starter Kit:
|
||||
Use PICkit 2 adapter and software to install a boot loader from
|
||||
file `sys/pic32/starter-kit/boot.hex`. This should be done only once.
|
||||
|
||||
Then, you can use a pic32prog utility (http://code.google.com/p/pic32prog/)
|
||||
and a USB cable to install a kernel:
|
||||
|
||||
pic32prog sys/pic32/starter-kit/unix.hex
|
||||
|
||||
|
||||
Simulator
|
||||
~~~~~~~~~
|
||||
You can use a MIPS32 simulator to develop a debug a RetroBSD software,
|
||||
without a need for hardware board. By default, a simulator is configured
|
||||
to imitate a Max32 board. To build it:
|
||||
|
||||
cd tools/virtualmips
|
||||
make
|
||||
|
||||
Run it:
|
||||
|
||||
./pic32
|
||||
|
||||
Configuration of simulated board is stored in file `pic32_max32.conf`.
|
||||
|
||||
Reference in New Issue
Block a user