Willsy, on Thu Sep 22, 2011 3:43 PM, said:
Yep - XB EA3 is MEGA slow. I don't know why. Maybe Rich or Tursi can shed some light on it.
Mark
Well this is the GPL code for EA3 Load and Run:
<0208> *
<0209> * Main Menu Option 3: LOAD AND RUN
<0210> *
<0211> E9E4 87,48 LANDR DCLR @FLAG
<0212> E9E6 B6,49,01 OR >01,@FLAG2
<0213> E9E9 07,20 ALL SPACE
<0214> E9EB 08 FMT
<0215> E9EC FF,08 COL 8
<0216> E9EE FE,00 ROW 0
<0217> E9F0 0F,2A,20 HTEX '* LOAD and RUN *'
E9F3 4C,4F,41
E9F6 44,20,61
E9F9 6E,64,20
E9FC 52,55,4E
E9FF 20,2A
<0218> EA01 89 COL+ 10
<0219> EA02 A1 ROW+ 2
<0220> EA03 09,46,49 HTEX 'FILE NAME?'
EA06 4C,45,20
EA09 4E,41,4D
EA0C 45,3F
<0221> EA0E FB FEND
<0222> EA0F 06,E6,BA CALL EXPMEM
<0223> EA12 B6,49,40 OR >40,@FLAG2
<0224> EA15 BE,A0,A2 GE7F2 ST SPACE,V@162
EA18 20
<0225> EA19 35,00,3B MOVE >003B,V@162,V@163
EA1C A0,A3,A0
EA1F A2
<0226> EA20 BF,20,00 DST 162,@CURADD
EA23 A2
<0227> EA24 B6,48,04 OR >04,@FLAG
<0228> EA27 BF,1C,10 DST >1000,@PABPTR
EA2A 00
<0229> EA2B 06,E5,1D CALL GETALL
<0230> EA2E 86,42 CLR @XTOKEN
<0231> EA30 8F,50 DCZ @FAC6
<0232> EA32 4A,3B BR GE816
<0233> EA34 06,ED,E2 CALL BINIT2
<0234> EA37 4A,59 BR RUN
<0235> EA39 4A,46 BR GE821
<0236> EA3B DA,49,40 GE816 CLOG >40,@FLAG2
<0237> EA3E 6A,46 BS GE821
<0238> EA40 06,ED,EA CALL BINIT3
<0239> EA43 B2,49,BF AND >BF,@FLAG2
<0240> EA46 BE,E0,01 GE821 ST >04,V@>0001(@PABPTR)
EA49 1C,04
<0241> EA4B BD,56,1C GE826 DST @PABPTR,@VPAB
<0242> EA4E A3,56,00 DADD >0009,@VPAB
EA51 09
<0243> EA52 0F,22 XML >22 ****** THIS LINE IS THE LINE THAT EXECUTES THE PROGRAM ******
<0244> EA54 6B,3F BS GE8B3
<0245> EA56 05,EA,15 B GE7F2
Now for XB the problem is the LOAD is just as small but the LINK routine is hundreds of lines of code.
I wrote EXECUTE for RXB as LINK in XB is just insane for all the things it does.
The RXB command EXECUTE just takes the CPU address and runs it.