FX 02.34.0001

This commit is contained in:
CalcLoverHK 2024-01-25 02:51:48 +08:00
parent 557603dfdf
commit eb8e382394
5 changed files with 42 additions and 36 deletions

View File

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

View File

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

View File

@ -1008,6 +1008,7 @@ unsigned int EditRun(int run){ // run:1 exec run:2 edit
int mini;
int help_code=0;
int indent;
int execptr;
cUndo Undo;
@ -1046,7 +1047,7 @@ unsigned int EditRun(int run){ // run:1 exec run:2 edit
PrevLinePhyN( ymax, SrcBase, &offset, &offset_y ); // csrY adjust
UpdateLineNum=1;
if ( run == 1 ) { ProgNo=0; ExecPtr=0; key=KEY_CTRL_F6; } // direct run
if ( run == 1 ) { key=KEY_CTRL_F6; } // direct run
if ( DebugMode ) DebugMenuSw=1;
@ -1615,6 +1616,7 @@ unsigned int EditRun(int run){ // run:1 exec run:2 edit
ClipStartPtr = -1 ; // ClipMode cancel
break;
case KEY_CTRL_F6:
execptr=csrPtr;
if ( SearchMode ) goto searchStart; // Retry search
if ( ClipStartPtr >= 0 ) { // Clip -> del '
if ( ClipEndPtr < ClipStartPtr ) { i=ClipStartPtr; ClipStartPtr=ClipEndPtr; ClipEndPtr=i; }
@ -1671,7 +1673,7 @@ unsigned int EditRun(int run){ // run:1 exec run:2 edit
SaveConfig();
filebase = ProgfileAdrs[ProgNo];
SrcBase = filebase+0x56;
if ( ForceReturn ) { cont=0; break; } // force program end
if ( ForceReturn ) { goto finish; } // force program end
if ( stat ) {
if ( ErrorNo ) offset = ErrorPtr ; // error
else if ( BreakPtr ) offset = ExecPtr ; // break
@ -1682,7 +1684,11 @@ unsigned int EditRun(int run){ // run:1 exec run:2 edit
run=2; // edit mode
if ( dumpflg == 2 ) {
PrevLinePhyN( ymax, SrcBase, &offset, &offset_y );
if ( stat == -1 ) cont=0; // program finish
if ( stat == -1 ) {
finish:
cont=0; // program finish
ExecPtr=execptr;
}
}
}
}

View File

@ -3526,23 +3526,23 @@ 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 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

@ -36,7 +36,7 @@ int AddIn_main(int isAppli, unsigned short OptionNum)
unsigned int key;
// char buffer[32];
char *ptr,*stat;
int i,j;
int i,j,run;
char filename[32];
char *src;
@ -113,28 +113,27 @@ int AddIn_main(int isAppli, unsigned short OptionNum)
case FileCMD_DebugRUN:
DebugMode=9; // debug mode start
ForceDebugMode=1;
case FileCMD_RUN_F1:
if ( ForceReturnMode & 1 ) ForceReturn=1;
goto runjp;
case FileCMD_RUN:
// case KEY_CTRL_EXE:
if ( ForceReturnMode & 2 ) ForceReturn=1;
runjp:
runjp: run=1;
i=LoadProgfile( filename, 0, EditMaxProg, 1 ) ;
if ( i==0 ) {
PP_ReplaceCode( ProgfileAdrs[0] + 0x56 ); //
ExecPtr=0;
EditRun(1); // Program run
}else
if ( i==NotfoundProgERR ) { ProgNo=ErrorProg; ExecPtr=ErrorPtr; if (ProgNo>=0) EditRun(2); } // Program listing & edit
goto bejmp;
goto bejmp1;
break;
case FileCMD_EDIT:
run=2;
bejmp1:
ExecPtr=0;
i=LoadProgfile( filename, 0, EditMaxfree, 1 ) ;
if ( i==0 ) {
bejmp2:
PP_ReplaceCode( ProgfileAdrs[0] + 0x56 ); //
ExecPtr=0;
for (j=0; j<BE_MAX; j++) {
if ( strncmp( befiles[j].sname, sname, 12) == 0 ) {
@ -142,10 +141,9 @@ int AddIn_main(int isAppli, unsigned short OptionNum)
break;
}
}
EditRun(2); // Program listing & edit
EditRun(run); // Program listing & edit
} else
if ( i==NotfoundProgERR ) { ProgNo=ErrorProg; ExecPtr=ErrorPtr; if (ProgNo>=0) EditRun(2); } // Program listing & edit
bejmp:
for (j=0; j<BE_MAX; j++) {
if ( strncmp( befiles[j].sname, sname, 12) == 0 ) { j++; break; }
}
@ -154,11 +152,13 @@ int AddIn_main(int isAppli, unsigned short OptionNum)
strncpy( befiles[0].sname, sname, 12);
befiles[0].execptr = ExecPtr;
break;
case FileCMD_NEW:
if ( NewProg() ) break ;
EditRun(2); // Program listing & edit
goto bejmp;
run=2;
goto bejmp2;
break;
case FileCMD_RENAME:
RenameCopyFile(filename, 0);
break;