FX 02.45.0300

This commit is contained in:
CalcLoverHK 2024-01-25 03:03:23 +08:00
parent 5cf057ae34
commit c055f8c087
6 changed files with 58 additions and 30 deletions

View File

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

View File

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

View File

@ -265,7 +265,7 @@ int Search_ExceptTryEnd( char *SRC ){
Skip_quot(SRC);
break;
case 0x27: // ' rem
Skip_rem(SRC);
Skip_rem_no_op(SRC);
break;
case 0xFFFFFFF7: //
c=SRC[ExecPtr++];

View File

@ -3261,6 +3261,34 @@ void CB_Local( char *SRC ) {
}
//----------------------------------------------------------------------------------------------
void Skip_rem_no_op( char *SRC ){
int c=SRC[ExecPtr];
if ( c=='/' ) { // '/ execute C.Basic only
ExecPtr++;
return;
}
while (1){
switch ( c ) {
case 0x00: // <EOF>
ExecPtr--;
case 0x0C: // dsps
case 0x0D: // <CR>
return ;
break;
case 0x7F: //
case 0xFFFFFFF7: //
case 0xFFFFFFF9: //
case 0xFFFFFFE5: //
case 0xFFFFFFE6: //
case 0xFFFFFFE7: //
// case 0xFFFFFFFF: //
ExecPtr++;
break;
}
c=SRC[ExecPtr++];
}
}
int PP_Search_IfEnd( char *SRC ){
int c,i;
int PP_ptr;
@ -3274,7 +3302,7 @@ int PP_Search_IfEnd( char *SRC ){
Skip_quot(SRC);
break;
case 0x27: // ' rem
Skip_rem(SRC);
Skip_rem_no_op(SRC);
break;
case 0xFFFFFFF7: //
c=SRC[ExecPtr++];
@ -3383,7 +3411,7 @@ void CB_ProgEntry( char *SRC ) { // Prog "..." into memory
Skip_quot(SRC);
break;
case 0x27: // ' rem
Skip_rem(SRC);
Skip_rem_no_op(SRC);
break;
case 0xFFFFFFED: // Prog "..."
c =SRC[ExecPtr];
@ -3468,7 +3496,7 @@ void CB_GetAliasLocalProg( char *SRC ) { // Preprocess Alias/Local
Skip_quot(SRC);
break;
case 0x27: // ' rem
Skip_rem(SRC);
Skip_rem_no_op(SRC);
break;
case 0xFFFFFFF7: //
if ( SRC[ExecPtr++] == 0xFFFFFFF1 ) CB_Local(SRC); // Local var set
@ -3671,18 +3699,18 @@ 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 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 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
//int fileObjectAlign4M( unsigned int n ){ return n; } // align +4byte
@ -3783,6 +3811,7 @@ void FavoritesDowndummy5( int *index ) {
files[(*index)].filesize=tmp;
SaveFavorites();
}
/*
void FavoritesDowndummy6( int *index ) {
unsigned short tmp;
char tmpname[FILENAMEMAX];
@ -3799,7 +3828,6 @@ void FavoritesDowndummy6( int *index ) {
files[(*index)].filesize=tmp;
SaveFavorites();
}
/*
void FavoritesDowndummy7( int *index ) {
unsigned short tmp;
char tmpname[FILENAMEMAX];

View File

@ -52,7 +52,7 @@ void VerDispSub( int flag ) {
locate( 3, 5 ); Print( (unsigned char*)" by sentaro21" );
locate( 3, 6 ); Print( (unsigned char*)" (c)2020" );
PrintMini(13*6+2, 2*8+1, (unsigned char*)" build 02", MINI_OVER );
PrintMini(13*6+2, 2*8+1, (unsigned char*)" build 03", MINI_OVER );
PrintMini( 2*6+2, 3*8+1, (unsigned char*)"(Casio Basic compatible+)", MINI_OVER );
// if ( ( UseHiddenRAM ) && ( IsHiddenRAM ) ) {

View File

@ -1323,7 +1323,7 @@ int Search_Lbl( char *SRC, int lc ){
Skip_quot(SRC);
break;
case 0x27: // ' rem
Skip_rem(SRC);
Skip_rem_no_op(SRC);
break;
case 0xFFFFFFE2: // Lbl
c = CB_CheckLbl( SRC );
@ -1468,7 +1468,7 @@ void Search_IfEnd( char *SRC ){
Skip_quot(SRC);
break;
case 0x27: // ' rem
Skip_rem(SRC);
Skip_rem_no_op(SRC);
break;
case 0xFFFFFFF7: //
c=SRC[ExecPtr++];
@ -1503,7 +1503,7 @@ int Search_ElseIfEnd( char *SRC ){
Skip_quot(SRC);
break;
case 0x27: // ' rem
Skip_rem(SRC);
Skip_rem_no_op(SRC);
break;
case 0xFFFFFFF7: //
c=SRC[ExecPtr++];
@ -1537,7 +1537,7 @@ void CB_If( char *SRC, CchIf *Cache ){
judge = CB_EvalCheckZero( SRC );
c =SRC[ExecPtr];
if ( ( c == ':' ) || ( c == 0x0D ) ) { c=SRC[++ExecPtr]; while ( c==' ' ) c=SRC[++ExecPtr]; }
if ( c == 0x27 ) { Skip_rem(SRC); c=SRC[++ExecPtr]; while ( c==' ' ) c=SRC[++ExecPtr]; }
if ( c == 0x27 ) { Skip_rem_no_op(SRC); c=SRC[++ExecPtr]; while ( c==' ' ) c=SRC[++ExecPtr]; }
if ( ( c == 0xFFFFFFF7 ) && ( SRC[ExecPtr+1] == 0x01 ) ) ExecPtr+=2 ; // "Then" skip
if ( judge ) return ; // true
@ -1603,7 +1603,7 @@ int Search_Next( char *SRC ){
Skip_quot(SRC);
break;
case 0x27: // ' rem
Skip_rem(SRC);
Skip_rem_no_op(SRC);
break;
case 0x13: // =>
Skip_block(SRC);
@ -1790,7 +1790,7 @@ int Search_WhileEnd( char *SRC ){
Skip_quot(SRC);
break;
case 0x27: // ' rem
Skip_rem(SRC);
Skip_rem_no_op(SRC);
break;
case 0x13: // =>
Skip_block(SRC);
@ -1831,7 +1831,7 @@ int Search_LpWhile( char *SRC ){
Skip_quot(SRC);
break;
case 0x27: // ' rem
Skip_rem(SRC);
Skip_rem_no_op(SRC);
break;
case 0x13: // =>
Skip_block(SRC);
@ -1940,7 +1940,7 @@ int Search_SwitchEnd( char *SRC ){
Skip_quot(SRC);
break;
case 0x27: // ' rem
Skip_rem(SRC);
Skip_rem_no_op(SRC);
break;
case 0xFFFFFFF7: //
if ( SRC[ExecPtr] == 0xFFffFFEA ) { ExecPtr++; // Switch
@ -1972,7 +1972,7 @@ int Search_CaseEnd( char *SRC ){
Skip_quot(SRC);
break;
case 0x27: // ' rem
Skip_rem(SRC);
Skip_rem_no_op(SRC);
break;
case 0xFFFFFFF7: //
if ( SRC[ExecPtr] == 0xFFffFFEA ) { ExecPtr++; // Switch
@ -3185,8 +3185,8 @@ void CB_Input( char *SRC ){
int iObjectAlign4a( unsigned int n ){ return n; } // align +4byte
int iObjectAlign4b( unsigned int n ){ return n; } // align +4byte
int iObjectAlign4c( unsigned int n ){ return n; } // align +4byte
//int iObjectAlign4d( unsigned int n ){ return n; } // align +4byte
//int iObjectAlign4e( unsigned int n ){ return n; } // align +4byte
int iObjectAlign4d( unsigned int n ){ return n; } // align +4byte
int iObjectAlign4e( unsigned int n ){ return n; } // align +4byte
//int iObjectAlign4f( unsigned int n ){ return n; } // align +4byte
//int iObjectAlign4g( unsigned int n ){ return n; } // align +4byte
//int iObjectAlign4h( unsigned int n ){ return n; } // align +4byte