TAP_Print und float

Zusatz-Programme für Receiver der 5000er und 6000er Serie.

Hier geht's um alles, was mit den TAP Anwendungen für den PVR5x00/6000 zu tun hat.
Benutzeravatar
ibbi
Moderierter Ignorator Bitteschöööön!
Moderierter Ignorator  <font color=#E9E9E9>Bitteschöööön!</font>
Beiträge: 7110
Registriert: Fr 9. Dez 2005, 12:49
Receivertyp: TF5000PVR • SRP-2401CI+ Eco
Receiverfirmware: Sep 2005 PHTF • Jan 2015

TAP_Print und float

#1

Beitrag von ibbi » Di 2. Jan 2007, 21:36

Ich verzweifle gerade seit 2 Stunden an folgendem Stück Code und glaubte schon, ich wäre bei Versteckte Kamera:

Code: Alles auswählen

  float bps;
  TYPE_PlayInfo playinfo;

  TAP_Hdd_GetPlayInfo(&playinfo);

  bps = (float) playinfo.totalBlock / (60.0 * (float) playinfo.duration);

  TAP_Print("Block/s: %g (Blocks: %lu, Duration: %u, Seconds: %u)\n", bps, playinfo.totalBlock, playinfo.duration, playinfo.duration * 60);
Bei einer Aufname, von der ich weiß, dass sie 39315 Blocks hat und 127 Minuten lang ist (und dass 127 * 60 = 7620 ist), bekomme ich folgende Ausgabe:

Code: Alles auswählen

Block/s: 2.70025e-312 (Blocks: 2147483648, Duration: 39315, Seconds: 127)
:X

Welchen Schrott produziert TAP_Print denn hier?
Power Restore 0.8 | PiP 1.2 | 1.1v | QuickTimer 1.0.3 (IB) | TF5000 Display 1.53 | dbPlay 1.2 | Auto Resume 1.30 | IdleHdd 1.0 | EPPG 2.0 | WWWW 0.1b
(Kanalarbeiter 0.9, RecRepair 0.4, ScanDisk 1.4, ScreenCapture with OSD 3.1)


Power Restore 0.8 | EasyTimer 1.0 | EPPG 2.0 | 1.1v
(telnetd 1.0, TMSRemote 4.6)

Benutzeravatar
Sigittarius-E
FIQMDTSSOOLUETSNAK
<span title=ForuminformationsquellemitdauertimeshiftschaltungoutingOberlehrerUndErfahrenerTratscherStatusNichtAussprechenKönner>FIQMDTSSOOLUETSNAK</span>
Beiträge: 8216
Registriert: Fr 9. Dez 2005, 18:49
Receivertyp: TF5kPVR/TF3kCIpro
Receiverfirmware: 13.9.'05 SHUFGmUx/19.4.'04
Wohnort: Österreich, NÖrdl.d.Donau

AW: TAP_Print und float

#2

Beitrag von Sigittarius-E » Di 2. Jan 2007, 21:41

wie groß ist denn die Aufnahme? (in MB)
Grüsse
Sigittarius-E
S-VHS ist nicht S-Video. So schreibt man: Standard, Satellit, wäre. TABs sind was für die Dritten.

TF5000PVR
HD:SP2514N
CAM:irdeto CW v3.15 ORF
Lüfter:Noiseblocker USF S1+Poti.
Verb.:[/b]Silex SX2kU2
TV:Toshiba 42"
Auto Start-Reihenf.: GMTTimerBug WA2|QT|IB Prem|StopExit|WSSKiller|JagEPG|Matrix Screensaver|PiP|DisplayTAP|wwww|reccopy|
TSBProtector v0.9.0|CheckAndCreate_EPGTimer v1.1
Manuell: SimpleCharEditor v3.09b,SetCryptFlag v0.3,exie v0.3,EBM v0.01

Online
Benutzeravatar
FireBird
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Beiträge: 28918
Registriert: Fr 9. Dez 2005, 09:59
Receivertyp: SRP-2401CI+ TFIR
vu+ Duo 4k
Wohnort: Wien

AW: TAP_Print und float

#3

