This is an old version from the tos.hyp. The new is on GitHub!

HomeXBIOSCrazy-Dots-XBIOS-ErweiterungDatum, Uhrzeit und Zeitgeber

4.8 CT60-XBIOS-Erweiterung

ct60_cache aktivieren/deaktivieren der 68060 Caches.
ct60_flush_cache flush 68060 Caches.
ct60_read_core_temperature Temperatur des 68060 lesen.
ct60_rw_parameter Lesen oder Schreiben eines Parameter im Flash Eprom.
ct60_vmalloc Speicher reservieren (Radeon Treiber)

4.8.1 ct60_cache

Name: »ct60_cache« - aktivieren/deaktivieren der 68060 Caches.
Xbiosnummer: 50700 (0xc60c)
Deklaration: int32_t ct60_cache( int16_t cache_mode );
Beschreibung: Diese XBIOS Funktion wird in der gepatchten Version des General.cpx benutzt, die 68060 Caches zu aktivieren/deaktivieren.
Parameter Bedeutung
   
cache_mode  1 = Caches aktivieren.
 0 = Caches deaktivieren.
-1 = keine Änderung.


Achtung:
Vom Anwender sollte die CacheCtrl Funktion benutzt werden.
Ergebnis: Liefert CACR.
Verfügbar: TOS 4.04 mit Patch für CT60 Beschleunigerboard.
Gruppe: CT60-XBIOS-Erweiterung
Querverweis: Binding

4.8.1.1 Bindings für ct60_cache

C: int32_t ct60_cache( int16_t cache_mode );
Assembler:
move.w    cache_mode,-(sp); Offset 2
move.w    #$c60c,-(sp)    ; Offset 0
trap      #14             ; XBIOS aufrufen
addq.l    #4,sp           ; Stack korrigieren

4.8.2 ct60_flush_cache

Name: »ct60_flush_cache« - flush 68060 Caches
Xbiosnummer: 50701 (0xc60d)
Deklaration: int32_t ct60_flush_cache( void );
Beschreibung: Diese XBIOS Funktion wird in der gepatchten Version des General.cpx benutzt, um den Instruction- und den Datencache zu löschen.

Achtungt:
Vom Anwender sollte die CacheCtrl Funktion benutzt werden.
Ergebnis: E_OK (0)
Verfügbar: TOS 4.04 mit Patch für CT60 Beschleunigerboard.
Gruppe: CT60-XBIOS-Erweiterung
Querverweis: Binding

4.8.2.1 Bindings für ct60_flush_cache

C: int32_t ct60_flush_cache( void );
Assembler:
move.w    #$c60d,-(sp)    ; Offset 0
trap      #14             ; XBIOS aufrufen
addq.l    #2,sp           ; Stack korrigieren

4.8.3 ct60_read_core_temperature

Name: »ct60_read_core_temperature« - Temperatur des 68060 lesen.
Xbiosnummer: 50698 (0xc60a)
Deklaration: int32_t ct60_read_core_temperature( int16_t type_deg );
Beschreibung: Diese XBIOS Funktion ermittelt die Temperatur des 68060.
type_deg: CT60_CELCIUS    0
CT60_FARENHEIT  1
Ergebnis: Die ermittelte Temperatur oder ERROR (-1) im Fehlerfall.
Verfügbar: TOS 4.04 mit Patch für CT60 Beschleunigerboard.
Gruppe: CT60-XBIOS-Erweiterung
Querverweis: Binding

4.8.3.1 Bindings für ct60_read_core_temperature

C: int32_t ct60_read_core_temperature( int16_t type_deg );
Assembler:
move.w    type_deg,-(sp)  ; Offset 2
move.w    #$c60a,-(sp)    ; Offset 0
trap      #14             ; XBIOS aufrufen
addq.l    #4,sp           ; Stack korrigieren

4.8.4 ct60_rw_parameter

Name: »ct60_rw_parameter« - Lesen oder Schreiben eines Parameter im Flash Eprom.
Xbiosnummer: 50699 (0xc60b)
Deklaration: int32_t ct60_rw_parameter( int16_t mode, int32_t type_param, int16_t value );
Beschreibung: Diese XBIOS Funktion liest oder schreibt einen Parameter in das Flash Eprom. Die Funktion liefert den Wert zurück.
mode CT60_MODE_READ (0)
Parameter lesen.

CT60_MODE_WRITE (1)
Parameter schreiben.
type_param CT60_PARAM_TOSRAM (0)
Ist der Wert von value 1, wird das TOS in der Bootphase in das SDRAM kopiert (PMMU wird benutzt und Cookie PMMU angelegt). Ist der Wert von value 0, wird das TOS im Flash Eprom benutzt.

CT60_BLITTER_SPEED (1)
Ist der Wert von value 0, läuft der Blitter mit 8/10 MHz. Ist der Wert von value 1, läuft der Blitter mit 16/20 MHz.

CT60_CACHE_DELAY (2)
If the bit 0 of the value is cleared, the Pexec function is normal (flushes cache).
If the bit 0 of the value is set, the caches are disabled for 5 seconds when a program is started under TOS with the Pexec function.
If the bit 1 of the value is set, there are an Fread test and maybe a copyback alert if the code begin by $601A. With this alert you can remove the cache during 5 seconds.
If the bit 1 of the value is cleared, there is no copyback alert.

