1514 lines
46 KiB
Plaintext
1514 lines
46 KiB
Plaintext
@subject "Documentation"
|
||
@author "Didier MEQUIGNON"
|
||
@database "Documentation of the FIREBEE - FIRETOS"
|
||
@$VER: Version Boot 2.01, Drivers 1.01 (July 25, 2011)
|
||
|
||
@node "Title"
|
||
@{U}Title FIREBEE - FIRETOS@{u}
|
||
|
||
|
||
@autorefoff
|
||
Documentation of the
|
||
|
||
|
||
@limage G:\tos060\doc\firebee\english\..\img\firebee.img 31
|
||
Version Boot 2.01, Drivers 1.01
|
||
July 25, 2011
|
||
|
||
by
|
||
|
||
Didier MEQUIGNON
|
||
|
||
aniplay@@wanadoo.fr
|
||
@autorefon
|
||
|
||
|
||
Contents
|
||
@endnode
|
||
|
||
|
||
@node Main "Contents"
|
||
@symbol "Contents"
|
||
@toc "Title"
|
||
@{U}Contents FIREBEE - FIRETOS@{u}
|
||
|
||
|
||
1 Presentation
|
||
1.1 Coldfire V4e
|
||
1.2 TOS 4.04
|
||
|
||
2 TOS in Flash
|
||
2.1 Start TOS
|
||
2.2 Drivers
|
||
2.3 Technical (boot)
|
||
2.4 Boot menu
|
||
2.4.1 Original boot menu (TOS started)
|
||
2.4.2 Firebee boot menu (after board init)
|
||
|
||
3 Flash Tool
|
||
3.1 Use Flash Tool
|
||
|
||
4 Configuration
|
||
4.1 Introduction
|
||
4.2 Average load
|
||
4.3 Temperature
|
||
4.4 Memory / uP
|
||
4.5 Boot
|
||
4.6 Stop/Misc
|
||
4.7 Langage
|
||
4.8 Video
|
||
4.9 CT60TEMP.APP
|
||
4.10 BubbleGEM
|
||
|
||
5 Cache
|
||
5.1 The Coldfire's V4e caches
|
||
5.2 GENERAL6.CPX
|
||
5.3 XCONTROL, ZCONTROL, COPS, and SDRAM in copyback
|
||
5.4 PARX.SYS modules and the copyback
|
||
5.5 TSR programs who crashes in the AUTO folder
|
||
5.6 Programs packed by Ice
|
||
|
||
6 Compatibility
|
||
6.1 Crashes
|
||
6.1.1 Crashes with the Coldfire
|
||
6.1.2 Crashes with caches
|
||
6.2 Solutions
|
||
|
||
7 Annexes
|
||
7.1 TOS Keyboard shortcuts
|
||
7.2 Load TOS with dBUG
|
||
7.3 DBUG task
|
||
7.4 Firebee MMU mapping
|
||
7.5 LWIP socket cookie 'SOCK'
|
||
|
||
8 Contacts
|
||
@endnode
|
||
|
||
|
||
@node "Presentation"
|
||
@toc "Main"
|
||
@{U}1 Presentation FIREBEE - FIRETOS@{u}
|
||
|
||
The Firebee use a Coldfire V4e at 266 MHz (MCF5475) and an FPGA for
|
||
emulate obsolete Atari devices and add new features (DSP ?) in the
|
||
future. Today for new FPGA feature, there are just a DVI-I port
|
||
connected to him (Videl ACP extended modes without hardware
|
||
acceleration).
|
||
|
||
|
||
@limage G:\tos060\doc\firebee\english\..\img\schema.img 1
|
||
|
||
|
||
Some new devices are connected to the Coldfire :
|
||
|
||
<20> USB controller on his PCI bus.
|
||
|
||
<20> AC97 audio codec on his AC-LINK interface.
|
||
|
||
<20> EDID from monitor to his I2C interface.
|
||
|
||
<20> Ethernet 10/100.
|
||
|
||
1.1 Coldfire V4e
|
||
1.2 TOS 4.04
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Coldfire V4e"
|
||
@toc "Presentation"
|
||
@{U}1.1 Coldfire V4e FIREBEE - FIRETOS@{u}
|
||
|
||
This coldfire like all the members of his familly is a
|
||
microcontroller, there are :
|
||
|
||
<20> Two Fast Ethernet Controllers (FEC 10/100), but only the first
|
||
is used on the Firebee.
|
||
|
||
<20> Four Programmable Serial Controllers (PSC), the first port is
|
||
the highspeed serial port, the third port is for the AC97 audio
|
||
codec.
|
||
|
||
<20> A PCI controller connnected to an USB host controller, the PCI
|
||
configured at 33MHz on the Firebee.
|
||
|
||
<20> An USB slave device not used on the Firebee.
|
||
|
||
<20> A Flexbus connected to the FPGA and 8 MB of Flash memory
|
||
(multiplexd bus, same frequency than the PCI).
|
||
|
||
<20> A Memory Controller connected to 512MB of SDRAM memory.
|
||
|
||
<20> An I2C interface connected to the DVI-I port.
|
||
|
||
<20> An DSPI interface connected to the SD-Card socket.
|
||
|
||
<20> A multichannel DMA (used for example for the AC97).
|
||
|
||
<20> 6 Timers.
|
||
|
||
|
||
@limage G:\tos060\doc\firebee\english\..\img\v4e.img 1
|
||
|
||
|
||
@endnode
|
||
|
||
|
||
@node "TOS 4.04"
|
||
@toc "Presentation"
|
||
@{U}1.2 TOS 4.04 FIREBEE - FIRETOS@{u}
|
||
|
||
The TOS404 for FIREBEE use the CF68KLIB (68060 emulation) and use :
|
||
|
||
<20> Timers and MFP (FPGA emulation).
|
||
|
||
<20> Serial ports (MFP FPGA emulation and PSC0 from Coldfire).
|
||
|
||
<20> Serial port for IKBD with Eiffel.
|
||
|
||
<20> ACIA for original IKBD (FPGA emulation).
|
||
|
||
<20> ACIA for MIDI (FPGA emulation).
|
||
|
||
<20> Ethernet 10/100.
|
||
|
||
<20> PCI: USB / Radeon (USB support mouse & keyboard, and mass
|
||
storage) with plug & play feature.
|
||
|
||
<20> CompactFlash (FPGA emulation).
|
||
|
||
<20> SD-Card (using DSPI).
|
||
|
||
<20> Atari Falcon IDE / SCSI (FPGA emulation, SCSI not implemented).
|
||
|
||
<20> Coldfire DMA.
|
||
|
||
<20> MMU.
|
||
|
||
<20> PSG (YAMAHA - FPGA emulation)
|
||
|
||
<20> Atari Floppy (FPGA emulation, only reading works)
|
||
|
||
<20> RTC (PIC & FPGA emulation)
|
||
|
||
<20> Videl ACP extended modes with EDID probing (monitor detection)
|
||
|
||
<20> AC97 Sound.
|
||
|
||
The TOS has four parts :
|
||
|
||
<20> The original TOS 4.04.
|
||
|
||
<20> The boot who can start from reset, initialize the board, start
|
||
the CF68KLIB, apply the patches to the TOS, add some XBIOS and
|
||
boot disk parts rewrited, and start the PCI BIOS.
|
||
|
||
<20> The CF68KLIB for a 68060 emulation.
|
||
|
||
<20> The driver part (AC97, Radeon, DMA, USB, Video ACP, rewrited
|
||
VDI, TCP/IP stack, etc ...).
|
||
|
||
@endnode
|
||
|
||
|
||
@node "TOS in Flash"
|
||
@toc "Main"
|
||
@{U}2 TOS in Flash FIREBEE - FIRETOS@{u}
|
||
|
||
2.1 Start TOS
|
||
2.2 Drivers
|
||
2.3 Technical (boot)
|
||
2.4 Boot menu
|
||
2.4.1 Original boot menu (TOS started)
|
||
2.4.2 Firebee boot menu (after board init)
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Start TOS"
|
||
@toc "TOS in Flash"
|
||
@{U}2.1 Start TOS FIREBEE - FIRETOS@{u}
|
||
|
||
The TOS located at 0xE0400000 need an FPGA init before start. There
|
||
are 3 solutions for start the TOS from reset (from 0xE0000000) :
|
||
|
||
<20> dBUG who has Ethernet support (TOS easy to update without risk,
|
||
see 'Load TOS with dBUG')
|
||
|
||
<20> BAS the original solution of Fredi (but sound not works under
|
||
TOS).
|
||
|
||
<20> The TOS himself with the rescue TOS who initialize the FPGA.
|
||
|
||
NOTE: Only the 2 latest solutions can also start EMUTOS.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Drivers"
|
||
@toc "TOS in Flash"
|
||
@{U}2.2 Drivers FIREBEE - FIRETOS@{u}
|
||
|
||
The drivers part on the Firebee add features to TOS :
|
||
|
||
<20> AC97 driver.
|
||
|
||
<20> Videl ACP externded modes driver (256 /65K / 16M colors) with
|
||
EDID monitor detection.
|
||
|
||
<20> USB driver.
|
||
|
||
<20> SD-Card driver (thanks to Fredi).
|
||
|
||
<20> DMA driver.
|
||
|
||
<20> Flash driver.
|
||
|
||
<20> Fast Ethernet Controller (FEC) driver.
|
||
|
||
<20> Ethernet PHY driver (tranceiver).
|
||
|
||
<20> VDI/fVDI replacement.
|
||
|
||
<20> X86 emulator (for a graphic card initialization).
|
||
|
||
<20> ATI Radeon driver.
|
||
|
||
<20> XBIOS GSXB driver.
|
||
|
||
<20> BDOS (GEMDOS replacement).
|
||
|
||
<20> TCP/IP stack (LwIP/FreeRTOS) with TFTP, FTP, Telnet, HTTP
|
||
servers (you can see screen like a VNC server).
|
||
|
||
<20> GlueSTiK and socket interfaces (from cookies 'STiK' and 'SOCK').
|
||
|
||
<20> Real time OS (FreeRTOS) with DBUG task.
|
||
|
||
<20> 68K/Coldfire disassembler.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Technical (boot)"
|
||
@toc "TOS in Flash"
|
||
@{U}2.3 Technical (boot) FIREBEE - FIRETOS@{u}
|
||
|
||
This is a TOS 4.04 patched by the boot (2.0+), in this order there
|
||
are :
|
||
|
||
<20> Board initialization (Coldfire and ACP registers).
|
||
|
||
<20> The copy of the TOS in SDRAM after apply the patches.
|
||
|
||
<20> The initialization of the MMU. All the ST-RAM is in writethrough
|
||
and the SDRAM declaration in copyback.
|
||
|
||
<20> Start the CF68KLIB, TOS is a task for FreeRTOS (driver part).
|
||
|
||
<20> The installation of the cookies '_CPU', '_FPU', '_CF_'.
|
||
|
||
<20> The patchs for cache, MMU, address in 0x00FFxxxx, and the
|
||
instructions movep replaced.
|
||
|
||
<20> The bombs inside exceptions displayed with texts in clear of a
|
||
crash.
|
||
|
||
<20> The XBIOS function 0xC60A to 0xC60D (temperature, parameters in
|
||
Flash, cache...), and the DSP (functions with handshake).
|
||
|
||
<20> The needful patchs for the blitter, the system fonts and the
|
||
Atari logo copied at the top of the ST-RAM.
|
||
|
||
<20> The replacement of the XBIOS Bconout routine (display texts).
|
||
|
||
<20> Check and fix the modecode get from NVM.
|
||
|
||
<20> Start the PCI BIOS and the drivers.
|
||
|
||
<20> The display of the V4e's type (revision, mask and frequency).
|
||
|
||
<20> The declaration of the SDRAM to the TOS.
|
||
|
||
<20> The initialization of the SDRAM, and the MB/s during writing
|
||
displayed.
|
||
|
||
<20> The fastram buffer created and his cookie '_FRB'.
|
||
|
||
<20> The extended fastram buffer created and his cookie 'XFRB'.
|
||
|
||
<20> The patch for the boot order of the drives IDE and SCSI (8
|
||
choices).
|
||
|
||
<20> Extra boot features :
|
||
|
||
- Add SCSIDRV and XHDI protocols.
|
||
|
||
- Add identify device procedure for SCSI and IDE drives, the
|
||
boot wait if a removable drive is not ready.
|
||
|
||
- Add IDE slave support.
|
||
|
||
- Add CompactFlash support.
|
||
|
||
- Add combined MSDOS/TOS root and partition support, this
|
||
feature support byte swapping needed by MSDOS format and
|
||
search a *.SYS for load the disk driver.
|
||
|
||
- Add speed test for bootables devices.
|
||
|
||
- Start internal hard disk driver if no bootable disk as an
|
||
external driver.
|
||
|
||
<20> The patch for the boot menu.
|
||
|
||
<20> The displays redirection of the AUTO programs to a file
|
||
boot.log.
|
||
|
||
<20> The patch for the Pexec function for the copyback (cpush after
|
||
the relocation).
|
||
|
||
<20> The blitter patchs of the VDI functions, vro_cpyfm, vr_trnfm,
|
||
and vrt_cpyfm for work in SDRAM (an intermediate buffer inside
|
||
ST-RAM is used).
|
||
|
||
<20> The AES patchs for change the Newdesk buffer of 4 KB to 32 KB.
|
||
|
||
<20> Scan-codes used with the Eiffel card :
|
||
|
||
- PAGE UP/DOWN.
|
||
|
||
- PRINT SCREEN.
|
||
|
||
- POWER (set 2 only, Eiffel 1.0.5).
|
||
|
||
- VOLUME UP/DOWN (set 2 only, Eiffel 1.0.5).
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Boot menu"
|
||
@toc "TOS in Flash"
|
||
@{U}2.4 Boot menu FIREBEE - FIRETOS@{u}
|
||
|
||
There are two boot menu on the Firebee :
|
||
|
||
<20> The original use the NVRAM OS setting, the TOS is started.
|
||
|
||
<20> The second can start EMUTOS in native mode or a TOS to test
|
||
after board initialization. Switches or TOS source area (normal
|
||
or rescue) change the content of this menu.
|
||
|
||
2.4.1 Original boot menu (TOS started)
|
||
2.4.2 Firebee boot menu (after board init)
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Original boot menu (TOS started)"
|
||
@toc "Boot menu"
|
||
@{U}2.4.1 Original boot menu (TOS started) FIREBEE - FIRETOS@{u}
|
||
|
||
The TOS can replace magxboot (MagiC) in the AUTO folder for a fast
|
||
boot (no programs inside the AUTO folder to start). You can enable a
|
||
boot menu with the configuration CPX. This menu arrives if the entry
|
||
of the favourite OS inside is <> '-'.
|
||
|
||
You can select TOS, or MagiC, value is stored inside the NVM.
|
||
|
||
With MagiC, the TOS try to found MAGIC.RAM inside the main directory
|
||
of the boot folder.
|
||
|
||
Sure you can always use MAGXBOOT.PRG or ATABOOT.PRG inside the AUTO
|
||
folder.
|
||
|
||
@{B} IMPORTANT MOTE : In the current status of emulation, MagiC can't run
|
||
on Firebee. @{b}
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Firebee boot menu (after board init)"
|
||
@toc "Boot menu"
|
||
@{U}2.4.2 Firebee boot menu (after board init) FIREBEE - FIRETOS@{u}
|
||
|
||
Boot menu and rescue features context is the result of the switches.
|
||
SW6 and SW5 are inside the cookie '_SWI':
|
||
|
||
<20> B7: (1) SW6 DOWN, (0) SW6 UP.
|
||
|
||
<20> B6: (1) SW5 DOWN, (0) SW5 UP.
|
||
|
||
<20> B0: (1) rescue TOS started from 0xE0000000 (replace BAS or
|
||
dBUG).
|
||
|
||
SW6 up is the normal usage.
|
||
|
||
SW6 down allows to TOS to start FTP (build option), HTTP, TFTP
|
||
servers and create a Ram-Disk actually in B (this feature is also
|
||
possible with dBUG at 0xE0000000).
|
||
|
||
SW5 up is the normal usage for start the TOS at 0xE0400000 (same
|
||
usage inside BAS or dBUG at 0xE0000000) and a boot menu has 2 choices
|
||
TOS or EMUTOS (TOS by default).
|
||
|
||
SW5 down is the rescue mode, TOS at 0xE0000000 continue to run and a
|
||
boot menu displays 3 choices :
|
||
|
||
<20> TOS404 (at 0xE0000000 - boot) => TOS rescue (default choice)
|
||
|
||
<20> EMUTOS (at 0xE0600000)
|
||
|
||
<20> TOS404 (at 0xE0400000 - normal) => TOS to test
|
||
|
||
@{B} IT'S IMPORTANT TO FLASH ONLY AT 0xE0000000 AN OFFICIAL STABLE
|
||
RELEASE OF THE TOS (rescuetos.hex) OR CONTINUE TO USE DBUG OR BAS AT
|
||
0xE0000000. @{b}
|
||
|
||
NOTES :
|
||
|
||
<20> If BAS used for start the TOS, SW5 and SW6 must be up, else you
|
||
start EMUTOS or nothing.
|
||
|
||
<20> If dBUG used for start the TOS, SW5 must be up, else you must
|
||
use the command 'go E0400000'.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Flash Tool"
|
||
@toc "Main"
|
||
@{U}3 Flash Tool FIREBEE - FIRETOS@{u}
|
||
|
||
3.1 Use Flash Tool
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Use Flash Tool"
|
||
@toc "Flash Tool"
|
||
@{U}3.1 Use Flash Tool FIREBEE - FIRETOS@{u}
|
||
|
||
|
||
@limage G:\tos060\doc\firebee\english\..\img\flash1.img 18
|
||
|
||
|
||
The main task of this program is to put TOS binary (.BIN) or Srecord
|
||
files (.HEX) inside the flash.
|
||
|
||
Since the BOOT v2.0, it's possible to load separate files for the
|
||
TOS404, the BOOT and the PCI drivers:
|
||
|
||
<20> FIRETOS.HEX: contains BOOT + TOS404 + Atari Diagnostics (must
|
||
disappear).
|
||
|
||
<20> BOOT_FIREBEE.HEX: contains the BOOT (must arrive).
|
||
|
||
<20> DRIVERS_FIREBEE.HEX: contains the PCI drivers (GPL licence, not
|
||
in this archive).
|
||
|
||
<20> TOS404.BIN (not in the archive): just for put the TOS in flash,
|
||
in the case of FIRETOS.HEX isn't used.
|
||
|
||
NOTE : A binary file (.BIN) has a target address fixed at 0xE0400000.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Configuration"
|
||
@toc "Main"
|
||
@{U}4 Configuration FIREBEE - FIRETOS@{u}
|
||
|
||
4.1 Introduction
|
||
4.2 Average load
|
||
4.3 Temperature
|
||
4.4 Memory / uP
|
||
4.5 Boot
|
||
4.6 Stop/Misc
|
||
4.7 Langage
|
||
4.8 Video
|
||
4.9 CT60TEMP.APP
|
||
4.10 BubbleGEM
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Introduction"
|
||
@toc "Configuration"
|
||
@{U}4.1 Introduction FIREBEE - FIRETOS@{u}
|
||
|
||
The Firebee's configuration is set with a CPX, used normally with
|
||
XCONTROL, ZCONTROL, or COPS.
|
||
|
||
This CPX allows to :
|
||
|
||
<20> Configure the Non Volatile Memory.
|
||
|
||
<20> Configure the boot in Flash Eprom.
|
||
|
||
<20> Measure MIPS.
|
||
|
||
<20> See the load of the system (MiNT or MagiC only).
|
||
|
||
<20> See the Firebee temperature (need and Eiffel card inside the
|
||
same box).
|
||
|
||
<20> Blank the monitor after a delay.
|
||
|
||
|
||
@limage G:\tos060\doc\firebee\english\..\img\cpx3.img 20
|
||
|
||
|
||
There are five common buttons on this CPX :
|
||
|
||
<20> Save : Button for save adjustments on the disk.
|
||
|
||
<20> Load : Button for load adjustments saved on the disk.
|
||
|
||
<20> OK : Button for validate the values changed into the non
|
||
volatile ram and the flash parameters.
|
||
|
||
<20> Cancel : Button for not change values to the configuration.
|
||
|
||
<20> i : Button for display informations (authors).
|
||
|
||
For check get a CPU average load, blank the screen, or get the
|
||
temperature (with Eiffel) the CPX :
|
||
|
||
<20> Under TOS create a desk-accessory CT60TEMP.ACC (sorry for the
|
||
name ;-) ) and ask to reboot.
|
||
|
||
<20> Under MiNT create the program CT60TEMP.APP and start this
|
||
program.
|
||
|
||
<20> Under MagiC start a thread.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Average load"
|
||
@toc "Configuration"
|
||
@{U}4.2 Average load FIREBEE - FIRETOS@{u}
|
||
|
||
|
||
@limage G:\tos060\doc\firebee\english\..\img\cpx1.img 19
|
||
|
||
|
||
At this page you can see for MiNT and MagiC :
|
||
|
||
<20> The current value of CPU average load.
|
||
|
||
<20> The level of CPU average load.
|
||
|
||
<20> The curve of CPU average load during the last hour. Without MiNT
|
||
1.11 or more, this curve is very approximate.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Temperature"
|
||
@toc "Configuration"
|
||
@{U}4.3 Temperature FIREBEE - FIRETOS@{u}
|
||
|
||
|
||
@limage G:\tos060\doc\firebee\english\..\img\cpx2.img 20
|
||
|
||
|
||
At this page you can see the Firebee's temperature during the last
|
||
hour if you have an Eiffel card (with the cookie 'Temp'). This curve
|
||
is normally in blue and change to magenta if the fan works (set to on
|
||
by the Effeil card).
|
||
|
||
The green curve, the 68060 temperature value, and the trigger level
|
||
are not used because there are no sensor on the Coldfire (it's a
|
||
68060 feature).
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Memory / uP"
|
||
@toc "Configuration"
|
||
@{U}4.4 Memory / uP FIREBEE - FIRETOS@{u}
|
||
|
||
|
||
@limage G:\tos060\doc\firebee\english\..\img\cpx3.img 20
|
||
|
||
|
||
At this page you can :
|
||
|
||
<20> See the total capacity of the ST-Ram.
|
||
|
||
<20> See the total capacity of the Fast-Ram.
|
||
|
||
<20> See the number of free bytes for the ST-Ram.
|
||
|
||
<20> See the number of free bytes for the Fast-Ram.
|
||
|
||
<20> See the number of millions instructions by second worked out by
|
||
the microprocessor (BogoMips).
|
||
|
||
<20> Select with/without FPU.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Boot"
|
||
@toc "Configuration"
|
||
@{U}4.5 Boot FIREBEE - FIRETOS@{u}
|
||
|
||
|
||
@limage G:\tos060\doc\firebee\english\..\img\cpx4.img 20
|
||
|
||
|
||
At this page you can :
|
||
|
||
- Select the boot order on the IDE and SCSI drives (8
|
||
choices).
|
||
|
||
- Select at boot the operating system by default.
|
||
|
||
- Select at boot the SCSI arbitration.
|
||
|
||
- Select at boot the SCSI identificator (0 to 7).
|
||
|
||
- Set the delay at boot in seconds (used for timeout with the
|
||
boot menu).
|
||
|
||
- Set the default speed of the highspeed serial port used
|
||
also for debug.
|
||
|
||
- Under TOS, remove the caches during 5 seconds when a
|
||
program is started or remove the copyback alert box.
|
||
|
||
- Redirect displays of the AUTO folder's programs to a file
|
||
boot.log.
|
||
|
||
- Get a debug file video.log.
|
||
|
||
- Swap the two IDE ports (CompactFlash and IDE).
|
||
|
||
NOTES :
|
||
|
||
- Theses settings are writed inside the NVRAM or flash
|
||
parameters with the 'OK' button.
|
||
|
||
- If you use the CompactFlash as drive or want use the
|
||
internal driver, please use only new boot (the old boot is
|
||
the original boot of the TOS 4.04).
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Stop/Misc"
|
||
@toc "Configuration"
|
||
@{U}4.6 Stop/Misc FIREBEE - FIRETOS@{u}
|
||
|
||
|
||
@limage G:\tos060\doc\firebee\english\..\img\cpx5.img 20
|
||
|
||
|
||
At this page you can :
|
||
|
||
- Set a delay for blank monitor (disabled if set to 0).
|
||
|
||
- Set 3 last bytes of MAC address, begin is 00:CF:54.
|
||
|
||
- Set board IP address.
|
||
|
||
- Set host IP address (for TFTP).
|
||
|
||
NOTES :
|
||
|
||
- The delay is saved inside the CPX with the 'Save' button
|
||
(and not in NVRAM or flash parameters). It's
|
||
CT60TEMP.ACC/APP features.
|
||
|
||
- The ethernet parameters are writed in the flash parameters
|
||
with the 'OK' button. If the valuse are 255/FF or 0, dBUG
|
||
setting are used.
|
||
|
||
- The default gateway address is 0.0.0.0.
|
||
|
||
- The default path/filename for TFTP is /home/firebee.hex.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Langage"
|
||
@toc "Configuration"
|
||
@{U}4.7 Langage FIREBEE - FIRETOS@{u}
|
||
|
||
|
||
@limage G:\tos060\doc\firebee\english\..\img\cpx6.img 20
|
||
|
||
|
||
At this page you can :
|
||
|
||
- Select at boot the language by default.
|
||
|
||
- Select at boot the keyboard type.
|
||
|
||
- Select at boot the date format.
|
||
|
||
- Select at boot the time format 12 or 24 hours.
|
||
|
||
- Select at boot the date separator.
|
||
|
||
NOTE : Theses settings are writed inside the NVRAM with the 'OK'
|
||
button.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Video"
|
||
@toc "Configuration"
|
||
@{U}4.8 Video FIREBEE - FIRETOS@{u}
|
||
|
||
|
||
@limage G:\tos060\doc\firebee\english\..\img\cpx7.img 19
|
||
|
||
|
||
With the default TOS404 (Videl/Blitter) modes you can :
|
||
|
||
- Select at boot the monitor type.
|
||
|
||
- Select at boot the display's mode : NTSC = 60 Hz, PAL = 50
|
||
Hz.
|
||
|
||
- Select at boot the screen resolution.
|
||
|
||
- Select at boot the numbers of colors.
|
||
|
||
- Select at boot the ST compatibility mode.
|
||
|
||
- Select at boot the overscan mode on TV.
|
||
|
||
- Replace the NVRAM reading by TOS values saved in the Flash
|
||
and use the IKBD clock instead of the RTC. This feature is
|
||
for fix NVM problems caused by a battery failure.
|
||
|
||
NOTES :
|
||
|
||
- Theses settings are writed inside the NVRAM with the 'OK'
|
||
button
|
||
|
||
- Because there are no blitter actually inside the FPGA
|
||
emulation you can't see/use theses settings.
|
||
|
||
|
||
@limage G:\tos060\doc\firebee\english\..\img\cpx7_acp.img 20
|
||
|
||
|
||
If the video display use the Radeon or extended ACP modes
|
||
(screen above 0x01000000) you can :
|
||
|
||
- Select at boot the screen resolution, if the prefered video
|
||
mode is found on the monitor, the mode added to the list.
|
||
|
||
- Select at boot the numbers of colors (256/65K/16M).
|
||
|
||
- Select at boot the monitor layout on the Radeon board
|
||
(MON.1,MON.2) :
|
||
|
||
* DEFAULT (automatic mode)
|
||
|
||
* CRT,NONE
|
||
|
||
* CRT,CRT
|
||
|
||
* CRT,TMDS
|
||
|
||
* TMDS,CRT
|
||
|
||
* TMDS,TMDS
|
||
|
||
- Select using DMA for boost display (this feature is used
|
||
only for the Radeon board, because the Flexbus has troubles
|
||
sometimes with ACP video).
|
||
|
||
- Replace the NVRAM reading by TOS values saved in the Flash
|
||
and use the IKBD clock instead of the RTC.
|
||
|
||
NOTE : The Radeon/ACP mode not overwrite the Videl mode, the
|
||
mode is writed inside a flash parameter with the 'OK' button.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "CT60TEMP.APP"
|
||
@toc "Configuration"
|
||
@{U}4.9 CT60TEMP.APP FIREBEE - FIRETOS@{u}
|
||
|
||
This program is created by the CPX. For get a CPU average load,
|
||
blank the screen, or get the temperature (with Eiffel) the CPX :
|
||
|
||
- Under TOS create a desk-accessory CT60TEMP.ACC and ask to
|
||
reboot.
|
||
|
||
- Under MiNT create the program CT60TEMP.APP and start this
|
||
program.
|
||
|
||
- Under MagiC start a thread.
|
||
|
||
Some is the solution used (thead, accessory or application),
|
||
it's possible to use the multimedia keys features of the Eiffel
|
||
PS/2 interface (http://eiffel3.atari.org), especially with the
|
||
set number 2 PS/2. The @{B} POWER @{b} key start a stop after a shutdown
|
||
procedure.
|
||
|
||
If CT60TEMP.APP is used under MagiC or MiNT (for MagiC boot
|
||
under TOS and copy CT60TEMP.ACC to CT60TEMP.APP), by using
|
||
environment variables, it's possible to use others multimedia
|
||
keys of the Eiffel PS/2 interface :
|
||
|
||
- @{B} WWW HOME : @{b} Start the internet navigator with the
|
||
environment variable BROWSER.
|
||
|
||
- @{B} E-MAIL : @{b} Start the email program with the environment
|
||
variable MAILER.
|
||
|
||
- @{B} WWW SEARCH : @{b} Start the internet navigator with the
|
||
environment variable BROWSER with the home page of Google.
|
||
|
||
- @{B} MY COMPUTER : @{b} Start the hypertexte viewer with the
|
||
environment variable HELPVIEWER with the documentation of
|
||
the CT60.
|
||
|
||
You must install the program E_TEMP.PRG inside the AUTO folder
|
||
(the 'Eiff' cookie is used).
|
||
|
||
@endnode
|
||
|
||
|
||
@node "BubbleGEM"
|
||
@toc "Configuration"
|
||
@{U}4.10 BubbleGEM FIREBEE - FIRETOS@{u}
|
||
|
||
Under a multitasking operating system (for example MagiC,
|
||
MultiTOS, Geneva etc) BubbleGEM can be placed in the auto start
|
||
folder where it will be automatically started as a GEM program
|
||
on booting the system.
|
||
|
||
Under single TOS BubbleGEM can be run as a desk accessory by
|
||
renaming BUBBLE.APP to BUBBLE.ACC and copying it to the root
|
||
directory of your boot partition, then rebooting.
|
||
|
||
BubbleGEM-aware programs send a message and pass a character
|
||
string to BubbleGEM if the user clicks with the right mouse
|
||
button on an icon, button or window area. BubbleGEM then
|
||
displays the character string, formatted in a cute speech bubble
|
||
which remains displayed until the user moves the mouse pointer
|
||
to another window area, or until the user clicks again to burst
|
||
the bubble.
|
||
|
||
Optionally bubbles can be displayed by clicking and holding down
|
||
the right mouse button; in this case the bubble bursts as soon
|
||
as the button is released again.
|
||
|
||
While a bubble is open two keyboard shortcuts are active:
|
||
|
||
<CTRL C> : The content of the bubble is copied to the clipboard and
|
||
the bubble remains open.
|
||
<CTRL X> : The content of the bubble is copied to the clipboard and
|
||
the bubble is closed.
|
||
|
||
The author of BubbleGEM is Thomas Much; his email address is:
|
||
|
||
Thomas.Much@@stud.uni-karlsruhe.de
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Cache"
|
||
@toc "Main"
|
||
@{U}5 Cache FIREBEE - FIRETOS@{u}
|
||
|
||
5.1 The Coldfire's V4e caches
|
||
5.2 GENERAL6.CPX
|
||
5.3 XCONTROL, ZCONTROL, COPS, and SDRAM in copyback
|
||
5.4 PARX.SYS modules and the copyback
|
||
5.5 TSR programs who crashes in the AUTO folder
|
||
5.6 Programs packed by Ice
|
||
|
||
@endnode
|
||
|
||
|
||
@node "The Coldfire's V4e caches"
|
||
@toc "Cache"
|
||
@{U}5.1 The Coldfire's V4e caches FIREBEE - FIRETOS@{u}
|
||
|
||
There are two caches of 32KB inside the Coldfire V4e, data and
|
||
instruction.
|
||
|
||
The ST-RAM is in writethrough, at each time than the Coldfire
|
||
write to the RAM, he write in the same time than the data cache.
|
||
|
||
The TT-RAM is in copyback, the Coldfire write always inside his
|
||
data cache, he write in the memory the old data of his cache for
|
||
found some place for the new data.
|
||
|
||
The Coldfire has also an instruction cache, witch the direct
|
||
link with the data cache is only the memory. The result is than
|
||
it's possible to obtain incoherency between the data cache and
|
||
the instruction cache. The example is the excecution of a
|
||
relocated program, without precaution and without system call
|
||
this is a crash.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "GENERAL6.CPX"
|
||
@toc "Cache"
|
||
@{U}5.2 GENERAL6.CPX FIREBEE - FIRETOS@{u}
|
||
|
||
This CPX is a patched version of the Falcon GENERAL.CPX for the
|
||
TOS 060. The cache on/off selection now uses XBIOS calls.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "XCONTROL, ZCONTROL, COPS, and SDRAM in copyback"
|
||
@toc "Cache"
|
||
@{U}5.3 XCONTROL, ZCONTROL, COPS, and SDRAM in copyback FIREBEE - FIRETOS@{u}
|
||
|
||
- COPS only flush caches after load the CPX and works fine.
|
||
|
||
- ZCONTROL works under MiNT 1.16/Xaaes.
|
||
|
||
- XCONTROL crashes.
|
||
|
||
- The rebuilded XCONTROL.ACC fix this problem.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "PARX.SYS modules and the copyback"
|
||
@toc "Cache"
|
||
@{U}5.4 PARX.SYS modules and the copyback FIREBEE - FIRETOS@{u}
|
||
|
||
If a program who use PARX.SYS crashes at start, you can try to
|
||
remove the caches with GENERAL6.CPX, load the program and set to
|
||
on the caches after. For example PICCOLO works with this method.
|
||
|
||
A global solution is to remove the caches during 5 seconds when
|
||
a program is started under TOS with the Boot menu inside the
|
||
configuration CPX, but this method penalize all programs.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "TSR programs who crashes in the AUTO folder"
|
||
@toc "Cache"
|
||
@{U}5.5 TSR programs who crashes in the AUTO folder FIREBEE - FIRETOS@{u}
|
||
|
||
Like CPX, the programs who not uses the Pexec function for load
|
||
modules crashes with the SDRAM in copyback, so the best way is
|
||
to load the program in ST-RAM (cache in writethrough). You can
|
||
use FILEINFO.CPX for change the flags.
|
||
|
||
For example you must remove TT-ram flags of METAXBS.PRG
|
||
(Metados) because when the OVL modules are loaded there are no
|
||
flush after relocation, it's not compatible with the SDRAM and
|
||
the CPU cache in copyback.
|
||
|
||
A global solution is to remove the caches during 5 seconds when
|
||
a program is started under TOS with the Boot menu inside the
|
||
configuration CPX, but this method penalize all programs.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Programs packed by Ice"
|
||
@toc "Cache"
|
||
@{U}5.6 Programs packed by Ice FIREBEE - FIRETOS@{u}
|
||
|
||
The TOS test the programs packed by Ice, there are a patch for
|
||
flush caches (inside the Pexec function). Without this patch,
|
||
programs packed by Ice crashes with the copyback cache (SDRAM).
|
||
This problem is not solved under MagiC or MiNT.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Compatibility"
|
||
@toc "Main"
|
||
@{U}6 Compatibility FIREBEE - FIRETOS@{u}
|
||
|
||
6.1 Crashes
|
||
6.1.1 Crashes with the Coldfire
|
||
6.1.2 Crashes with caches
|
||
6.2 Solutions
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Crashes"
|
||
@toc "Compatibility"
|
||
@{U}6.1 Crashes FIREBEE - FIRETOS@{u}
|
||
|
||
6.1.1 Crashes with the Coldfire
|
||
6.1.2 Crashes with caches
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Crashes with the Coldfire"
|
||
@toc "Crashes"
|
||
@{U}6.1.1 Crashes with the Coldfire FIREBEE - FIRETOS@{u}
|
||
|
||
The TOS use the CF68KLIB for emulate the 68060, when the
|
||
instruction or the adressing mode not exist there are no problem
|
||
the CF68KLIB can do his job. But with some instructions there
|
||
are no exception for the CF68KLIB, excepted with a complete
|
||
virtual CPU (like 68KEMU) who slow down the program, the
|
||
solution is to modify sources, if it's not possible the TOS has
|
||
a solution (a patcher inside Pexec) because 95% of problems are
|
||
Pure C programs :
|
||
|
||
- A byte push/pop on stack has 2 bytes aligment on a 68K, not
|
||
on the Coldfire.
|
||
|
||
- There are no exception for 64 bits instructions mul/div.
|
||
|
||
- Atari line A is MAC instruction on Coldfire (not specific
|
||
to Pure C programs).
|
||
|
||
The TOS test Pure C programs (during Pexec) and try to replace
|
||
theses instructions by unused opcode (Line A) who are handled by
|
||
te CF68KLIB :
|
||
|
||
- Line A 0xA000-0xA00F already used for mac instructions
|
||
replaced by opcode 0xA920-0xA92F.
|
||
|
||
- move.b DX,-(SP) replaced by opcode 0xA910-0xA917.
|
||
|
||
- move.b (SP)+,DX replaced by opcode 0xA918-0xA91F.
|
||
|
||
- move.b (AX),-(SP) replaced by opcode 0xA930-0xA937.
|
||
|
||
- move.b (SP)+,(AX) replaced by opcode 0xA938-0xA93F.
|
||
|
||
- move.b d(AX),-(SP) replaced by opcode 0xA9B0-0xA9B7.
|
||
|
||
- move.b (SP)+,d(AX) replaced by opcode 0xA9B8-0xA9BF.
|
||
|
||
- move.b abs.l,-(SP) replaced by opcode 0xA9F1.
|
||
|
||
- move.b d(PC),-(SP) replaced by opcode 0xA9F2.
|
||
|
||
- move.b (SP)+,abs.l replaced by opcode 0xA9F9.
|
||
|
||
- mulu/s.l ea,dh:dl replaced by opcode 0xABC0-0xABFF.
|
||
|
||
- divu/s.l ea:dr:dq replaced by opcode 0xAFC0-0xAFFF.
|
||
|
||
NOTE : This solution can't work with modules not loaded with
|
||
Pexec or Pure C programs who havn't signature.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Crashes with caches"
|
||
@toc "Crashes"
|
||
@{U}6.1.2 Crashes with caches FIREBEE - FIRETOS@{u}
|
||
|
||
You can try to remove the caches with GENERAL6.CPX, start the
|
||
program who causes crashes, load the program and set to on the
|
||
caches after.
|
||
|
||
You can use FILEINFO.CPX for change the flags and force the
|
||
program to use ST-RAM.
|
||
|
||
For more informations, you can read the part 'Cache'.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Solutions"
|
||
@toc "Compatibility"
|
||
@{U}6.2 Solutions FIREBEE - FIRETOS@{u}
|
||
|
||
|
||
@line 5 0 16
|
||
@line 20 0 16
|
||
@line 31 0 16
|
||
@line 66 0 16
|
||
@line 5 61 0
|
||
@{B}Software@{b} @{B}Problem@{b} @{B}Solution@{b}
|
||
@line 5 61 0
|
||
HD Driver Crashes Use only HDDRUTIL for create
|
||
partitions and use the internal
|
||
driver (1GB TOS/DOS partitions).
|
||
@line 5 61 0
|
||
NVDI 5 Not works Rename all NVDIDRV*.SYS to
|
||
NVDIDRV*.SY (for example).
|
||
Replace hex sequence 48E7E0E0A000
|
||
by 48E7E0E0A920 inside all
|
||
OFF*.NOD files.
|
||
@line 5 61 0
|
||
MagiC 6 Not works Use MiNT ;-)
|
||
@line 5 61 0
|
||
Picollo Crashes Remove the caches during start
|
||
D2D Crashes or remove the Fast-Ram flags
|
||
Gemview Crashes or use the cache delay inside
|
||
Gembench Crashes the configuration CPX under TOS.
|
||
Swiftel Photo Crashes
|
||
@line 5 61 0
|
||
Xcontrol Crashes Use the rebuilded version.
|
||
@line 5 61 0
|
||
|
||
|
||
|
||
@line 1 0 24
|
||
@line 14 0 24
|
||
@line 28 0 24
|
||
@line 74 0 24
|
||
@line 1 73 0
|
||
@{B}Hard@{b} @{B}Problem@{b} @{B}Solution@{b}
|
||
@line 1 73 0
|
||
DSP DSP errors Not implemented inside the FPGA.
|
||
Disable DSP.
|
||
@line 1 73 0
|
||
Sound No sound Replace the BAS by dBUG or rescue TOS.
|
||
@line 1 73 0
|
||
Display Slow Decrease size, there are no hardware
|
||
acceleration (blitter) with the Videl
|
||
FPGA emulation, or use a Radeon on PCI bus.
|
||
@line 1 73 0
|
||
Ethernet Not works Load the latest FPGA file with FLASH060.
|
||
@line 1 73 0
|
||
USB Not works Fix the 3V3 voltage.
|
||
@line 1 73 0
|
||
USB stick Not works Load the PCI bus for example with a
|
||
Radeon board ;-)
|
||
@line 1 73 0
|
||
Adapter Destroyed Use an ATX power supply or a DC adapter
|
||
with a minimum of 1.5 A.
|
||
@line 1 73 0
|
||
Floppy Writing not Use an SD-Card or wait an FPGA update.
|
||
works
|
||
@line 1 73 0
|
||
Monitor not works Try another monitor or wait an FPGA or/and
|
||
TOS drivers update.
|
||
@line 1 73 0
|
||
SCSI Not works Not implemented inside the FPGA.
|
||
Use an IDE drive.
|
||
@line 1 73 0
|
||
Radeon Not works Use a Radeon for PC. TOS use an X86 emulator
|
||
for MAC for initialize the board.
|
||
@line 1 73 0
|
||
Radeon 7000 DVI not work Clocks over 135 MHz have heat isues with DVI
|
||
(RV100) on RV100.
|
||
Now high modes are rejected (drivers V1.01).
|
||
@line 1 73 0
|
||
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Annexes"
|
||
@toc "Main"
|
||
@{U}7 Annexes FIREBEE - FIRETOS@{u}
|
||
|
||
7.1 TOS Keyboard shortcuts
|
||
7.2 Load TOS with dBUG
|
||
7.3 DBUG task
|
||
7.4 Firebee MMU mapping
|
||
7.5 LWIP socket cookie 'SOCK'
|
||
|
||
@endnode
|
||
|
||
|
||
@node "TOS Keyboard shortcuts"
|
||
@toc "Annexes"
|
||
@{U}7.1 TOS Keyboard shortcuts FIREBEE - FIRETOS@{u}
|
||
|
||
CTRL: If pressed before the Atari logo, jump the bios PCI.
|
||
Boot without AUTO folder and ACC.
|
||
ALT: If pressed before the Atari logo, jump the bios PCI.
|
||
Remove cache if pressed before the SDRAM init.
|
||
Boot without disk if pressed after.
|
||
SHIFTL-SHIFTR: Boot without SDRAM if pressed before the Atari logo.
|
||
SHIFTL: Displays infos about the SDRAM module.
|
||
CTRL-ALT-UNDO: NVM and Flash Parameters init if pressed during the
|
||
memory test until the Reset. You need to set the delay
|
||
at boot to 60 seconds with the configuration CPX
|
||
(oups can't work with the Firebee boot menu).
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Load TOS with dBUG"
|
||
@toc "Annexes"
|
||
@{U}7.2 Load TOS with dBUG FIREBEE - FIRETOS@{u}
|
||
|
||
For load firetos.hex (the TOS) with an host TFTP server with
|
||
dBUG cmds :
|
||
|
||
The 1st time, set TFTP vars (for example) :
|
||
|
||
- set server 192.168.1.1 (host IP server)
|
||
|
||
- set client 192.168.1.2 (FIREBEE IP)
|
||
|
||
- set filename /home/firetos_firebee.hex
|
||
|
||
- set filetype S-Record
|
||
|
||
- set baud 19200
|
||
|
||
After just use :
|
||
|
||
- dn -o 20000000
|
||
|
||
- fl w E0400000 400000 f0000
|
||
|
||
- go E0400000 (or go)
|
||
|
||
Or if jou want preserve flash :
|
||
|
||
- dn -o 20000000
|
||
|
||
- go 4000000 (or go)
|
||
|
||
The TOS can start from anywere (-o is for add an offset and put
|
||
the S-record file in SDRAM), the boot part copy and apply
|
||
patches to the original TOS and uncompress the driver part to
|
||
the target address (0x00E00000). If the source address is equal
|
||
to the target address (0x00E00000), the boot has a jump to
|
||
0xE0400000.
|
||
|
||
WARNING : The ethernet part of dBUG need a clock on the PHY, so
|
||
if the FLASH above 0xE7000000 is destroyed ethernet can't work!
|
||
|
||
NOTE : If the BAS is installed, it's possible to use ethernet
|
||
without dBUG with some limitations (3 flash parameters used) :
|
||
|
||
- You can change only the 3 lastest bytes of the MAC address
|
||
with the CPX (stop/misc menu), begin is 00:CF:54
|
||
|
||
- You can change board IP and host IP with the CPX (stop/misc
|
||
menu).
|
||
|
||
- The netmask is automatic if the choice is CPX setting.
|
||
|
||
- The default gateway is 0.0.0.0.
|
||
|
||
- The default path/filename for TFTP is /home/firebee.hex.
|
||
|
||
- If the board IP address is at 0.0.0.0 or 255.255.255.255
|
||
dBUG setting are used for board IP / gateway / netmask /
|
||
path/filename.
|
||
|
||
- If the host IP address is at 0.0.0.0 or 255.255.255.255
|
||
dBUG setting are used for host IP.
|
||
|
||
- If the 3 last bytes of MAC address are 00:00:00 or FF:FF:FF
|
||
dBUG setting are used.
|
||
|
||
@endnode
|
||
|
||
|
||
@node "DBUG task"
|
||
@toc "Annexes"
|
||
@{U}7.3 DBUG task FIREBEE - FIRETOS@{u}
|
||
|
||
This DBUG task use the highspeed serial port, this is the list
|
||
of CF68KLIB, LWIP and FreeRTOS commands :
|
||
|
||
Command Description Syntax
|
||
cb Clear Breakpoint cb <index>
|
||
db Define Breakpoint db <addr> <-c|t value> <-r addr..> <-i> <-m>
|
||
dm Display Memory dm begin <end>
|
||
dis Disassemble dis <addr>
|
||
dr Display Registers CF68KLIB dr
|
||
go Execute, Insert Breakpt go
|
||
lb List Breakpoints lb
|
||
pm Patch Memory pm addr <data>
|
||
qt Query Tasks qt
|
||
st Single Step (after db) st <count>
|
||
cat Concatenate File(s) cat file(s)
|
||
chdir Change Directory chdir dir
|
||
chmod Change Attibutes chmod filename attributes
|
||
cp Copy File cp source dest
|
||
ls List Directory ls <dir>
|
||
mkdir Make Directory mkdir dir
|
||
mv Rename File mv source dest
|
||
rm Remove File rm file
|
||
rmdir Remove Directory rmdir dir
|
||
arp Address Resol. Protocol arp <-a> <host>
|
||
ifconfig Interface Configuration ifconfig <-a> <interface> ...
|
||
ping Ping ping <-n echos> <-w delay> host
|
||
netstat Network Stats netstat
|
||
cache Cache cache on/off
|
||
debug Debug CF68KLIB debug on/off <count (0:infinite)>
|
||
inter Interrupts CF68KLIB inter <on/off/abort>
|
||
reset System Reset reset
|
||
trap Traps CF68KLIB trap on/off <count (0:infinite)>
|
||
help Help help <cmd>
|
||
|
||
Excepted debug commands, it's also possible to use these
|
||
commands with Telnet. You can set the baudrate of the highspeed
|
||
serial port with the CPX.
|
||
|
||
Usage example :
|
||
|
||
> qt
|
||
Name TID Prio Status Sys/User Stack #
|
||
------------------------------------------------------------
|
||
ROOT F1006C 0A Ready 3987/NU/4096 0
|
||
IDLE F141D0 00 Ready 4067/NU/4096 1
|
||
lwIP0 F18510 1E Blocked 3977/NU/4096 2
|
||
lwIP1 F1C750 1E Suspend 4003/NU/4096 3
|
||
TELNETd F208B4 0F Suspend 3998/NU/4096 4
|
||
FTPd F26EDC 0A Blocked 4000/NU/4096 5
|
||
TFTPd F2B040 0A Suspend 3944/NU/4096 6
|
||
HTTPd F2F1A4 0A Suspend 4024/NU/4096 7
|
||
TOS F33308 05 Ready 4073/NU/4096 8
|
||
DBUG F3746C 14 Ready 3004/NU/4096 9
|
||
HMES F3BCF0 0A Ready 4004/NU/4096 10
|
||
HT01 F3FF58 09 Suspend 3981/NU/4096 11
|
||
HT02 F440BC 09 Suspend 3981/NU/4096 12
|
||
HT03 F48220 09 Suspend 3981/NU/4096 13
|
||
HT04 F4C384 09 Suspend 3981/NU/4096 14
|
||
HT05 F504E8 09 Suspend 3981/NU/4096 15
|
||
USBT F54D08 06 Ready 4035/NU/4096 16
|
||
USBd F591D0 1F Suspend 3003/NU/4096 17
|
||
=> qt command displays FreeRTOS tasks, the TOS himself is a task.
|
||
Only the TOS use the CF68KLIB.
|
||
|
||
> inter
|
||
int
|
||
NATIVE/RTOS CF68KLIB/TOS LEV PRI INTERRUPTS
|
||
OFF OFF 1 0 Edge port 1 Int(65)
|
||
OFF OFF 2 0 Edge port 2 Int(66)
|
||
OFF OFF 3 0 Edge port 3 Int(67)
|
||
OFF OFF 4 0 Edge port 4 Int(68)
|
||
OFF OFF 5 0 Edge port 5 Int(69)
|
||
OFF OFF 6 0 Edge port 6 Int(70)
|
||
OFF OFF 7 0 Edge port 7 Int(71)
|
||
OFF OFF 0 0 DSPI Int(89)
|
||
OFF OFF 0 0 DSPI Int(90)
|
||
OFF OFF 0 0 DSPI Int(91)
|
||
OFF OFF 0 0 DSPI Int(92)
|
||
OFF OFF 0 0 DSPI Int(93)
|
||
OFF OFF 0 0 DSPI Int(94)
|
||
OFF OFF 0 0 DSPI Int(95)
|
||
OFF OFF 0 0 PSC3 Int(96)
|
||
OFF OFF 0 0 PSC2 Int(97)
|
||
OFF OFF 0 0 PSC1 Int(98)
|
||
OFF ON 6 5 PSC0 Int(99)
|
||
OFF OFF 0 0 Comm Timer Int(100)
|
||
OFF OFF 0 0 SEC Int(101)
|
||
OFF OFF 0 0 FEC1 Int(102)
|
||
ON ON 5 1 FEC0 Int(103)
|
||
OFF OFF 0 0 I2C Int(104)
|
||
OFF OFF 0 0 PCIARB Int(105)
|
||
OFF OFF 0 0 CBPCI Int(106)
|
||
OFF OFF 0 0 XLBPCI Int(107)
|
||
ON ON 7 7 XLBARB Int(111)
|
||
ON ON 6 0 DMA Int(112)
|
||
OFF OFF 0 0 CAN0 ERROR Int(113)
|
||
OFF OFF 0 0 CAN0 BUSOFF Int(114)
|
||
OFF OFF 0 0 CAN0 MBOR Int(115)
|
||
OFF OFF 0 0 SLT1 Int(117)
|
||
ON ON 6 7 SLT0 Int(118)
|
||
OFF ON 6 4 CAN1 ERROR Int(119)
|
||
OFF ON 6 4 CAN1 BUSOFF Int(120)
|
||
OFF ON 6 4 CAN1 MBOR Int(121)
|
||
OFF OFF 0 0 GPT3 Int(123)
|
||
OFF OFF 0 0 GPT2 Int(124)
|
||
OFF OFF 0 0 GPT1 Int(125)
|
||
OFF OFF 0 0 GPT0 Int(126)
|
||
=> By default TOS interrupts not works without CF68KLIB
|
||
(excepted the TOS himself), so some interrupts are disabled
|
||
out of the TOS task.
|
||
|
||
'db' install a breakpoint, without address db install a
|
||
breakpoint at the beginning of the program during Pexec (BDOS
|
||
feature).
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Firebee MMU mapping"
|
||
@toc "Annexes"
|
||
@{U}7.4 Firebee MMU mapping FIREBEE - FIRETOS@{u}
|
||
|
||
00000000 - 00CF0000 : STRAM 13 MB (cache in writethrough)
|
||
00D00000 - 00DFFFFF : Mirror FPGA 1MB VIDEO RAM (cache in writethrough)
|
||
00E00000 - 00EFFFFF : TOS404 1 MB (write protected)
|
||
00F00000 - 00F01FFF : Mirror FPGA - ATARI IDE (8K)
|
||
00F02000 - 00F0FFFF : invalid (bus error)
|
||
00F10000 - 00F9FFFF : USB descriptors memory, DMA from PCI (no cache)
|
||
00FA0000 - 00FBFFFF : invalid (bus error)
|
||
00FC0000 - 00FEFFFF : TOS404 192 KB (write protected)
|
||
00FF0000 - 00FF7FFF : invalid (bus error)
|
||
00FF8000 - 00FFFFFF : Mirror FPGA - ATARI I/O (32K - no cache)
|
||
01000000 - 1FFFFFFF : SDRAM 496 MB (cache in copyback)
|
||
20000000 - 3FFFFFFF : invalid (bus error)
|
||
40000000 - 7FFFFFFF : FPGA FBCS4 VIDEO RAM
|
||
80000000 - BFFFFFFF : PCI MEM (1024 MB)
|
||
C0000000 - CFFFFFFF : invalid (bus error)
|
||
D0000000 - DFFFFFFF : PCI I/O (256 MB)
|
||
E0000000 - E07FFFFF : FBCS0 flash 8 MB (flash parameters at 0xE04F0000)
|
||
E0800000 - EFFFFFFF : invalid (bus error)
|
||
F0000000 - F7FFFFFF : FPGA FBCS2 ACP I/O
|
||
F8000000 - FBFFFFFF : FPGA FBCS3 SRAM
|
||
FC000000 - FEFFFFFF : invalid (bus error)
|
||
FF000000 - FF01FFFF : MBAR coldfire (no cache)
|
||
FF020000 - FF03FFFF : invalid (bus error)
|
||
FF040000 - FF04FFFF : MMU_BASE coldfire (no cache)
|
||
FF050000 - FFEFFFFF : invalid (bus error)
|
||
FFF00000 - FFFFFFFF : FPGA FBCS1 - ATARI IDE - ATARI I/O (1MB - no cache)
|
||
|
||
@endnode
|
||
|
||
|
||
@node "LWIP socket cookie 'SOCK'"
|
||
@toc "Annexes"
|
||
@{U}7.5 LWIP socket cookie 'SOCK' FIREBEE - FIRETOS@{u}
|
||
|
||
typedef struct socket_cookie
|
||
{
|
||
long version; /* 0x0101 for example */
|
||
long magic; /* 'SOCK' */
|
||
int (*socket)(int domain, int type, int protocol);
|
||
int (*bind)(int s, struct sockaddr *name, socklen_t namelen);
|
||
int (*listen)(int s, int backlog);
|
||
int (*accept)(int s, struct sockaddr *addr, socklen_t *addrlen);
|
||
int (*connect)(int s, struct sockaddr *name, socklen_t namelen);
|
||
int (*write)(int s, void *dataptr, int size);
|
||
int (*send)(int s, void *dataptr, int size, unsigned int flags);
|
||
int (*sendto)(int s, void *dataptr, int size, unsigned int flags, struct sockaddr *to, socklen_t tolen);
|
||
int (*read)(int s, void *mem, int len);
|
||
int (*recv)(int s, void *mem, int len, unsigned int flags);
|
||
int (*recvfrom)(int s, void *mem, int len, unsigned int flags, struct sockaddr *from, socklen_t *fromlen);
|
||
int (*shutdown)(int s, int how);
|
||
int (*close)(int s);
|
||
int (*getsockname)(int s, struct sockaddr *name, socklen_t *namelen);
|
||
int (*getpeername)(int s, struct sockaddr *name, socklen_t *namelen);
|
||
int (*getsockopt)(int s, int level, int optname, void *optval, socklen_t *optlen);
|
||
int (*setsockopt)(int s, int level, int optname, const void *optval, socklen_t optlen);
|
||
int (*select)(int maxfdp1, fd_set *readset, fd_set *writeset, fd_set *exceptset, struct timeval *timeout);
|
||
int (*ioctlsocket)(int s, long cmd, void *argp);
|
||
struct hostent *(*gethostbyname)(const char *name);
|
||
int (*geterrno)(void);
|
||
} SOCKET_COOKIE;
|
||
|
||
@endnode
|
||
|
||
|
||
@node "Contacts"
|
||
@toc "Main"
|
||
@{U}8 Contacts FIREBEE - FIRETOS@{u}
|
||
|
||
Flash Tool, Configuration, and system :
|
||
Didier MEQUIGNON
|
||
aniplay@@wanadoo.fr
|
||
|
||
@endnode
|
||
|
||
|
||
|