Beitrag von FireBird » Di 2. Jan 2007, 21:42

Float produziert (zumindest mit unserer GCCforTAP) nur Müll. DeJe?

Benutzeravatar
ibbi
Moderierter Ignorator Bitteschöööön!
Moderierter Ignorator  <font color=#E9E9E9>Bitteschöööön!</font>
Beiträge: 7110
Registriert: Fr 9. Dez 2005, 12:49
Receivertyp: TF5000PVR • SRP-2401CI+ Eco
Receiverfirmware: Sep 2005 PHTF • Jan 2015

AW: TAP_Print und float

#4

Beitrag von ibbi » Di 2. Jan 2007, 21:48

[quote=""Sigittarius-E""]wie groß ist denn die Aufnahme? (in MB)[/quote]

3608 MB.

[quote=""FireBird""]Float produziert (zumindest mit unserer GCCforTAP) nur Müll. DeJe?[/quote]

Das stimmt so nicht. Ein (dword) bps enthält schon den korrekten Wert. Nur die Ausgabe von TAP_Print für float-Formate ist Müll.
Power Restore 0.8 | PiP 1.2 | 1.1v | QuickTimer 1.0.3 (IB) | TF5000 Display 1.53 | dbPlay 1.2 | Auto Resume 1.30 | IdleHdd 1.0 | EPPG 2.0 | WWWW 0.1b
(Kanalarbeiter 0.9, RecRepair 0.4, ScanDisk 1.4, ScreenCapture with OSD 3.1)


Power Restore 0.8 | EasyTimer 1.0 | EPPG 2.0 | 1.1v
(telnetd 1.0, TMSRemote 4.6)

Benutzeravatar
Sigittarius-E
FIQMDTSSOOLUETSNAK
<span title=ForuminformationsquellemitdauertimeshiftschaltungoutingOberlehrerUndErfahrenerTratscherStatusNichtAussprechenKönner>FIQMDTSSOOLUETSNAK</span>
Beiträge: 8216
Registriert: Fr 9. Dez 2005, 18:49
Receivertyp: TF5kPVR/TF3kCIpro
Receiverfirmware: 13.9.'05 SHUFGmUx/19.4.'04
Wohnort: Österreich, NÖrdl.d.Donau

AW: TAP_Print und float

#5

Beitrag von Sigittarius-E » Di 2. Jan 2007, 21:54

[quote=""ibbi""]3608 MB.[/quote]

Gibt es da nicht einen 2GB Bug von dem ich mal im Overfly und im MediaManager (UK Board) gelesen habe :thinker:
Grüsse
Sigittarius-E
S-VHS ist nicht S-Video. So schreibt man: Standard, Satellit, wäre. TABs sind was für die Dritten.

TF5000PVR
HD:SP2514N
CAM:irdeto CW v3.15 ORF
Lüfter:Noiseblocker USF S1+Poti.
Verb.:[/b]Silex SX2kU2
TV:Toshiba 42"
Auto Start-Reihenf.: GMTTimerBug WA2|QT|IB Prem|StopExit|WSSKiller|JagEPG|Matrix Screensaver|PiP|DisplayTAP|wwww|reccopy|
TSBProtector v0.9.0|CheckAndCreate_EPGTimer v1.1
Manuell: SimpleCharEditor v3.09b,SetCryptFlag v0.3,exie v0.3,EBM v0.01

Benutzeravatar
ibbi
Moderierter Ignorator Bitteschöööön!
Moderierter Ignorator  <font color=#E9E9E9>Bitteschöööön!</font>
Beiträge: 7110
Registriert: Fr 9. Dez 2005, 12:49
Receivertyp: TF5000PVR • SRP-2401CI+ Eco
Receiverfirmware: Sep 2005 PHTF • Jan 2015

AW: TAP_Print und float

#6

Beitrag von ibbi » Di 2. Jan 2007, 22:12

[quote=""Sigittarius-E""]Gibt es da nicht einen 2GB Bug von dem ich mal im Overfly und im MediaManager (UK Board) gelesen habe :thinker: [/quote]

Was immer auch dies für ein Bug ist, der TAP_Print-float-Bug ist unabhängig davon:

