From f4ce23a3cf6fa2a59d0c3706ba7a606c3001e76d Mon Sep 17 00:00:00 2001 From: David Schmenk Date: Sat, 25 Feb 2023 10:29:30 -0800 Subject: [PATCH] Slight adjustment to FPSTR_FLEX formatting --- images/apple/PLASMA2.2mg | Bin 819264 -> 819264 bytes src/libsrc/fpstr.pla | 8 ++++---- src/samplesrc/fppow.pla | 4 ++-- src/toolsrc/parse.pla | 5 +++-- 4 files changed, 9 insertions(+), 8 deletions(-) diff --git a/images/apple/PLASMA2.2mg b/images/apple/PLASMA2.2mg index 6f80f1907bea81ebfdde209e021a9eeb900eb422..9f6a28440e9777e2714e9569a876cdcab9edfa1e 100644 GIT binary patch delta 732 zcmZuuO=}ZT6n*oNmzX$dY*SIF`pAcwfnYOH7fo9`iyFa3%_0=FEs{7hGLTM6W*Q<0 zHZ`<@B7uT0Q?%$x1kpejv$QM0rGG(J`YXIM$wI}&d2{Z)=iYNKbF`H|+R6`}^ZcC) zXTp0uKIxM~m%knkc&XrFCsAOYC^1)wF<-8pARO}2N%RBxWM{9Fkam@22Ee+?GN-Vy zul(N{w|AQxBqKXKt08nU#-Xme^oUafOoR?P+~t)N(ofwSM|x1ndQStqK|dgmv4cgvzg(+*D4B?qVIhJz>16SA>s z-xo9Oj3f|Z=)|}&C+B8IS(1@viEfzmlY!tv=2?9_sDb^cRn-m+(b@)`k zYt>ve!Ph^@Fb%utopkLrPNjzpHSK|676?fE_+Ni|>lL2N4{dDCvPC&7OM>2L5@TK_ zc7w<{Si`Se%;$1BuWEv=Zz26xCuj3R&1mJt2K==8CFa+za)1FrKnQRQ5Pqi|M85w9 D8~xCy delta 836 zcmZ`#O=}ZT6n*oNmzd$D(biB)k;f#GL__mYm6FYmu}wqXTggGLw*k zi+*W0E(%>tqOn^ML;_um%eoPNN8P#cFL>Xi$<7D&ao)M--E;3f-_4!x=6df%ac$~` zbaE_40Z7uBE3O26jPjrD$$9QT3A;*|`?+-05D=rI=r{7fyOTXRd8Djz5WK6b3JM?o zB|=IXXe7x!UK4sz>8;3X2t~pII&h!75mX-+bb5Qjz4a*4$Ddt8df)+92q0d^hs{ti z#NL5|AL;nG8DjYBB+^6hTKP8008>L&EQ&~#9u+9u;pKu4g>6YkI?t<8KHw<(!WT|- z|LhCU;liN+Awu}vg+n|sHckw4yV6iKDg#JcWmB7~RbI)&skZUNbwZluI&GCU>=#N+n7FFx-*lJ3EA4QHEIwz)H~@kech-~)o2o;YC5$w%T5?iQ`A^Y zMl(#sjPh2wsjU|iN#cxj@GW*loW~tJ5*rBW@UL2DnoP1^z1Fa|6Y*9Y{JmLW){<9!I^Vse(589Ep{yB$0h?dz?CJU1`*lQ37#vg-+@RZ1yVDRtlZ+rcqu zAOy-?_<%WndQg7@%m=pADh+)%hkV5(1a?J;Q|Mwk3Y~l78m3_{vvDD@)5S3cpk-)g zOM7XUc`5_r5nwtj%j}#VT^yNbIaZnwZ=cyzmQ^5nwN8z>EVZjN>+ROdPUkY2jHfVR wLXdfuGym0RQ#q)1sl9A#v1)41P1Y50YInI$N6ION@IwS3u0RAoE2q-MKkz!=asU7T diff --git a/src/libsrc/fpstr.pla b/src/libsrc/fpstr.pla index 9c2c24e..1510720 100644 --- a/src/libsrc/fpstr.pla +++ b/src/libsrc/fpstr.pla @@ -233,15 +233,15 @@ export def ext2str(ext, str, intdigits, fracdigits, format) // // Underflow // - dp = -fracdigits + dp = -fracdigits - 1 fin fin - if format & FPSTR_FLEX and (dp <= -fracdigits or dp >= (format & FPSTR_FIXED ?? intdigits :: numdigits)) + if format & FPSTR_FLEX and (dp < -fracdigits or dp > (format & FPSTR_FIXED ?? intdigits :: numdigits)) // // Print as exponent if over/underflow fixed digits // - if numdigits < 8; numdigits = 8; fin - return ext2str(ext, str, 1, numdigits - 8, FPSTR_EXP | (format & FPSTR_STRIP)) + if numdigits < 7; numdigits = 7; fin + return ext2str(ext, str, 1, numdigits - 7, FPSTR_EXP | (format & FPSTR_STRIP)) fin // // Convert as floating point diff --git a/src/samplesrc/fppow.pla b/src/samplesrc/fppow.pla index d60deed..aaa9eae 100644 --- a/src/samplesrc/fppow.pla +++ b/src/samplesrc/fppow.pla @@ -4,7 +4,7 @@ include "inc/fpstr.plh" var xT[t_extended] char sT[32] // extra space -byte str = "123456789.123456789E+80" +byte str = "123456789.123456789" byte i // mul div @@ -19,7 +19,7 @@ def test(iM, iD)#0 puti(iM); putc('/'); puti(iD) if iD<10; putc(' '); fin puts("=>") - ext2str(@xT,@sT,6,9,FPSTR_FLEX|FPSTR_FIXED) // fixed + ext2str(@xT,@sT,9,9,FPSTR_FLEX|FPSTR_FIXED) // fixed puts(@sT); putc('[') puti( sT); putc(']') putln diff --git a/src/toolsrc/parse.pla b/src/toolsrc/parse.pla index 5e791bb..64bdceb 100644 --- a/src/toolsrc/parse.pla +++ b/src/toolsrc/parse.pla @@ -1299,7 +1299,8 @@ end def parse_module#0 init_idglobal init_idlocal - puts("Data+Code buffer size = "); puti(codebufsz); putln + puts("Data+Code buffer size = "); puti(codebufsz); putln; putln + puts(@relfile); if nextln // // Compile module @@ -1310,7 +1311,7 @@ def parse_module#0 emit_codeseg puti(codeptr - codebuff); puts(@bytesln) while parse_defs; nextln; loop - puts("INIT:") + puts("INIT:"); entrypoint = codeptr prevstmnt = 0 init_idlocal