FX 02.35.0000

This commit is contained in:
CalcLoverHK 2024-01-25 02:52:08 +08:00
parent eb8e382394
commit 95a338aa09
6 changed files with 37 additions and 26 deletions

View File

@ -5,7 +5,7 @@
[BINDATA] : "FXADDINror.bin"
[DISPNAME] : "CBASIC"
[APPNAME] : "@CBASIC"
[VERSION] : "02.34.1000"
[VERSION] : "02.35.0000"
[APL_ICON] : "MainIcon.bmp"
[MODULE_NUM] : 0
[MOD1_TITLE] : "CBASIC"

View File

@ -1,6 +1,6 @@
[DLSimProject]
Name=CBASIC
Version=02.34.1000
Version=02.35.0000
Model=:fx-9860G.dlm
SourcePath=.
MemoryPath=INIT

View File

@ -208,12 +208,15 @@ char* CLIP_Buffer(){
return (char*)MatAry[Mattmp_clipBuffer].Adrs;
}
char * Recent_HiddenRAM_MatTopPtr;
char* NewclipBuffer( int *size ){ // size:-1 max
int free;
int reg = Mattmp_clipBuffer; // ClipBuffer
char *buffer;
free = HiddenRAM_MatTopPtr - HiddenRAM_ProgNextPtr;
if ( *size<0 ) *size=free;
Recent_HiddenRAM_MatTopPtr = HiddenRAM_MatTopPtr;
if ( *size<0 ) *size=free-4;
if ( free < *size ) {
ErrorNo=NotEnoughMemoryERR; // Memory error
CB_ErrMsg(ErrorNo);
@ -228,6 +231,12 @@ char* NewclipBuffer( int *size ){ // size:-1 max
buffer[0]='\0';
return buffer;
}
void AdjclipBuffer( int size ){ // size
size = (size+7) & 0xFFFFFFF8; // 8byte align
memcpy2( Recent_HiddenRAM_MatTopPtr-size, HiddenRAM_MatTopPtr, size );
HiddenRAM_MatTopPtr = Recent_HiddenRAM_MatTopPtr - size;
MatAry[Mattmp_clipBuffer].Adrs = (double*)HiddenRAM_MatTopPtr;
}
void EditPaste( char *filebase, char *Buffer, int *ptr, cUndo *Undo ){
int len,i,j;
@ -1135,7 +1144,7 @@ unsigned int EditRun(int run){ // run:1 exec run:2 edit
if (dumpflg==2) {
if ( DebugMode >=1 ) { i=CB_INT; j=MatBase; }
else { i=CB_INTDefault; j=MatBaseDefault; }
sprintf(buffer, "==%-8s==[%s%d]", buffer2, CBmode[i], j);
sprintf(buffer, "==%-8s==[%s%d] ", buffer2, CBmode[i], j);
} else {
sprintf(buffer, "==%-8s==%08X ", buffer2, SrcBase);
}

View File

@ -2311,6 +2311,7 @@ void CB_Save( char *SRC ) { // Save "TEST",Mat A[1,3] [,Q] etc
ExecPtr++;
// FilePtr = CB_SaveLoadOprand( SRC, &reg, &matsize);
FilePtr = (char *)VarPtrLength( SRC, &matsize, &c, 0);
if ( c==SERIAL_STRING ) matsize--;
if ( ErrorNo ) return; // error
c =SRC[ExecPtr];
@ -3525,24 +3526,24 @@ int fileObjectAlign4n( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4o( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4p( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4q( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4r( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4s( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4t( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4u( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4v( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4w( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4x( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4y( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4z( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4A( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4B( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4C( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4D( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4E( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4F( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4G( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4H( unsigned int n ){ return n; } // align +4byte
int fileObjectAlign4I( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4r( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4s( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4t( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4u( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4v( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4w( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4x( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4y( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4z( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4A( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4B( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4C( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4D( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4E( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4F( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4G( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4H( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4I( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4J( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4K( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4L( unsigned int n ){ return n; } // align +4byte

View File

@ -29,8 +29,8 @@ int selectMatrix=0;
int StackPtr;
const char VerMSG[]="C.Basic v2.34\xE6\x41";
#define VERSION 234
const char VerMSG[]="C.Basic v2.35\xE6\x41";
#define VERSION 235
//---------------------------------------------------------------------------------------------
void GetMemFreeStr10( char *buffer );

View File

@ -757,6 +757,7 @@ void MatNumToExpBuf( complex value, int bit ){ // value -> ExpBuffer
}
char* NewclipBuffer( int *size );
void AdjclipBuffer( int size );
void List2Clip( int reg, int bit ) { //
int i,j,dimA,dimB,x,y;
@ -793,7 +794,7 @@ void List2Clip( int reg, int bit ) { //
ptr--;
buffer[ptr++]='}';
buffer[ptr++]='\0';
NewclipBuffer( &ptr ); // adjust size
AdjclipBuffer( ptr ); // adjust size
ErrorMSGstr1("List to Clip Ok!");
}
@ -838,7 +839,7 @@ void Mat2Clip( int reg, int bit ) { //
ptr--;
buffer[ptr++]=']';
buffer[ptr++]='\0';
NewclipBuffer( &ptr ); // adjust size
AdjclipBuffer( ptr ); // adjust size
ErrorMSGstr1("Mat to Clip Ok!");
}