Code: Alles auswählen

  float f;
  int i, j;

  f = 7.0 / 3.0;
  i = 1;
  j = 2;

  TAP_Print("%f %d %d\n", f, i, j);
  TAP_Print("%d %d %d\n", (int) f, i, j);
Ausgabe:

-0.000000 -1610612736 1
2 1 2


Macht echt Spaß. :?

Wenn DeJe jetzt schreibt, dass er diesen Bug nicht hat, steige ich auf den toolchain-Compiler um.
Power Restore 0.8 | PiP 1.2 | 1.1v | QuickTimer 1.0.3 (IB) | TF5000 Display 1.53 | dbPlay 1.2 | Auto Resume 1.30 | IdleHdd 1.0 | EPPG 2.0 | WWWW 0.1b
(Kanalarbeiter 0.9, RecRepair 0.4, ScanDisk 1.4, ScreenCapture with OSD 3.1)


Power Restore 0.8 | EasyTimer 1.0 | EPPG 2.0 | 1.1v
(telnetd 1.0, TMSRemote 4.6)

Benutzeravatar
Homer
ToppiHolic gefährdet
ToppiHolic gefährdet
Beiträge: 9730
Registriert: Sa 11. Mär 2006, 12:08
Receivertyp: TF5200PVRc (seit 25. März 2006) CRP-2401CI+ (seit 26. Mai 2011) Uno 4K
Receiverfirmware: Dec 06 2006,
Mar 9 2011
Wohnort: 669..
Kontaktdaten:

AW: TAP_Print und float

#7

Beitrag von Homer » Di 2. Jan 2007, 23:32

[quote=""ibbi""]Was immer auch dies für ein Bug ist, der TAP_Print-float-Bug ist unabhängig davon:

Code: Alles auswählen

  float f;
  int i, j;
 
  f = 7.0 / 3.0;
  i = 1;
  j = 2;
 
  TAP_Print("%f %d %d\n", f, i, j);
  TAP_Print("%d %d %d\n", (int) f, i, j);

Ausgabe:

-0.000000 -1610612736 1
2 1 2
[/quote]
Es sieht so aus, als ob f mehr Platz belegt als durch TAP_Print("%f",f) abgearbeitet wird.

Viele Grüße
Homer
rettet-das-freetv.de Project Euler 2401 Urban Priol ist ein smarter Androide und kann keine TAPs.

TF5200PVRc (HA250JC)
TAPs: BootMenu - UsbAccelerator - [thread=49960]acaderc_5k[/thread] - RemoteSwitch - Automove V1.9 final [90] (18.04.2008) - TF5000Display - 3PG - IdleHDD

CRP-2401CI+ (ST3500312CS,MZ-75E500B)
TAPs: XStartTap_TMS - AutoReboot - RemoteSwitch_TMS - RescueRecs - SmartEPG_TMS - RebuildNAV - Automove V2.0 beta 13 (24.05.2011) - StartFTPd - TMSRemote - NiceDisplay

KabelBW Unitymedia (free to air)

DeJe
Topfmeister
Topfmeister
Beiträge: 612
Registriert: Sa 10. Dez 2005, 13:57

AW: TAP_Print und float

#8

Beitrag von DeJe » Mi 3. Jan 2007, 14:07

