FX 02.45.1800

This commit is contained in:
CalcLoverHK 2024-01-25 03:13:35 +08:00
parent e98756e48f
commit 42f6106dc1
6 changed files with 20 additions and 17 deletions

View File

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

View File

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

View File

@ -1050,8 +1050,6 @@ unsigned int EditRun(int run){ // run:1 exec run:2 edit
PrevLinePhyN( ymax, SrcBase, &offset, &offset_y ); // csrY adjust
UpdateLineNum=1;
if ( run == 1 ) { key=KEY_CTRL_F6; goto directrun; } // direct run
if ( DebugMode ) DebugMenuSw=1;
PutKey( KEY_CTRL_SHIFT, 1 ); GetKey(&key);
PutKey( KEY_CTRL_SHIFT, 1 ); GetKey(&key);
@ -1061,6 +1059,8 @@ unsigned int EditRun(int run){ // run:1 exec run:2 edit
else Cursor_SetFlashOn(0x6); // overwrite mode cursor
KeyRecover();
if ( run == 1 ) { key=KEY_CTRL_F6; goto directrun; } // direct run
while ( cont ) {
if ( DebugMode==0 ) DebugMenuSw=0;
mini=(EditFontSize & 0x0F);
@ -1624,6 +1624,7 @@ unsigned int EditRun(int run){ // run:1 exec run:2 edit
ClipStartPtr = -1 ; // ClipMode cancel
break;
case KEY_CTRL_F6:
directrun:
execptr=csrPtr;
if ( SearchMode ) goto searchStart; // Retry search
if ( ClipStartPtr >= 0 ) { // Clip -> del '
@ -1657,7 +1658,6 @@ unsigned int EditRun(int run){ // run:1 exec run:2 edit
csrPtr=OpcodeLinePtr( offset_y, SrcBase, offset);
if ( SrcBase[offset] == 0 ) PrevLinePhyN( ymax, SrcBase, &offset, &offset_y );
} else {
directrun:
if ( ( 1 <= DebugMode ) && ( DebugMode <=3 ) ) { // ====== Debug Mode ======
if ( DebugScreen == 1 ) { DebugMenuSw = 1; DebugScreen = 2; }
else
@ -1675,8 +1675,6 @@ unsigned int EditRun(int run){ // run:1 exec run:2 edit
} else {
ProgNo=0;
ExecPtr=0;
PutKey( KEY_CTRL_SHIFT, 1 ); GetKey(&key);
PutKey( KEY_CTRL_SHIFT, 1 ); GetKey(&key);
stat=CB_interpreter( SrcBase ) ; // ====== run 1st interpreter ======
if ( ( stat==-7 ) && ( ProgEntryN == 0 ) ) DebugMode=0;
}

View File

@ -3894,10 +3894,10 @@ 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
//int fileObjectAlign4n( unsigned int n ){ return n; } // align +4byte
//int fileObjectAlign4o( 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
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

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 17", MINI_OVER );
PrintMini(13*6+2, 2*8+1, (unsigned char*)"build 18", MINI_OVER );
PrintMini( 2*6+2, 3*8+1, (unsigned char*)"(Casio Basic compatible+)", MINI_OVER );
// if ( ( UseHiddenRAM ) && ( IsHiddenRAM ) ) {
@ -1929,6 +1929,7 @@ int SetupG(int select, int limit){ // ----------- Setup
case SETUP_UseHidnRam: // Hidden RAM
if ( limit ) break;
if ( IsHiddenRAM == 0 ) break;
if ( YesNo("Initialize Ok?")==0 ) break;
UseHiddenRAM = 1 ; // on
ExtendList=(6-1);
HiddenRAM_MatAryClear();
@ -1936,6 +1937,7 @@ int SetupG(int select, int limit){ // ----------- Setup
case SETUP_HidnRamInit: // HiddenRAMInit
if ( limit ) break;
if ( UseHiddenRAM == 0 ) break; // Hidden RAM only
// if ( YesNo("Initialize Ok?")==0 ) break;
UseHiddenRAM &= 0x0F; // on
HiddenRAM_MatAryClear();
break;
@ -2143,6 +2145,7 @@ int SetupG(int select, int limit){ // ----------- Setup
break;
case SETUP_UseHidnRam: // Hidden RAM
if ( limit ) break;
if ( YesNo("Initialize Ok?")==0 ) break;
UseHiddenRAM = 0 ; // off
ExtendPict=0;
ExtendList=0;
@ -2151,6 +2154,7 @@ int SetupG(int select, int limit){ // ----------- Setup
case SETUP_HidnRamInit: // HiddenRAMInit
if ( limit ) break;
if ( UseHiddenRAM == 0 ) break; // Hidden RAM only
// if ( YesNo("Initialize Ok?")==0 ) break;
UseHiddenRAM |= 0x10; // off
HiddenRAM_MatAryInit();
break;

View File

@ -1273,7 +1273,7 @@ void EditMatrix(int reg, int ans ){ // ----------- Edit Matrix
if ( x < 128 ) { Bdisp_ClearLineVRAM( x, 8, x,10 ); Bdisp_DrawLineVRAM( x,10, x-2,10 ); }
}
if ( seltopY+y == dimB ) { Bdisp_ClearLineVRAM( 16,14+y*8,16,16+y*8); Bdisp_DrawLineVRAM( 16,14+y*8,18, 14+y*8);
if ( x < 128 ) { Bdisp_ClearLineVRAM( x,14+y*8, x,16+y*8); Bdisp_DrawLineVRAM( x,14+y*8,x-2,14+y*8); }
if ( x < 128 ) { Bdisp_ClearLineVRAM( x,14+y*8, x,15+y*8); Bdisp_DrawLineVRAM( x,14+y*8,x-2,14+y*8); }
}
if ( ( strdisp ) && (ElementSize > 4 ) ) {
if ( MatXYmode==0 ) OpcodeStringToAsciiString( buffer, MatrixPtr(reg, seltopY+y+base, seltopX +base), 64-1 );
@ -1330,13 +1330,14 @@ void EditMatrix(int reg, int ans ){ // ----------- Edit Matrix
}
Fkey_Icon( FKeyNo2, 964 ); // Fkey_dispN( FKeyNo2, "GOTO");
if ( ans==0 ) Fkey_Icon( FKeyNo3, 95 ); // Fkey_dispR( FKeyNo3, "Init");
if ( MatXYmode ) Fkey_dispRS( FKeyNo4, "X,Y"); else Fkey_dispRS( FKeyNo4, "m,n");
// if ( MatXYmode ) Fkey_dispN( FKeyNo4, "X,Y"); else Fkey_dispN( FKeyNo4, "m,n");
if ( MatXYmode ) Fkey_dispN( FKeyNo4, "\xE6\x91m,n"); else Fkey_dispN( FKeyNo4, "\xE6\x91x,y");
// if ( MatXYmode ) Fkey_dispN( FKeyNo4, "\xE6\x91m,n"); else Fkey_dispN( FKeyNo4, "\xE6\x91x,y");
locate(16, 8); MatAryElementSizePrint( ElementSize ) ;
y = (selectY-seltopY) ;
x = (selectX-seltopX) ;
if ( dotedit == 0 ) Bdisp_AreaReverseVRAM(x*dx+20, y*8+9, x*dx+20+dx-5, y*8+15); // reverse select element
if ( dotedit == 0 ) Bdisp_AreaReverseVRAM(x*dx+20-(MaxX==3), y*8+9, x*dx+20+dx-5+(MaxX==3), y*8+15); // reverse select element
if ( dotedit ) {
MiniDotCursorX = x*dx+20;
@ -4974,8 +4975,8 @@ int MatrixObjectAlign4ML( unsigned int n ){ return n; } // align +4byte
int MatrixObjectAlign4MM( unsigned int n ){ return n; } // align +4byte
int MatrixObjectAlign4MN( unsigned int n ){ return n; } // align +4byte
int MatrixObjectAlign4MO( unsigned int n ){ return n; } // align +4byte
int MatrixObjectAlign4MP( unsigned int n ){ return n; } // align +4byte
int MatrixObjectAlign4MQ( unsigned int n ){ return n; } // align +4byte
//int MatrixObjectAlign4MP( unsigned int n ){ return n; } // align +4byte
//int MatrixObjectAlign4MQ( unsigned int n ){ return n; } // align +4byte
//int MatrixObjectAlign4MR( unsigned int n ){ return n; } // align +4byte
//int MatrixObjectAlign4MS( unsigned int n ){ return n; } // align +4byte
//int MatrixObjectAlign4MT( unsigned int n ){ return n; } // align +4byte