CT60_BOOT_ORDER (3)
New boot
Ist der Wert von value 0, dann bootet TOS von SCSI Geräten (0-7) vor IDE Geräten (0-1).
Ist der Wert von value 1, dann bootet TOS von IDE Geräten (0-1) vor SCSI Geräten (0-7).
Ist der Wert von value 2, dann bootet TOS von SCSI Geräten (7-0) vor IDE Geräten (1-0).
Ist der Wert von value 3, dann bootet TOS von IDE Geräten (1-0) vor SCSI Geräten (7-0).


Old boot
If the value is set to 4, TOS boots from SCSI drives (0-7) before IDE drives (0-1).
If the value is set to 5, TOS boots from IDE drives (0-1) before SCSI drives (0-7).
If the value is set to 6, TOS boots from SCSI drives (7-0) before IDE drives (1-0).
If the value is set to 7, TOS boots from IDE drives (1-0) before SCSI drives (7-0).


CT60_CPU_FPU (4)
Ist das Bit 0 von value gelöscht, dann ist die FPU abgeschaltet.

CT60_BOOT_LOG (5)
If the bit 0 is cleared, the stdout output of the AUTO folder files is writed inside a boot.log on the boot drive.

CT60_VMODE (6)
Boot extended modecode for CTPCI graphic card: F030 modecode + extended bits:

HORFLAG 0x200 for double width
HORFLAG2 0x400 for width increased
VESA_600 0x800 for SVGA 600
VESA_768 0x1000 for SVGA 768
VERTFLAG2 0x2000 for double height
BPS32 5 for True Color


CT60_SAVE_NVRAM_1 (7)
CT60_SAVE_NVRAM_2 (8)
CT60_SAVE_NVRAM_3 (9)
Reserved for TOS NVM backup, do not use.

CT60_PARAM_OFFSET_TLV (10)
Der Wert value enthält einen vorzeichenbehafteten Offset in Punkten. Ein Punkt entspricht 2.8 °C.

CT60_ABE_CODE (11)
CT60_SDR_CODE (12)
Reserved for save ABE/SDR versions, do not use.

CT60_CLOCK (13)
CTPCM boot clock frequency in KHz (65000-110000)
WARNING, if you increase frequency !!!

CT60_PARAM_CTPCI (14)
If the bit 0 of the value is cleared, the TOS boot on the native F030 IDE port.
If the bit 0 of the value is set, the TOS boot n the CTPCI IDE port who replaces the F030 at the same address.
If the bit 1 of the value is cleared, the VDI not use the CTPCI PLX DMA (slower for vro_cpyfm).
If the bit 1 of the value is set, the VDI use the CTPCI PLX DMA (faster for vro_cpyfm).
Ergebnis: Der Parameter oder:
EBADRQ (-5) wenn der Parameter >=15 ist.
EWRITF (-10) für einen Schreibfehler.
EUNDEV (-15) wenn das Flash nicht gefunden wurde.
Verfügbar: TOS 4.04 mit Patch für CT60 Beschleunigerboard.
Gruppe: CT60-XBIOS-Erweiterung
Querverweis: Binding

4.8.4.1 Bindings für ct60_rw_parameter

C: int32_t ct60_rw_parameter( int16_t mode, int32_t type_param, int16_t value );
Assembler:
move.l    value,-(sp)     ; Offset 8
move.l    type_param,-(sp); Offset 4
move.w    mode,-(sp)      ; Offset 2
move.w    #$c60b,-(sp)    ; Offset 0
trap      #14             ; XBIOS aufrufen
addq.l    #12,sp          ; Stack korrigieren

4.8.5 ct60_vmalloc

Name: »ct60_vmalloc« - memory allocation (Radeon driver)
Xbiosnummer: 50702 (0xc60e)
Deklaration: int32_t ct60_vmalloc( int16_t mode, int32_t value )
Beschreibung: This function is used to allocate memory inside the offscreen area.

mode  
0 value <=> malloc size, return address or null
  if memory full
  value = -1 => return bytes free ct60_vmalloc(0, -1L).
1 value <=> address of previous malloc to free.
2 null value for init. (normally never used excepted
  by radeon.sys or Vsetscreen)
Ergebnis: Die Adresse oder null wenn der Speicher voll ist.

Achtung!
In alle Beschreinungen wird als Rückgabe ein int32_t angegeben. In Wirklichkeit kann der Wert aber auch größer sein. Deswegen ist ein uint32_t besser.
Verfügbar: Only valid with internal TOS Radeon driver (PCI.HEX). TOS 4.04 mit Patch für CT60 Beschleunigerboard (2007-01-24).
Ist auch verfügaber wenn der Cookie SupV vorhanden ist.
Gruppe: CT60-XBIOS-Erweiterung
Querverweis: Binding

4.8.5.1 Bindings für ct60_vmalloc

C: int32_t ct60_vmalloc( int16_t mode, int32_t value );
Assembler:
move.l    value,-(sp)     ; Offset 4
move.w    mode,-(sp)      ; Offset 2
move.w    #$c60e,-(sp)    ; Offset 0
trap      #14             ; XBIOS aufrufen
addq.l    #8,sp           ; Stack korrigieren

HomeXBIOSCrazy-Dots-XBIOS-ErweiterungDatum, Uhrzeit und Zeitgeber