Habs mal getestet.
Hier kommt der gleiche Müll raus. :(
TF5000PVR Masterpiece mit 250GB Samsung, ImproBox Premium, QuickTimer, 3PG, Filer, FastSkip, WSSKiller

Benutzeravatar
ibbi
Moderierter Ignorator Bitteschöööön!
Moderierter Ignorator  <font color=#E9E9E9>Bitteschöööön!</font>
Beiträge: 7110
Registriert: Fr 9. Dez 2005, 12:49
Receivertyp: TF5000PVR • SRP-2401CI+ Eco
Receiverfirmware: Sep 2005 PHTF • Jan 2015

AW: TAP_Print und float

#9

Beitrag von ibbi » Mi 3. Jan 2007, 14:12

[quote=""DeJe""]Habs mal getestet.
Hier kommt der gleiche Müll raus. :( [/quote]

Der Bug dürfte sich ja auch in der libtap.a (die es nur in einer Version gibt) befinden. Offenbar ist diese nicht mit soft-float-Support übersetzt worden, so dass das Format des übergebenen Fließkommawertes falsch interpretiert wird.
Power Restore 0.8 | PiP 1.2 | 1.1v | QuickTimer 1.0.3 (IB) | TF5000 Display 1.53 | dbPlay 1.2 | Auto Resume 1.30 | IdleHdd 1.0 | EPPG 2.0 | WWWW 0.1b
(Kanalarbeiter 0.9, RecRepair 0.4, ScanDisk 1.4, ScreenCapture with OSD 3.1)


Power Restore 0.8 | EasyTimer 1.0 | EPPG 2.0 | 1.1v
(telnetd 1.0, TMSRemote 4.6)

DeJe
Topfmeister
Topfmeister
Beiträge: 612
Registriert: Sa 10. Dez 2005, 13:57

AW: TAP_Print und float

#10

Beitrag von DeJe » Mi 3. Jan 2007, 14:59

Ich habe eine eigene sprintf-Routine von der ich weiß das sie richtig funktioniert, auch mit Float-Ausgaben. Auf dem Topf kommt dort auch nur Müll raus (0.000000).

Es scheint auf dem Topf in der Tat am "float" selbst zu liegen. :thinker:
TF5000PVR Masterpiece mit 250GB Samsung, ImproBox Premium, QuickTimer, 3PG, Filer, FastSkip, WSSKiller

Benutzeravatar
ibbi
Moderierter Ignorator Bitteschöööön!
Moderierter Ignorator  <font color=#E9E9E9>Bitteschöööön!</font>
Beiträge: 7110
Registriert: Fr 9. Dez 2005, 12:49
Receivertyp: TF5000PVR • SRP-2401CI+ Eco
Receiverfirmware: Sep 2005 PHTF • Jan 2015

AW: TAP_Print und float

#11

Beitrag von ibbi » Mi 3. Jan 2007, 15:10

[quote=""DeJe""]Ich habe eine eigene sprintf-Routine von der ich weiß das sie richtig funktioniert, auch mit Float-Ausgaben. Auf dem Topf kommt dort auch nur Müll raus (0.000000).

Es scheint auf dem Topf in der Tat am "float" selbst zu liegen. :thinker: [/quote]

Kennst Du denn die interne Repräsentation von (soft-)float auf dem Topf? Oder benutzt Deine Routine %-Format-Funktionen der Bibliotheken?

Float-Operationen und Variablen selbst scheinen ja zu funktionieren, nur deren Formatierung nicht.
Power Restore 0.8 | PiP 1.2 | 1.1v | QuickTimer 1.0.3 (IB) | TF5000 Display 1.53 | dbPlay 1.2 | Auto Resume 1.30 | IdleHdd 1.0 | EPPG 2.0 | WWWW 0.1b
(Kanalarbeiter 0.9, RecRepair 0.4, ScanDisk 1.4, ScreenCapture with OSD 3.1)


Power Restore 0.8 | EasyTimer 1.0 | EPPG 2.0 | 1.1v
(telnetd 1.0, TMSRemote 4.6)

DeJe
Topfmeister
Topfmeister
Beiträge: 612
Registriert: Sa 10. Dez 2005, 13:57

AW: TAP_Print und float

#12

Beitrag von DeJe » Mi 3. Jan 2007, 15:44

Hm, nein. Habe noch nicht geschaut ob die interne Repräsentation genau der des PC entspricht. Müßte ich mal vergleichen...

Edit: vorherige Aussage war falsch. Float ist nur 32 bit.

Aber irgendwie wird float falsch übergeben.

Wenn ich meinen Code folgendermaßen ändere:

Code: Alles auswählen

	unsigned int *pf;
	float f;

	f = 1.23456789;
	pf = (unsigned int *)&f;

	snprintf( 128, s_cMsg, "Float:%1.8f", *pf );
erhalte ich für "f" die richtige Ausgabe. Für ein normales

Code: Alles auswählen

snprintf( 128, s_cMsg, "Float:%1.8f", f );
aber nicht... :confused:

Die obere Variante funktioniert mit TAP_Sprint() übrigens nicht, es bleibt beim 0.00000
Zuletzt geändert von DeJe am Mi 3. Jan 2007, 18:11, insgesamt 1-mal geändert.
TF5000PVR Masterpiece mit 250GB Samsung, ImproBox Premium, QuickTimer, 3PG, Filer, FastSkip, WSSKiller

Benutzeravatar
Elle4u
TAP-Chirurg

<div title=Selbsternannter Allesknutscher>TAP-Chirurg</div>
Beiträge: 11971
Registriert: Fr 9. Dez 2005, 16:48
Receivertyp: SRP-2410 (2 TB)
Receiverfirmware: TF-BCPCE 1.11.00 (19.12.2013)
Wohnort: Osburg
Kontaktdaten:

AW: TAP_Print und float

#13

Beitrag von Elle4u » Mi 3. Jan 2007, 18:40

[quote=""ibbi""]

Code: Alles auswählen

  TAP_Hdd_GetPlayInfo(&playinfo);
[/quote]
Hat zwar nur indirekt etwas mit Deiner Frage zu tun:

Immer darauf achten, die sicheren Aufrufe zu nehmen (Buffer overflow):

Code: Alles auswählen

// Workaround for TAP_Hdd_GetPlayInfo and TAP_Hdd_GetRecInfo buffer overrun bugs
bool Safe_TAP_Hdd_GetPlayInfo( TYPE_PlayInfo* playInfo )
{
  static TYPE_PlayInfo  safeInfo;
  static char           overrun[128];
  static int            overrunCheck;

  overrun[0] = 0;
  overrunCheck = 1;
  if ( !TAP_Hdd_GetPlayInfo( &safeInfo ) ) return FALSE;
  if ( overrunCheck != 1 ) TAP_Print( "TAP_Hdd_GetPlayInfo buffer overrun." );

  memcpy( playInfo, &safeInfo, sizeof(TYPE_PlayInfo) );

  return TRUE;
}

bool Safe_TAP_Hdd_GetRecInfo( byte recSlot, TYPE_RecInfo* recInfo )
{
  static TYPE_RecInfo   safeInfo;
  static char           overrun[128];
  static int            overrunCheck;

  overrun[0] = 0;
  overrunCheck = 1;
  if ( !TAP_Hdd_GetRecInfo( recSlot, &safeInfo ) ) return FALSE;
  if ( overrunCheck != 1 ) TAP_Print( "TAP_Hdd_GetRecInfo buffer overrun." );

  memcpy( recInfo, &safeInfo, sizeof(TYPE_RecInfo) );

  return TRUE;
}

Gruß,
Elle4u

Benutzeravatar
ibbi
Moderierter Ignorator Bitteschöööön!
Moderierter Ignorator  <font color=#E9E9E9>Bitteschöööön!</font>
Beiträge: 7110
Registriert: Fr 9. Dez 2005, 12:49
Receivertyp: TF5000PVR • SRP-2401CI+ Eco
Receiverfirmware: Sep 2005 PHTF • Jan 2015

AW: TAP_Print und float

#14

Beitrag von ibbi » Mi 3. Jan 2007, 18:43

[quote=""Elle4u""]Immer darauf achten, die sicheren Aufrufe zu nehmen (Buffer overflow):[/quote]

Ich weiß, wollte aber das Beispiel nicht unnötig verkomplizieren. :D :
Power Restore 0.8 | PiP 1.2 | 1.1v | QuickTimer 1.0.3 (IB) | TF5000 Display 1.53 | dbPlay 1.2 | Auto Resume 1.30 | IdleHdd 1.0 | EPPG 2.0 | WWWW 0.1b
(Kanalarbeiter 0.9, RecRepair 0.4, ScanDisk 1.4, ScreenCapture with OSD 3.1)


Power Restore 0.8 | EasyTimer 1.0 | EPPG 2.0 | 1.1v
(telnetd 1.0, TMSRemote 4.6)

Benutzeravatar
Homer
ToppiHolic gefährdet
ToppiHolic gefährdet
Beiträge: 9730
Registriert: Sa 11. Mär 2006, 12:08
Receivertyp: TF5200PVRc (seit 25. März 2006) CRP-2401CI+ (seit 26. Mai 2011) Uno 4K
Receiverfirmware: Dec 06 2006,
Mar 9 2011
Wohnort: 669..
Kontaktdaten:

AW: TAP_Print und float

#15

Beitrag von Homer » Mi 3. Jan 2007, 19:47

Funktioniert es denn mit double oder long double statt float?

Viele Grüße
Homer
rettet-das-freetv.de Project Euler 2401 Urban Priol ist ein smarter Androide und kann keine TAPs.

TF5200PVRc (HA250JC)
TAPs: BootMenu - UsbAccelerator - [thread=49960]acaderc_5k[/thread] - RemoteSwitch - Automove V1.9 final [90] (18.04.2008) - TF5000Display - 3PG - IdleHDD

CRP-2401CI+ (ST3500312CS,MZ-75E500B)
TAPs: XStartTap_TMS - AutoReboot - RemoteSwitch_TMS - RescueRecs - SmartEPG_TMS - RebuildNAV - Automove V2.0 beta 13 (24.05.2011) - StartFTPd - TMSRemote - NiceDisplay

KabelBW Unitymedia (free to air)

Benutzeravatar
ibbi
Moderierter Ignorator Bitteschöööön!
Moderierter Ignorator  <font color=#E9E9E9>Bitteschöööön!</font>
Beiträge: 7110
Registriert: Fr 9. Dez 2005, 12:49
Receivertyp: TF5000PVR • SRP-2401CI+ Eco
Receiverfirmware: Sep 2005 PHTF • Jan 2015

AW: TAP_Print und float

#16

Beitrag von ibbi » Do 4. Jan 2007, 09:11

[quote=""Homer""]Funktioniert es denn mit double oder long double statt float?[/quote]

Double habe ich ausprobiert, geht auch nicht.

Gestern wollte ich schlau sein und mal sprintf oder snprintf versuchen, aber Topfield war schlauer. Das erste ist umdefiniert (TAP_SPrint) und funktioniert auch nicht, das zweite gibt es gar nicht.

Obwohl wir jetzt jemanden an der Quelle haben, hört man von einer neuen API ja leider auch nix mehr.
Power Restore 0.8 | PiP 1.2 | 1.1v | QuickTimer 1.0.3 (IB) | TF5000 Display 1.53 | dbPlay 1.2 | Auto Resume 1.30 | IdleHdd 1.0 | EPPG 2.0 | WWWW 0.1b
(Kanalarbeiter 0.9, RecRepair 0.4, ScanDisk 1.4, ScreenCapture with OSD 3.1)


Power Restore 0.8 | EasyTimer 1.0 | EPPG 2.0 | 1.1v
(telnetd 1.0, TMSRemote 4.6)

Online
Benutzeravatar
FireBird
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Beiträge: 28918
Registriert: Fr 9. Dez 2005, 09:59
Receivertyp: SRP-2401CI+ TFIR
vu+ Duo 4k
Wohnort: Wien

AW: TAP_Print und float

#17

Beitrag von FireBird » Do 6. Dez 2007, 21:59

Und hier ist die Erklärung.

Benutzeravatar
ibbi
Moderierter Ignorator Bitteschöööön!
Moderierter Ignorator  <font color=#E9E9E9>Bitteschöööön!</font>
Beiträge: 7110
Registriert: Fr 9. Dez 2005, 12:49
Receivertyp: TF5000PVR • SRP-2401CI+ Eco
Receiverfirmware: Sep 2005 PHTF • Jan 2015

AW: TAP_Print und float

#18

Beitrag von ibbi » Fr 7. Dez 2007, 09:33

[quote=""FireBird""]Und hier ist die Erklärung.[/quote]

Und das nach fast einem Jahr.
Power Restore 0.8 | PiP 1.2 | 1.1v | QuickTimer 1.0.3 (IB) | TF5000 Display 1.53 | dbPlay 1.2 | Auto Resume 1.30 | IdleHdd 1.0 | EPPG 2.0 | WWWW 0.1b
(Kanalarbeiter 0.9, RecRepair 0.4, ScanDisk 1.4, ScreenCapture with OSD 3.1)


Power Restore 0.8 | EasyTimer 1.0 | EPPG 2.0 | 1.1v
(telnetd 1.0, TMSRemote 4.6)

Benutzeravatar
ibbi
Moderierter Ignorator Bitteschöööön!
Moderierter Ignorator  <font color=#E9E9E9>Bitteschöööön!</font>
Beiträge: 7110
Registriert: Fr 9. Dez 2005, 12:49
Receivertyp: TF5000PVR • SRP-2401CI+ Eco
Receiverfirmware: Sep 2005 PHTF • Jan 2015

AW: TAP_Print und float

#19

Beitrag von ibbi » Fr 7. Dez 2007, 11:03

Wie wäre es denn dann mit etwas wie

Code: Alles auswählen

#define _f(x) ((dword *) &x)[0], ((dword *) &x)[1]
in der Lib?



Wie? Was? Ich soll das geschrieben geschrieben haben?! Niemals. :u:
Power Restore 0.8 | PiP 1.2 | 1.1v | QuickTimer 1.0.3 (IB) | TF5000 Display 1.53 | dbPlay 1.2 | Auto Resume 1.30 | IdleHdd 1.0 | EPPG 2.0 | WWWW 0.1b
(Kanalarbeiter 0.9, RecRepair 0.4, ScanDisk 1.4, ScreenCapture with OSD 3.1)


Power Restore 0.8 | EasyTimer 1.0 | EPPG 2.0 | 1.1v
(telnetd 1.0, TMSRemote 4.6)

Benutzeravatar
Homer
ToppiHolic gefährdet
ToppiHolic gefährdet
Beiträge: 9730
Registriert: Sa 11. Mär 2006, 12:08
Receivertyp: TF5200PVRc (seit 25. März 2006) CRP-2401CI+ (seit 26. Mai 2011) Uno 4K
Receiverfirmware: Dec 06 2006,
Mar 9 2011
Wohnort: 669..
Kontaktdaten:

AW: TAP_Print und float

#20

Beitrag von Homer » Fr 7. Dez 2007, 12:09

R2-D2 Posted: Fri. 07.12.2007 11:13:00
Adjusting the stack in TAP_Main() fixes it completely. DOH! I think the firmware could be patched to provide a proper fix, or TAPs that were bothered about it could have fixup wrappers on TAP_Main() and TAP_EventHandler().

Code: Alles auswählen

 
int TAP_Main(void) 
{ 
   char s[80]; 
   dword d=33; 
   double x=12345.67890, y=2121212.121212, z=-97979.797; 
__asm__ __volatile__ ("addiu $29,$29,-4\n"); 
   TAP_Print("x=%f y=%f d=%d z=%f\n",x,y,d,z); 
   TAP_SPrint(s,"x=%f y=%f d=%d z=%f\n",x,y,d,z); 
   TAP_Print(s); 
__asm__ __volatile__ ("addiu $29,$29,4\n"); 
   return 0; 
}
Viele Grüße
Homer
Zuletzt geändert von Homer am Fr 7. Dez 2007, 12:12, insgesamt 1-mal geändert.
rettet-das-freetv.de Project Euler 2401 Urban Priol ist ein smarter Androide und kann keine TAPs.

TF5200PVRc (HA250JC)
TAPs: BootMenu - UsbAccelerator - [thread=49960]acaderc_5k[/thread] - RemoteSwitch - Automove V1.9 final [90] (18.04.2008) - TF5000Display - 3PG - IdleHDD

CRP-2401CI+ (ST3500312CS,MZ-75E500B)
TAPs: XStartTap_TMS - AutoReboot - RemoteSwitch_TMS - RescueRecs - SmartEPG_TMS - RebuildNAV - Automove V2.0 beta 13 (24.05.2011) - StartFTPd - TMSRemote - NiceDisplay

KabelBW Unitymedia (free to air)

Antworten

Zurück zu „TF 5x00/6000 PVR TAP“