This is because the library is built without float support
to keeo it small. Assuming you do not use a PIC device, you
may however use some #define in the library files to turn
float support on, recompile the library... and pay the price
for floats in code size.
Regards,
Raphael
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
This should just work. Which version of SDCC are you using?
If you explicitly link with your copy of printf_large.rel SDCC expects printf_large.lst in the same directory. If you copy the .rel to the standard library path for large memory model however it does not need it.
After linking also have a look in the .map file. It should have the function _output_float in it. It also shows where printf_large came from.
Maarten
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2006-12-02
Logged In: YES
user_id=1099099
Originator: NO
I am using MIDE as editor, it come with ASM-51, Emul8051, and SDCC ver 2.6.1
M-IDE Studio for MCS-51 : Release 0.2.5.10
< Toolchain List >
Emul8051 : TS Controls Emulator 8051 v1.0
ASEM-51 : mcs-51 family macro assembler v1.3 (MCU files collection Jul 17, 2005)
SDCC : mcs51/gbz80/z80/avr/ds390/pic16/pic14/TININative/xa51/ds400/hc08 2.6.1 #4376 (Sep 14 2006) (MINGW32)
I assume you made a copy of printf_large.c in C:\MIDE\sdcc\lib\src\new\ where you compiled it.
I also assume you did not copy the resulting C:\MIDE\sdcc\lib\src\new\printf_large.rel into C:\MIDE\sdcc\lib\large\
Then compiling and linking test.c does not use the new printf_large.rel but the old one.
Logged In: NO
try using:
float x = 12;
char ascii [30];
sprintf (ascii, "%f", x); /* here is your float value, in ascii */
Logged In: YES
user_id=203539
You could use output_float() in lib/src/vprintf.c as a start.
Logged In: NO
I have tried to convert a float value (a decimal value of 12.5) to ascii using sprintf function,
it gives "<NO FLOAT>" as return value.
Logged In: YES
user_id=1115835
> [sprintf] gives "<NO FLOAT>" as return value.
This is because the library is built without float support
to keeo it small. Assuming you do not use a PIC device, you
may however use some #define in the library files to turn
float support on, recompile the library... and pay the price
for floats in code size.
Regards,
Raphael
Logged In: NO
I had compiled sprintf.c file as below:
C:\MIDE\asem51\sdcc\lib\src\old>c:\mide\sdcc\bin\sdcc --model-large sprintf.c -D
USE_FLOATS=1
sprintf.c:55: error 74: function 'main' undefined
please, help.
Regards.
Logged In: YES
user_id=1115835
Originator: NO
You forgot -c (compile and assemble but do not link), your command line should be
C:\MIDE\asem51\sdcc\lib\src\old> c:\mide\sdcc\bin\sdcc --model-large -DUSE_FLOATS=1 -c sprintf.c
Hope that helps,
Raphael
Logged In: NO
Hi Raphael,
I had compiled all three files as follow,
C:\MIDE\sdcc\lib\src\new>c:\MIDE\sdcc\bin\sdcc --model-large -DUSE_FLOATS=1 -c printf_large.c
C:\MIDE\sdcc\lib\src\new>c:\MIDE\sdcc\bin\sdcc --model-large -DUSE_FLOATS=1 -c srintf.c
C:\MIDE\sdcc\lib\src\new>c:\MIDE\sdcc\bin\sdcc --model-large -DUSE_FLOATS=1 -c vprintf.c
and move *.rel and *.asm from directory C:\MIDE\sdcc\lib\src\new to C:\MIDE\sdcc\lib\large
and then compile test.c as follow,
D:\WorkDir\Mikro\Komunikasi\Fax\01>c:\mide\sdcc\bin\sdcc test.c --model-large
--lib-path c:\mide\sdcc\lib\large
i downloaded the .hex file to development board, and still i got <NO FLOAT> when i use sprintf to format print floating point number.
Please, help.
Regards.
Logged In: YES
user_id=1099099
Originator: NO
Yeah i did the same thing as you do nobody, i had the same result.
Logged In: YES
user_id=1115835
Originator: NO
OK, last idea for my part (no mcs51/library guy): Try to explicitly link the newly compiled printf-files into your project. Something like
c:\mide\sdcc\bin\sdcc test.c printf_large.rel --model-large --lib-path c:\mide\sdcc\lib\large
might do the job. Maybe giving the other *print*.rel files as well helps?
Please, could anyone from the mcs51/library fraction speak up as to how to get this done?!?
Regards,
Raphael
Logged In: YES
user_id=1099099
Originator: NO
Hi Raphael,
I had tried what you told me to do, i compile as follow
D:\WorkDir\Mikro\Komunikasi\Fax\01>c:\mide\sdcc\bin\sdcc test.c c:\mide\sdcc\lib\large\printf_large.rel --model-large --lib-path c:\mide\sdcc\lib\large c:\mide\sdcc\lib\large\printf_large.lst: cannot open.
no .hex file generated.
Regards.
Logged In: YES
user_id=888171
Originator: NO
This should just work. Which version of SDCC are you using?
If you explicitly link with your copy of printf_large.rel SDCC expects printf_large.lst in the same directory. If you copy the .rel to the standard library path for large memory model however it does not need it.
After linking also have a look in the .map file. It should have the function _output_float in it. It also shows where printf_large came from.
Maarten
Logged In: YES
user_id=1099099
Originator: NO
I am using MIDE as editor, it come with ASM-51, Emul8051, and SDCC ver 2.6.1
M-IDE Studio for MCS-51 : Release 0.2.5.10
< Toolchain List >
Emul8051 : TS Controls Emulator 8051 v1.0
ASEM-51 : mcs-51 family macro assembler v1.3 (MCU files collection Jul 17, 2005)
SDCC : mcs51/gbz80/z80/avr/ds390/pic16/pic14/TININative/xa51/ds400/hc08 2.6.1 #4376 (Sep 14 2006) (MINGW32)
The test.c source file is as follow,
#include <stdio.h>
#include <at89x52.h>
#include "x51lcd.h"
unsigned char STR[17];
void InitLCD(void)
{
x51LCD_SetPortAddress(0xE000, 0xE001);
x51LCD_8bitsData();
x51LCD_DisplayOff();
x51LCD_DisplayClear();
x51LCD_CursorHome();
x51LCD_IncrementNoDisplayShift();
x51LCD_DisplayOn();
x51LCD_CursorOn();
x51LCD_BlinkOn();
}
void main (void)
{
InitLCD();
sprintf(STR, "%f", 2.5);
x51LCD_PrintStr(0x00, STR);
while(1);
}
I had compiled three printf files as follow
C:\MIDE\sdcc\lib\src\new>c:\MIDE\sdcc\bin\sdcc --model-large
-DUSE_FLOATS=1 -c printf_large.c
C:\MIDE\sdcc\lib\src\new>c:\MIDE\sdcc\bin\sdcc --model-large
-DUSE_FLOATS=1 -c srintf.c
C:\MIDE\sdcc\lib\src\new>c:\MIDE\sdcc\bin\sdcc --model-large
-DUSE_FLOATS=1 -c vprintf.c
and had compiled test.c as follow,
D:\WorkDir\Mikro\Komunikasi\Fax\01>c:\mide\sdcc\bin\sdcc test.c --model-large --lib-path c:\mide\sdcc\lib\large
and the generated map file is as below,
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
. .ABS. 0000 0000 = 0. bytes (ABS,CON)
Value Global
-------- --------------------------------
0000 l_BIT_BANK
0000 l_GSINIT
0000 l_GSINIT1
0000 l_GSINIT5
0000 l_ISEG
0000 l_PSEG
0000 l_REG_BANK_1
0000 l_REG_BANK_2
0000 l_REG_BANK_3
0000 l_RSEG
0000 l_XINIT
0000 l_XISEG
0000 l__CODE
0000 s_BSEG
0000 s_DSEG
0000 s_HOME
0000 s_PSEG
0000 s_REG_BANK_0
0000 s_XSEG
0000 s__CODE
0002 l_BSEG_BYTES
0003 l_CONST
0003 l_GSFINAL
0003 l_GSINIT0
0003 l_HOME
0003 s_GSINIT0
0004 l_OSEG
0006 s_GSINIT1
0006 s_GSINIT2
0008 l_REG_BANK_0
0008 s_REG_BANK_1
000A l_GSINIT2
0010 l_BSEG
0010 s_GSINIT3
0010 s_REG_BANK_2
0013 s_OSEG
0018 s_REG_BANK_3
0020 s_BSEG_BYTES
0022 l_GSINIT3
0022 s_BIT_BANK
0022 s_RSEG
0022 s_SSEG
002A l_GSINIT4
0032 s_GSINIT4
005C s_GSFINAL
005C s_GSINIT
005C s_GSINIT5
005F s_CSEG
0077 l_DSEG
0080 _P0
0080 _P0_0
0080 s_ISEG
0081 _P0_1
0081 _SP
0082 _DPL
0082 _P0_2
0083 _DPH
0083 _P0_3
0084 _P0_4
0085 _P0_5
0086 _P0_6
0087 _P0_7
0087 _PCON
0088 _IT0
0088 _TCON
0089 _IE0
0089 _TMOD
008A _IT1
008A _TL0
008B _IE1
008B _TL1
008C _TH0
008C _TR0
008D _TF0
008D _TH1
008E _TR1
008F _TF1
0090 _P1
0090 _P1_0
0090 _T2
0091 _P1_1
0091 _T2EX
0092 _P1_2
0093 _P1_3
0094 _P1_4
0095 _P1_5
0096 _P1_6
0097 _P1_7
0098 _RI
0098 _SCON
0099 _SBUF
0099 _TI
009A _RB8
009B _TB8
009C _REN
009D _SM2
009E _SM1
009F _SM0
00A0 _P2
00A0 _P2_0
00A0 __XPAGE
00A1 _P2_1
00A2 _P2_2
00A3 _P2_3
00A4 _P2_4
00A5 _P2_5
00A6 _P2_6
00A7 _P2_7
00A8 _EX0
00A8 _IE
00A9 _ET0
00AA _EX1
00AB _ET1
00AC _ES
00AD _ET2
00AF _EA
00B0 _P3
00B0 _P3_0
00B0 _RXD
00B1 _P3_1
00B1 _TXD
00B2 _INT0
00B2 _P3_2
00B3 _INT1
00B3 _P3_3
00B4 _P3_4
00B4 _T0
00B5 _P3_5
00B5 _T1
00B6 _P3_6
00B6 _WR
00B7 _P3_7
00B7 _RD
00B8 _IP
00B8 _PX0
00B9 _PT0
00BA _PX1
00BB _PT1
00BC _PS
00BD _PT2
00C8 _CP_RL2
00C8 _T2CON
00C8 _T2CON_0
00C9 _C_T2
00C9 _T2CON_1
00C9 _T2MOD
00CA _RCAP2L
00CA _T2CON_2
00CA _TR2
00CB _EXEN2
00CB _RCAP2H
00CB _T2CON_3
00CC _T2CON_4
00CC _TCLK
00CC _TL2
00CD _RCLK
00CD _T2CON_5
00CD _TH2
00CE _EXF2
00CE _T2CON_6
00CF _T2CON_7
00CF _TF2
00D0 _P
00D0 _PSW
00D1 _FL
00D2 _OV
00D3 _RS0
00D4 _RS1
00D5 _F0
00D6 _AC
00D7 _CY
00DE l_SSEG
00E0 _A
00E0 _ACC
00F0 _B
00F5 _B_5
00F6 _B_6
00F7 _B_7
0100 l_IRAM
0104 l_XSEG
0104 s_XISEG
1A1C l_CSEG
1A7B s_CONST
1A7E s_XINIT
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
_CODE 0000 0000 = 0. bytes (REL,CON)
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
REG_BANK_0 0000 0008 = 8. bytes (REL,OVR)
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
REG_BANK_1 0008 0000 = 0. bytes (REL,OVR)
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
REG_BANK_2 0010 0000 = 0. bytes (REL,OVR)
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
REG_BANK_3 0018 0000 = 0. bytes (REL,OVR)
Hexadecimal
Area Addr Size Decimal Bits (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
BSEG 0000 0010 = 16. bits (REL,CON,BIT)
Value Global
-------- --------------------------------
0B:0001 _output_float_PARM_4
0B:0002 _output_float_PARM_5
0B:0003 _output_float_PARM_6
0B:0004 _output_float_PARM_7
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
BSEG_BYTES 0020 0002 = 2. bytes (REL,CON)
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
BIT_BANK 0022 0000 = 0. bytes (REL,OVR)
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
DSEG 0000 0077 = 119. bytes (REL,CON)
Value Global
-------- --------------------------------
0008 _bp
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
OSEG 0013 0004 = 4. bytes (REL,OVR)
Value Global
-------- --------------------------------
0013 __divulong_sloc0_1_0
0013 __modulong_sloc0_1_0
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
ISEG 0080 0000 = 0. bytes (REL,CON)
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
SSEG 0022 00DE = 222. bytes (REL,OVR)
Value Global
-------- --------------------------------
0022 __start__stack
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
RSEG 0022 0000 = 0. bytes (REL,CON)
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
PSEG 0000 0000 = 0. bytes (REL,CON,PAG,XDATA)
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
XSEG 0000 0104 = 260. bytes (REL,CON,XDATA)
Value Global
-------- --------------------------------
0D:0000 _x51LCD_IReg0
0D:0001 _x51LCD_IReg1
0D:0002 _x51LCD_IReg2
0D:0003 _x51LCD_IReg3
0D:0004 _x51LCD_IReg4
0D:0005 _x51LCD_IReg5
0D:0006 _x51LCD_InstructionPortPTR
0D:0008 _x51LCD_DataPortPTR
0D:000C _x51LCD_SendInstruction_PARM_2
0D:0010 _x51LCD_SetPortAddress_PARM_2
0D:0015 _x51LCD_PrintStr_PARM_2
0D:0019 _x51LCD_PrintChr_PARM_2
0D:001B _STR
0D:002C _vsprintf_PARM_2
0D:002F _vsprintf_PARM_3
0D:0043 _output_float_PARM_2
0D:0044 _output_float_PARM_3
0D:00D4 __print_format_PARM_2
0D:00D7 __print_format_PARM_3
0D:00DA __print_format_PARM_4
0D:00ED __modulong_PARM_2
0D:00F6 __divulong_PARM_2
0D:0102 __gptrput_PARM_2
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
XISEG 0104 0000 = 0. bytes (REL,CON,XDATA)
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
HOME 0000 0003 = 3. bytes (REL,CON,CODE)
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
GSINIT0 0003 0003 = 3. bytes (REL,CON,CODE)
Value Global
-------- --------------------------------
0C:0003 __sdcc_gsinit_startup
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
GSINIT1 0006 0000 = 0. bytes (REL,CON,CODE)
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
GSINIT2 0006 000A = 10. bytes (REL,CON,CODE)
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
GSINIT3 0010 0022 = 34. bytes (REL,CON,CODE)
Value Global
-------- --------------------------------
0C:0010 __mcs51_genXINIT
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
GSINIT4 0032 002A = 42. bytes (REL,CON,CODE)
Value Global
-------- --------------------------------
0C:0032 __mcs51_genRAMCLEAR
0C:0038 __mcs51_genXRAMCLEAR
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
GSINIT5 005C 0000 = 0. bytes (REL,CON,CODE)
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
GSINIT 005C 0000 = 0. bytes (REL,CON,CODE)
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
GSFINAL 005C 0003 = 3. bytes (REL,CON,CODE)
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
CSEG 005F 1A1C = 6684. bytes (REL,CON,CODE)
Value Global
-------- --------------------------------
0C:005F __sdcc_program_startup
0C:0064 _x51LCD_Delay
0C:008D _x51LCD_SendInstruction
0C:00B4 _x51LCD_SendData
0C:00D2 _x51LCD_SetPortAddress
0C:0122 _x51LCD_DisplayClear
0C:0136 _x51LCD_CursorHome
0C:014A _x51LCD_IncrementDisplayShift
0C:0165 _x51LCD_DecrementDisplayShift
0C:0180 _x51LCD_IncrementNoDisplayShift
0C:019B _x51LCD_DecrementNoDisplayShift
0C:01B6 _x51LCD_DisplayOn
0C:01D1 _x51LCD_DisplayOff
0C:01EC _x51LCD_CursorOn
0C:0207 _x51LCD_CursorOff
0C:0222 _x51LCD_BlinkOn
0C:023D _x51LCD_BlinkOff
0C:0258 _x51LCD_DisplayShiftRightShift
0C:0273 _x51LCD_DisplayShiftLeftShift
0C:028E _x51LCD_CursorMovementRightShift
0C:02A9 _x51LCD_CursorMovementLeftShift
0C:02C4 _x51LCD_8bitsData
0C:02E0 _x51LCD_4bitsData
0C:02FC _x51LCD_GotoX
0C:0319 _x51LCD_PrintStr
0C:0359 _x51LCD_PrintChr
0C:0373 _InitLCD
0C:039B _main
0C:043A _vsprintf
0C:049B _sprintf
0C:0C82 __print_format
0C:13BB _strlen
0C:140E ___fsdiv
0C:14D1 __gptrget
0C:14ED ___fssub
0C:14F8 __modulong
0C:1641 ___fsmul
0C:16E4 fsgetargs
0C:1712 __divulong
0C:181E fs_normalize_a
0C:1847 ___fs2ulong
0C:1849 fs2ulong_begin
0C:186E ___ulong2fs
0C:1877 ulong2fs_doit
0C:1881 __sdcc_external_startup
0C:1885 ___fsgt
0C:18B5 fsgetarg
0C:18C7 __gptrput
0C:18E0 ___fslt
0C:1910 ___fsadd
0C:1913 fsadd_direct_entry
0C:1969 fs_compare_uint32
0C:1987 fs_check_negative_zeros
0C:19B2 _islower
0C:19CF fs_round_and_return
0C:19E7 fs_zerocheck_return
0C:19F0 fs_return_zero
0C:19F8 fs_direct_return
0C:1A06 fs_return_inf
0C:1A13 fs_return_nan
0C:1A1E fs_swap_a_b
0C:1A38 fs_rshift_a
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
CONST 1A7B 0003 = 3. bytes (REL,CON,CODE)
Hexadecimal
Area Addr Size Decimal Bytes (Attributes)
-------------------------------- ---- ---- ------- ----- ------------
XINIT 1A7E 0000 = 0. bytes (REL,CON,CODE)
ASxxxx Linker V01.70 + NoICE + SDCC Feb 1999, page 1.
Files Linked [ module(s) ]
test.rel
Libraries Linked [ object file ]
c:\mide\sdcc\lib\large/mcs51.lib [ crtclear.rel ]
c:\mide\sdcc\lib\large/mcs51.lib [ crtxinit.rel ]
c:\mide\sdcc\lib\large/mcs51.lib [ crtxclear.rel ]
c:\mide\sdcc\lib\large/libsdcc.lib [ sprintf ]
c:\mide\sdcc\lib\large/libsdcc.lib [ _bp ]
c:\mide\sdcc\lib\large/libsdcc.lib [ printf_large ]
c:\mide\sdcc\lib\large/mcs51.lib [ crtpagesfr.rel ]
c:\mide\sdcc\lib\large/libsdcc.lib [ _strlen ]
c:\mide\sdcc\lib\large/libfloat.lib [ _fsdiv ]
c:\mide\sdcc\lib\large/mcs51.lib [ crtstart.rel ]
c:\mide\sdcc\lib\large/libsdcc.lib [ _gptrget ]
c:\mide\sdcc\lib\large/libfloat.lib [ _fssub ]
c:\mide\sdcc\lib\large/liblong.lib [ _modulong.rel ]
c:\mide\sdcc\lib\large/libfloat.lib [ _fsmul ]
c:\mide\sdcc\lib\large/libfloat.lib [ _fsget2args ]
c:\mide\sdcc\lib\large/liblong.lib [ _divulong.rel ]
c:\mide\sdcc\lib\large/libfloat.lib [ _fsnormalize ]
c:\mide\sdcc\lib\large/libfloat.lib [ _fs2ulong ]
c:\mide\sdcc\lib\large/libfloat.lib [ _ulong2fs ]
c:\mide\sdcc\lib\large/libsdcc.lib [ _startup ]
c:\mide\sdcc\lib\large/libfloat.lib [ _fsgt ]
c:\mide\sdcc\lib\large/libfloat.lib [ _fsget1arg ]
c:\mide\sdcc\lib\large/libsdcc.lib [ _gptrput ]
c:\mide\sdcc\lib\large/libfloat.lib [ _fslt ]
c:\mide\sdcc\lib\large/libfloat.lib [ _fsadd ]
c:\mide\sdcc\lib\large/libfloat.lib [ _fscmp ]
c:\mide\sdcc\lib\large/libsdcc.lib [ _islower ]
c:\mide\sdcc\lib\large/libfloat.lib [ _fsreturnval ]
c:\mide\sdcc\lib\large/libfloat.lib [ _fsswapargs ]
c:\mide\sdcc\lib\large/libfloat.lib [ _fsrshift ]
ASxxxx Linker V01.70 + NoICE + SDCC Feb 1999, page 2.
User Base Address Definitions
HOME = 0x0000
ISEG = 0x0080
BSEG = 0x0000
Regards.
Logged In: YES
user_id=888171
Originator: NO
I assume you made a copy of printf_large.c in C:\MIDE\sdcc\lib\src\new\ where you compiled it.
I also assume you did not copy the resulting C:\MIDE\sdcc\lib\src\new\printf_large.rel into C:\MIDE\sdcc\lib\large\ Then compiling and linking test.c does not use the new printf_large.rel but the old one.
Try this:
D:\WorkDir\Mikro\Komunikasi\Fax\01>c:\mide\sdcc\bin\sdcc test.c
c:\mide\sdcc\lib\large\new\printf_large.rel --model-large
HTH
Maarten
Logged In: YES
user_id=1099099
Originator: NO
Hi Maarten,
The result is the same, i got <NO FLOAT>.
Regards.