RXB Posted July 3, 2014 Share Posted July 3, 2014 Cool idea. Could you dump the results into an array versus on screen? Yea you could do a DIM F$(200) CALL SEARCH("FUN",F,F$()) FOR X=0 TO 200 :: PRINT F$(X) :: NEXT X Of course you could also do this from a XB program instead but this looked so cool from command mode. Quote Link to comment Share on other sites More sharing options...
RXB Posted July 3, 2014 Share Posted July 3, 2014 A very cool idea occurred to me for the TI a week ago. 1 ! WILL FIND AND RUN ANY FILE SEARCH STRING IN FILE NAME 100 DISPLAY AT(10,1)ERASE ALL:"XB GAME TO RUN:" 110 ACCEPT AT(12,1)BEEP SIZE(10):S$ 120 DIM X$(200) 130 CALL SEARCH(S$,F,X$())! S$ IS THE SEARCH STRING TO FIND, F IS FILES, X$() ARRAY 140 FOR L=0 TO 200 150 P=POS(S$,F$(L),1) 160 IF P THEN CALL XBPGM(F$(L)) 170 NEXT L 180 PRINT "NOT FOUND" 190 CALL KEY("",0,K,S) :: GOTO 100 I could even add a section that sees what type of file and use a smart loader to figure out the way to load it. 1 Quote Link to comment Share on other sites More sharing options...
RXB Posted July 3, 2014 Share Posted July 3, 2014 (edited) Got a beta to work on Classic99 100 DISPLAY AT(12,1)ERASE ALL:"SEARCH FOR:" 105 ACCEPT AT(12,13)BEEP:S$ 110 D$="DSK1." 120 GOSUB 1000 130 D$="SCS1." 140 GOSUB 1000 150 D$="WDS1." 160 GOSUB 1000 170 D$="HDK1." 180 GOSUB 1000 190 END 1000 IF D$="DSK_." OR D$="SCS9." OR D$="WDS9." OR D$="HDK9." THEN RETURN 1005 ON ERROR 1130 1010 OPEN #1:D$,INPUT,RELATIVE,INTERNAL,FIXED 1020 INPUT #1:N$,T,S,F 1040 INPUT #1:N$,T,S,R 1050 IF POS(N$,S$,1)THEN PRINT D$&N$ 1060 IF LEN(N$)=0 THEN 1090 1070 IF ABS(T)=6 THEN PRINT N$,"DIRECTORY" 1080 GOTO 1040 1090 CLOSE #1 1100 I=ASC(SEG$(D$,4,1))+1 1110 D$=SEG$(D$,1,3)&CHR$(I)&"." 1120 GOTO 1000 1130 RETURN 1100 Edited July 3, 2014 by RXB Quote Link to comment Share on other sites More sharing options...
RXB Posted July 5, 2014 Share Posted July 5, 2014 (edited) Also working on fixing the freaking horridly slow and bloated RANDOM number seed and and possible fixing RND to not be so slow in XB. Here is the RANDOM seed: <0363> A295 42,03,23 X2SEED BYTE >42,>03,>23,>15,>00 * = 33521, X2 INITIAL VAL A298 15,00 <0364> A29A 43,02,3E X1SEED BYTE >43,>02,>3E,>2A,>17 * = 2624223, X1 INITIAL VAL A29D 2A,17 <0365> *********************************************************** <0366> * PSEUDO-RANDOM NUMBER GENERATOR <0367> * X(N+1) = (A*X(N)+C) MOD M; RND = X/M <0368> * WHERE: X = X2 * 1E7 + X1 <0369> * A = A2 * 1E7 + A1 <0370> * C = C2 * 1E7 + C1 <0371> * M = 1E14 <0372> * ASSUMPTIONS: <0373> * (1) All numbers are integers; fractional parts are <0374> * truncated <0375> * (2) If the variables listed below start in the ranges <0376> * specified. They will also end in the ranges specified <0377> * <0378> * CONSTANTS: 0 <= A2 < 5E6 ; 0 <= C2 < 1E7 <0379> * 0 <= A1 < 5E6 ; 0 <= C1 < 1E7 <0380> * VARIABLES: 0 <= X2 < 1E7 ; 0 <= T1 <= 1E14 ; 0 <= T2 < 1E <0381> * 0 <= X1 < 1E7 ; 0 <= T3 <= 1E14 ; 0 <= T4 < 1E <0382> * <0383> * STACK USAGE: <0384> * CONSTANT REFS CONTANT REFS CONTANT REF <0385> * +---------+ IN/OUT IN/OUT IN/OUT <0386> * | STACK+4 | X2*A1(F)(H) -- ---- -- ---- 99/4 GPL-ASSEMBLER (Pass 3) correct PAGE 0016 EQUATES EXEC-359 <0387> * +---------+ <0388> * | STACK+3 | T2 (C)(J) -- ---- -- ---- <0389> * +---------+ <0390> * | STACK+2 | T1 (B)(D) new X1 (E)(N) -- ---- <0391> * +---------+ <0392> * | STACK+1 |old X1(A)(G) T3 (K)(L) new X2 (M)(P) <0393> * +---------+ <0394> *********************************************************** <0395> * COMPUTE NEW VALUE FOR X1, SAVE IT IN V@RNDX1 <0396> * STACK <0397> * SREFS FAC CONTENTS <0398> A29F 35,00,05 NRND MOVE 5,V@RNDX1,@FAC FAC = X1 A2A2 4A,A3,A5 <0399> A2A5 86,4F CLR @FAC5 FAC = CLR <0400> A2A7 87,50 DCLR @FAC6 FAC = CLR <0401> A2A9 0F,77 XML VPUSH (A) FAC = X1 <0402> A2AB 31,00,08 MOVE 8,G@RNDA1,@ARG ARG = A1 A2AE 5C,A3,57 <0403> A2B1 0F,08 XML FMUL FAC = X1*A1 <0404> A2B3 31,00,08 MOVE 8,G@RNDC1,@ARG ARG = C1 A2B6 5C,A3,67 <0405> A2B9 0F,06 XML FADD T1=FAC = X1*A1+C1 <0406> A2BB 0F,77 XML VPUSH (B) FAC = T1 <0407> A2BD 31,00,08 MOVE 8,G@RNDEM,@ARG ARG = 1/1E7 A2C0 5C,A3,77 <0408> A2C3 0F,08 XML FMUL FAC = T1/1E7 <0409> A2C5 06,00,22 CALL GRINT T2=FAC = INT(T1/1E7) <0410> A2C8 0F,77 XML VPUSH (C) FAC = T2 <0411> A2CA 31,00,08 MOVE 8,G@RNDEP,@ARG ARG = 1E7 A2CD 5C,A3,6F <0412> A2D0 0F,08 XML FMUL FAC = T2*1E7 <0413> A2D2 A7,6E,00 DSUB 8,@VSPTR A2D5 08 <0414> A2D6 0F,0C XML SSUB (D) X1=FAC = T1-T2*1E7 <0415> A2D8 35,00,05 MOVE 5,@FAC,V@RNDX1 FAC = X1 (new) A2DB A3,A5,4A <0416> A2DE 0F,77 XML VPUSH (E) FAC = X1 <0417> * COMPUTE NEW VALUE FOR X2, SAVE IT IN V@RNDX2 <0418> A2E0 35,00,05 MOVE 5,V@RNDX2,@FAC FAC = X2 A2E3 4A,A3,A0 <0419> A2E6 86,4F CLR @FAC5 FAC = CLR <0420> A2E8 87,50 DCLR @FAC6 FAC = CLR <0421> A2EA 31,00,08 MOVE 8,G@RNDA1,@ARG ARG = A1 A2ED 5C,A3,57 <0422> A2F0 0F,08 XML FMUL FAC = X2*A1 <0423> A2F2 A3,6E,00 DADD 8,@VSPTR A2F5 08 <0424> A2F6 0F,77 XML VPUSH (F) FAC = X2*A1 <0425> A2F8 A7,6E,00 DSUB 24,@VSPTR A2FB 18 <0426> A2FC 0F,78 XML VPOP (G) FAC = X1 <0427> A2FE A3,6E,00 DADD 32,@VSPTR A301 20 <0428> A302 31,00,08 MOVE 8,G@RNDA2,@ARG ARG = A2 A305 5C,A3,4F <0429> A308 0F,08 XML FMUL FAC = X1*A2 <0430> A30A 0F,0B XML SADD (H) FAC = X2*A1+X1*A2 <0431> A30C 31,00,08 MOVE 8,G@RNDC2,@ARG ARG = C2 A30F 5C,A3,5F <0432> A312 0F,06 XML FADD FAC = X2*A1+X1*A2 <0433> A314 0F,0B XML SADD (J) T3=FAC = X2*A1+X1*A2 <0434> A316 A7,6E,00 DSUB 16,@VSPTR A319 10 <0435> A31A 0F,77 XML VPUSH (K) FAC = T3 99/4 GPL-ASSEMBLER (Pass 3) correct PAGE 0017 EQUATES EXEC-359 <0436> A31C 31,00,08 MOVE 8,G@RNDEM,@ARG ARG = 1/1E7 A31F 5C,A3,77 <0437> A322 0F,08 XML FMUL FAC = T3/1E7 <0438> A324 06,00,22 CALL GRINT T4=FAC = INT(T3/1E7) <0439> A327 31,00,08 MOVE 8,G@RNDEP,@ARG ARG = 1E7 A32A 5C,A3,6F <0440> A32D 0F,08 XML FMUL FAC = T4*1E7 <0441> A32F 0F,0C XML SSUB (L) X2=FAC = T3-T4*1E7 <0442> A331 35,00,05 MOVE 5,@FAC,V@RNDX2 FAC = X2 (new) A334 A3,A0,4A <0443> * COMPUTE NEW VALUE FOR RND, LEAVE IT IN FAC <0444> A337 31,00,08 MOVE 8,G@RNDEM,@ARG ARG = 1/1E7 A33A 5C,A3,77 <0445> A33D 0F,08 XML FMUL FAC = X2/1E7 <0446> A33F 0F,77 XML VPUSH (M) FAC = X2/1E7 <0447> A341 A3,6E,00 DADD 8,@VSPTR A344 08 <0448> A345 0F,78 XML VPOP (N) FAC = X1 <0449> A347 0F,08 XML FMUL FAC = X1/1E7 <0450> A349 0F,08 XML FMUL FAC = X1/1E14 <0451> A34B 0F,0B XML SADD (P)RND=FAC = (X2/1E7)+(X1/1E14) <0452> A34D 0F,75 XML CONT <0453> *********************************************************** <0454> * CONSTANTS FOR THE RANDOM NUMBER ROUTINE <0455> A34F 43,01,2B RNDA2 BYTE >43,>01,>2B,>59,>52,>00,>00,>00 * = 1438982 A352 59,52,00 A355 00,00 <0456> A357 42,2A,08 RNDA1 BYTE >42,>2A,>08,>15,>00,>00,>00,>00 * = 0420821 A35A 15,00,00 A35D 00,00 <0457> A35F 43,02,0B RNDC2 BYTE >43,>02,>0B,>20,>30,>00,>00,>00 * = 2113248 A362 20,30,00 A365 00,00 <0458> A367 43,06,36 RNDC1 BYTE >43,>06,>36,>05,>13,>00,>00,>00 * = 6540519 A36A 05,13,00 A36D 00,00 <0459> A36F 43,0A,00 RNDEP BYTE >43,>0A,>00,>00,>00,>00,>00,>00 * = 1E7 A372 00,00,00 A375 00,00 <0460> A377 3C,0A,00 RNDEM BYTE >3C,>0A,>00,>00,>00,>00,>00,>00 * = 1/1E7 A37A 00,00,00 A37D 00,00 <0461> *********************************************************** <0462> * RANDOMIZE STATEMENT <0463> *********************************************************** <0464> A37F 06,6A,78 NRNDMZ CALL CHKEND Seed provider? <0465> A382 63,C0 BS RNDM1 No <0466> * RANDOMIZE given a see value <0467> * (99,000,000,000,001 possible starting positions) <0468> * (Place-value is ignored in the input number) <0469> A384 0F,74 XML PARSE Parse the seed <0470> A386 83 BYTE TREMZ * Up to end of statement <0471> A387 06,A3,ED CALL CKSTNM <0472> A38A 8F,4A DCZ @FAC Check FAC for zero <0473> A38C 63,B6 BS GA3B6 <0474> A38E BE,4A,46 ST >46,@FAC 0 < FAC < 1E14 <0475> A391 0F,77 XML VPUSH Let FAC = X2*1E7+X1 <0476> A393 31,00,08 MOVE 8,G@RNDEM,@ARG ARG = 1/1E7 A396 5C,A3,77 <0477> A399 0F,08 XML FMUL FAC = X2+X1/1E7 <0478> A39B 06,00,22 CALL GRINT FAC = X2 <0479> A39E 35,00,05 MOVE 5,@FAC,V@RNDX2 FAC = X2 A3A1 A3,A0,4A <0480> A3A4 31,00,08 MOVE 8,G@RNDEP,@ARG ARG = 1E7 99/4 GPL-ASSEMBLER (Pass 3) correct PAGE 0018 EQUATES EXEC-359 A3A7 5C,A3,6F <0481> A3AA 0F,08 XML FMUL FAC = X2*1E7 <0482> A3AC 0F,0C XML SSUB FAC = X1 <0483> A3AE 35,00,05 MOVE 5,@FAC,V@RNDX1 FAC = X1 A3B1 A3,A5,4A <0484> A3B4 0F,75 XML CONT FAC = X1 <0485> A3B6 BD,A3,A0 GA3B6 DST @FAC,V@RNDX2 FAC = 0 A3B9 4A <0486> A3BA BD,A3,A5 DST @FAC,V@RNDX1 FAC = 0 A3BD 4A <0487> A3BE 0F,75 XML CONT <0488> * RANDOMIZE given number seed value (use GPL RAND function) <0489> * (16K possible starting positions) <0490> A3C0 BF,4A,42 RNDM1 DST >4201,@FAC FAC = >4201 A3C3 01 <0491> A3C4 86,4E CLR @FAC4 FAC4= >00 <0492> A3C6 06,A3,D2 CALL RNDMZ <0493> A3C9 03,A5 DATA RNDX1 <0494> A3CB 06,A3,D2 CALL RNDMZ Set up seed <0495> A3CE 03,A0 DATA RNDX2 <0496> A3D0 0F,75 XML CONT Continue on <0497> A3D2 88,52 RNDMZ FETCH @FAC8 Fetch address of seed (high b <0498> A3D4 88,53 FETCH @FAC9 Fetch address of seed (low by <0499> A3D6 02,63 RAND 99 GPL Randomize <0500> A3D8 BC,4C,78 ST @RANDOM,@FAC2 >00<=FAC+2<=FF <0501> A3DB E6,4C,02 SRL 2,@FAC2 >00<=FAC+2<=3F <0502> A3DE 02,63 RAND 99 GPL Randomize <0503> A3E0 BC,4D,78 ST @RANDOM,@FAC3 >00<=FAC+3<=FF <0504> A3E3 E6,4D,02 SRL 2,@FAC3 >00<=FAC+3<=3F <0505> A3E6 35,00,05 MOVE 5,@FAC,V*FAC8 Put in seed A3E9 B0,52,4A <0506> A3EC 00 RTN <0507> A3ED D6,4C,65 CKSTNM CEQ >65,@FAC2 <0508> A3F0 6D,BE BS ERRSNM <0509> A3F2 00 RTN <0510> A3F3 40,01,00 FLT1 BYTE >40,>01,>00,>00,>00,>00,>00,>00 A3F6 00,00,00 A3F9 00,00 Why would TI make it so freaking complicated and bloated? What problem were they attempting to solve? It looks like TI was attempting to create a new version of math for RANDOM numbers! P.S. I am thinking of making a IRND that is integer based only version of RND unlike the Floating Point version. Also a IRANDOM seed that is a Integer based only version of RANDOM seed unlike the Floating Point version. Edited July 5, 2014 by RXB 1 Quote Link to comment Share on other sites More sharing options...
RobertLM78 Posted July 5, 2014 Share Posted July 5, 2014 Rich- I was wondering- how hard would it be to allow MIN and MAX to have 'unlimited' arguments, rather than the standard two? For example, it would be cool if you had a numeric array, A and could find the minimum value with something like: 150 B=MIN(A()) similar to MATLAB, which checks the entire vector, rather than just two scalars. Just something to think about since you're preparing a new release of RXB . Quote Link to comment Share on other sites More sharing options...
RXB Posted July 6, 2014 Share Posted July 6, 2014 Rich- I was wondering- how hard would it be to allow MIN and MAX to have 'unlimited' arguments, rather than the standard two? For example, it would be cool if you had a numeric array, A and could find the minimum value with something like: 150 B=MIN(A()) similar to MATLAB, which checks the entire vector, rather than just two scalars. Just something to think about since you're preparing a new release of RXB . I do no think something like that would get much use. As it is now, I am looking at removing some stuff from RXB that sees no use at all. I was hoping to get some feedback from people on the RANDOMIZE (seed) and RND for a better faster version. Quote Link to comment Share on other sites More sharing options...
Gazoo Posted July 6, 2014 Share Posted July 6, 2014 (edited) As it is now, I am looking at removing some stuff from RXB that sees no use at all. Well, you left yourself open there. And I'm jumping in - with both feet! How about a version of RXB that doesn't use the menu? Just start it up like all the other XBs do. The menu is of no use to me. Search for DSK1.LOAD and if it doesn't find that, go to the command line. Or press the spacebar to bypass the search. I for one would LOVE something like that. YOU HAVE NO IDEA HOW MUCH!!!!! PLEASE DO IT!!!!!!!!! And I'll bet I'm not the only one that feels like this. Well, I know, because I've talked to a few people about it, I don't have to bet. Take a poll if you want, I'll bet you find a lot of people in my camp. You don't have to abandon the menu, just make 2 versions, one with the menu and one without. But I've mentioned this before a few times, and you didn't like the idea. Shame. Gazoo Edited July 6, 2014 by Gazoo Quote Link to comment Share on other sites More sharing options...
+InsaneMultitasker Posted July 6, 2014 Share Posted July 6, 2014 I do no think something like that would get much use. As it is now, I am looking at removing some stuff from RXB that sees no use at all. I was hoping to get some feedback from people on the RANDOMIZE (seed) and RND for a better faster version. Myarc's Advanced BASIC for the Geneve is written in assembly. It might be worth a look for some code to help you speed things up. I don't know how much if any of it was based on the original XB code, you would be a better judge of that. I know how you feel about bugs and all, but I think a 2nd version with the auto-load and FCTN-8 restored would be nice to have. Or maybe you'll free up space to make things optional for those whose only "complaint" is these more prominent differences. 1 Quote Link to comment Share on other sites More sharing options...
RXB Posted July 6, 2014 Share Posted July 6, 2014 Well, you left yourself open there. And I'm jumping in - with both feet! How about a version of RXB that doesn't use the menu? Just start it up like all the other XBs do. The menu is of no use to me. Search for DSK1.LOAD and if it doesn't find that, go to the command line. Or press the spacebar to bypass the search. I for one would LOVE something like that. YOU HAVE NO IDEA HOW MUCH!!!!! PLEASE DO IT!!!!!!!!! And I'll bet I'm not the only one that feels like this. Well, I know, because I've talked to a few people about it, I don't have to bet. Take a poll if you want, I'll bet you find a lot of people in my camp. You don't have to abandon the menu, just make 2 versions, one with the menu and one without. But I've mentioned this before a few times, and you didn't like the idea. Shame. Gazoo Hmm RXB does do DSK1.LOAD by default and goes to command line, just press the spacebar. It will find LOAD on any of the 9 drives so I guess it is too much effort to just press the spacebar to go to command line? (Unless you are using a old 2001 version that had the Auto start, then after drive 9 would go back to start over, but again just press the spacebar for command line.) So what would be the point of removing the menu as it does not interfere with anything at all? Works exactly the same as XB or XB 2.7 or SXB or GKXB so other then you do not want to look at the menu makes zero difference in performance. The complaint is basically that it is not Extended Basic 110 or XB 2.7 so you are free to use those. (But of course no built in Editor Assembler, or SAMS or Disk/Hard Drive support.) Quote Link to comment Share on other sites More sharing options...
Gazoo Posted July 6, 2014 Share Posted July 6, 2014 Myarc's Advanced BASIC for the Geneve is written in assembly. It might be worth a look for some code to help you speed things up. I don't know how much if any of it was based on the original XB code, you would be a better judge of that. I know how you feel about bugs and all, but I think a 2nd version with the auto-load and FCTN-8 restored would be nice to have. Or maybe you'll free up space to make things optional for those whose only "complaint" is these more prominent differences. Here's a message sent to my personal inbox: Gazoo said: "Search for DSK1.LOAD and if it doesn't find that, go to the command line. Or press the spacebar to bypass the search. I for one would LOVE something like that. YOU HAVE NO IDEA HOW MUCH!!!!! PLEASE DO IT!!!!!!!!!" And the Anonymous reply was: "#1 reason I AVOID RXB like the plague! I cannot stand that @#$%ing menu getting in my way." C'mon dude, help a brother out. Sincerely, Gazoo Quote Link to comment Share on other sites More sharing options...
Gazoo Posted July 6, 2014 Share Posted July 6, 2014 (edited) Hmm RXB does do DSK1.LOAD by default and goes to command line, just press the spacebar. It will find LOAD on any of the 9 drives so I guess it is too much effort to just press the spacebar to go to command line? (Unless you are using a old 2001 version that had the Auto start, then after drive 9 would go back to start over, but again just press the spacebar for command line.) So what would be the point of removing the menu as it does not interfere with anything at all? Works exactly the same as XB or XB 2.7 or SXB or GKXB so other then you do not want to look at the menu makes zero difference in performance. The complaint is basically that it is not Extended Basic 110 or XB 2.7 so you are free to use those. (But of course no built in Editor Assembler, or SAMS or Disk/Hard Drive support.) "So what would be the point of removing the menu as it does not interfere with anything at all?" That question makes no sense as the menu interferes with the normal startup sequence of XB. Some people like that, you've changed the behavior. All we're asking for is an alternate version with the same wonderful routines contained within RXB that doesn't have the distasteful aspects (to some) of the menu. Can you explain exactly what the harm in that would be? "Works exactly the same as XB or XB 2.7 or SXB or GKXB so other then you do not want to look at the menu makes zero difference in performance." No it doesn't work the same. As it's been stated, perhaps not so eloquently, "The menu gets in the way." What's wrong with having the version you like and also having one that's compatible with TI Extended Basic and all the other versions? You can only gain more acceptance in doing so. Isn't that the desire of any software author? Or is it "This is the way I'm going to do it and tough $hit if you don't like it."? Seems that your belief is the latter. Sorry, but I don't live that way. Constructive criticism can only serve to make things better. If you don't believe in that principle, then continue on your present course. I prefer to improve the software I've released based on the reviews (good and bad) and the suggestions of people that actually use it. But 'To each his own." If it only took a tiny little bit of effort on your part (maybe a few minutes) to have an alternate version of RXB that a lot more people would use, what exactly would be the downside of that? Gazoo Edited July 6, 2014 by Gazoo Quote Link to comment Share on other sites More sharing options...
RobertLM78 Posted July 6, 2014 Share Posted July 6, 2014 I'm getting an odd bug with RXB 2012, at least in MESS. If I have a program in memory, type SIZE, then type LIST, the screen goes haywire, and I have to hard reset. Quote Link to comment Share on other sites More sharing options...
RXB Posted July 6, 2014 Share Posted July 6, 2014 (edited) "So what would be the point of removing the menu as it does not interfere with anything at all?" That question makes no sense as the menu interferes with the normal startup sequence of XB. Some people like that, you've changed the behavior. All we're asking for is an alternate version with the same wonderful routines contained within RXB that doesn't have the distasteful aspects (to some) of the menu. Can you explain exactly what the harm in that would be? "Works exactly the same as XB or XB 2.7 or SXB or GKXB so other then you do not want to look at the menu makes zero difference in performance." No it doesn't work the same. As it's been stated, perhaps not so eloquently, "The menu gets in the way." What's wrong with having the version you like and also having one that's compatible with TI Extended Basic and all the other versions? You can only gain more acceptance in doing so. Isn't that the desire of any software author? Or is it "This is the way I'm going to do it and tough $hit if you don't like it."? Seems that your belief is the latter. Sorry, but I don't live that way. Constructive criticism can only serve to make things better. If you don't believe in that principle, then continue on your present course. I prefer to improve the software I've released based on the reviews (good and bad) and the suggestions of people that actually use it. But 'To each his own." If it only took a tiny little bit of effort on your part (maybe a few minutes) to have an alternate version of RXB that a lot more people would use, what exactly would be the downside of that? Gazoo What does the menu stop you from from doing? What does the menu GET IN THE WAY OF? How does it interfere with any programs other then you must push the spacebar to bypass DSK1.LOAD? Really how freaking hard is it to push the spacebar? This is just a way to gimp the options RXB has: PERIOD KEY instant access to EA Cart. ANY KEY for instant DSK#.LOAD off any disk. ENTER KEY instant run of EA5 programs named UTIL1 off of any disk. (In the EA Cart environment) COMMA instant batch file processor runs off disk. So basically you want to me take out all the options that RXB has to make it a XB 2.7 version or Version 110 XB gimped look alike. Or you want to hide all the things RXB can do like this is would be a improvement? How is gimping my RXB a improvement? I could give a blank screen like Verizon 110 but then all the extra features are no longer seen or known! (That is like painting over the Mona Lisa smile with a happy face.) If you do not want to use RXB I have no issue with this at all. The RXB Loader is faster and better then the Boot or FW loader or anyone elses LOAD program loader. 10 CALL XBPGM("WDS.FUNNELWEB.FW") ! This single line is easy to modify and takes less disk space also will load any EA 5 program. If it makes people happy I can blank the screen after menu, but not during. I do not tell you how to write XB 2.7 or anything else do I? I see a hidden agenda here as all these people you talk about have never ever sent me a single message or request like this about the menu in over 13 years. Edited July 6, 2014 by RXB Quote Link to comment Share on other sites More sharing options...
RXB Posted July 6, 2014 Share Posted July 6, 2014 (edited) I'm getting an odd bug with RXB 2012, at least in MESS. If I have a program in memory, type SIZE, then type LIST, the screen goes haywire, and I have to hard reset. Sounds like a corrupt version of RXB or are you using the old normal XB ROMs. If you use the normal XB ROMs then LIST will crash RXB or GKXB as both have 2 bytes modified. * * Code for new commands DEL, COPY, and MOVE * * NOTICE !!!!! * RAM BANK 2 CHANGED AS FOLLOWS----- * 7D1B changed from >08 to >0B * 7D35 changed from >08 to >0C * ******************************************************************************** Here is a copy of the one I use in MESS let me know if you still get the problem. rxb_2012.zip Edited July 6, 2014 by RXB Quote Link to comment Share on other sites More sharing options...
Gazoo Posted July 6, 2014 Share Posted July 6, 2014 What does the menu stop you from from doing? What does the menu GET IN THE WAY OF? How does it interfere with any programs other then you must push the spacebar to bypass DSK1.LOAD? Really how freaking hard is it to push the spacebar? This is just a way to gimp the options RXB has: PERIOD KEY instant access to EA Cart. ANY KEY for instant DSK#.LOAD off any disk. ENTER KEY instant run of EA5 programs named UTIL1 off of any disk. (In the EA Cart environment) COMMA instant batch file processor runs off disk. So basically you want to me take out all the options that RXB has to make it a XB 2.7 version or Version 110 XB gimped look alike. Or you want to hide all the things RXB can do like this is would be a improvement? How is gimping my RXB a improvement? I could give a blank screen like Verizon 110 but then all the extra features are no longer seen or known! (That is like painting over the Mona Lisa smile with a happy face.) If you do not want to use RXB I have no issue with this at all. The RXB Loader is faster and better then the Boot or FW loader or anyone elses LOAD program loader. 10 CALL XBPGM("WDS.FUNNELWEB.FW") ! This single line is easy to modify and takes less disk space also will load any EA 5 program. If it makes people happy I can blank the screen after menu, but not during. I do not tell you how to write XB 2.7 or anything else do I? I see a hidden agenda here as all these people you talk about have never ever sent me a single message or request like this about the menu in over 13 years. So you didn't understand any of the things I mentioned. That's too bad. Just so you know, I had a number of requests along the years for changes in my XB, and honored them all, or kindly explained why the request wasn't possible to do. That's how it progressed from XBPATCH to XB v2.1 and up to v2.7. That's part of being a programmer, meeting the users requests and suggestions to make the software better for THEM, not YOU. You don't have to understand why someone wants a particular option, only that it makes the software more useful for them. If you choose to ignore that fact, then so be it. But that's extremely closed-minded, don't you see? No hidden agenda, just a request for an improvement that would be preferable to many. And the request was for having the menu as an option, you don't have to remove it for the few that prefer it. I DO want to use RXB as I like many of the commands in it, but can't currently because of the way it starts. Gazoo Quote Link to comment Share on other sites More sharing options...
+Ksarul Posted July 6, 2014 Share Posted July 6, 2014 Rich, could the solution be something as simple as adding an option to the TI start Menu? 1 TI BASIC 2 RXB With MENU 3 RXB Without MENU Then everyone would be happy--and more people would play with the goodness that is RXB. 2 Quote Link to comment Share on other sites More sharing options...
+hloberg Posted July 6, 2014 Share Posted July 6, 2014 Rich, could the solution be something as simple as adding an option to the TI start Menu? 1 TI BASIC 2 RXB With MENU 3 RXB Without MENU Then everyone would be happy--and more people would play with the goodness that is RXB. I agree. I have started liking RXB as of recent but not too fond of the start menu. 2 Quote Link to comment Share on other sites More sharing options...
RobertLM78 Posted July 6, 2014 Share Posted July 6, 2014 Here is a copy of the one I use in MESS let me know if you still get the problem. Same behaviour with this new one - indeed I didn't do anything with the original rpk I had, other than downloading it from whtech . Here's a program: Type SIZE: Then type LIST: Quote Link to comment Share on other sites More sharing options...
TheMole Posted July 6, 2014 Share Posted July 6, 2014 (edited) You don't have to understand why someone wants a particular option, only that it makes the software more useful for them. If you choose to ignore that fact, then so be it. Although I agree with the rest of your post, this statement is not necessarily true. You should always try to understand the reason behind a particular request, it's unlikely that an end-user can come up with the best solution for a given problem, so you understanding the reason behind the feature request could allow you to propose an even better/easier solution. Although all of the above of course assumes that the developer is interested in listening to his/her users to begin with, so the point is probably moot in this discussion. Edited July 6, 2014 by TheMole 1 Quote Link to comment Share on other sites More sharing options...
+InsaneMultitasker Posted July 6, 2014 Share Posted July 6, 2014 Then type LIST: Looks like you found an Easter Egg! Is this TI's fabled, long-forgotten patchwork quilt screensaver???? 2 Quote Link to comment Share on other sites More sharing options...
RobertLM78 Posted July 6, 2014 Share Posted July 6, 2014 Quite an exciting find, huh? Quote Link to comment Share on other sites More sharing options...
Asmusr Posted July 6, 2014 Share Posted July 6, 2014 Rich, could the solution be something as simple as adding an option to the TI start Menu? 1 TI BASIC 2 RXB With MENU 3 RXB Without MENU Then everyone would be happy--and more people would play with the goodness that is RXB. XB should also have an option to turn off the auto loader. Or is there a shortcut I'm not aware of? Quote Link to comment Share on other sites More sharing options...
RXB Posted July 6, 2014 Share Posted July 6, 2014 "So what would be the point of removing the menu as it does not interfere with anything at all?" That question makes no sense as the menu interferes with the normal startup sequence of XB. Some people like that, you've changed the behavior. All we're asking for is an alternate version with the same wonderful routines contained within RXB that doesn't have the distasteful aspects (to some) of the menu. Can you explain exactly what the harm in that would be? "Works exactly the same as XB or XB 2.7 or SXB or GKXB so other then you do not want to look at the menu makes zero difference in performance." No it doesn't work the same. As it's been stated, perhaps not so eloquently, "The menu gets in the way." What's wrong with having the version you like and also having one that's compatible with TI Extended Basic and all the other versions? You can only gain more acceptance in doing so. Isn't that the desire of any software author? Or is it "This is the way I'm going to do it and tough $hit if you don't like it."? Seems that your belief is the latter. Sorry, but I don't live that way. Constructive criticism can only serve to make things better. If you don't believe in that principle, then continue on your present course. I prefer to improve the software I've released based on the reviews (good and bad) and the suggestions of people that actually use it. But 'To each his own." If it only took a tiny little bit of effort on your part (maybe a few minutes) to have an alternate version of RXB that a lot more people would use, what exactly would be the downside of that? Gazoo Well the problem is not RXB it is Boot and FW and some of these loaders do not use a standard address to access XB but instead exploit a XB bug that I would have to re install. RXB does include the SOURCE CODE and you can make your own version pretty easy as the ALL THE TOOLS are in the package. You could even make your own version of XB as I label every single line of RXB in the source code for you to see: <0209> *********************************************************** <0210> COPY 'DSK8.SRXB3-C' <0001> *********************************************************** <0002> * START OF BASIC INTERPETER <0003> *********************************************************** <0004> AORG >0372 <0005> 6372 86,A3,70 TOPLEV CLR V@>0370 Initialize temp area <0006> 6375 35,00,4D MOVE 77,V@>0370,V@>0371 6378 A3,71,A3 637B 70 <0007> * RXB MODULE PATCH CODE FOR RXB MODULE ******************** <0008> * ST 5,@KEYBD Select full keyboard <0009> * SCAN <0010> * CZ @KEYBD <0011> * BR G6388 99/4A Console? <0012> * RXB HARDWARE CARTRIDGE PATCH <0013> * CALL CART * RXB PATCH CODE FOR CARTRIDE <0014> 637C BE,A3,BB ST >01,V@CONFLG Select 99/4A console 637F 01 <0015> 6380 86,74 G6388 CLR @KEYBD <0016> * RXB MODULE PATCH CODE FOR RXB MODULE ******************** <0017> * DST NLNADD,V@BUFSRT Initialize edit-buffer start <0018> * DST NLNADD,V@BUFEND Initialize edit-buffer end <0019> 6382 31,00,02 MOVE 2,G@ATNZZ,@INTRIN Get address of ATNZZ 6385 38,00,32 <0020> 6388 B2,38,1F AND >1F,@INTRIN Throw away the BR opcode <0021> 638B A3,38,00 DADD >5B,@INTRIN Address of polynomial constan 638E 5B <0022> <0023> * RXB PATCH CODE ************* <0024> 638F BE,A3,71 ST >31,V@LODFLG indicate try auto-boot 6392 31 <0025> 6393 05,63,A5 B SZNEW <0026> AORG >03A4 <0027> 63A4 00 RTN Byte to even address <0028> *---------------------------------------------------------- <0029> * Add the following line for fixing "MEMORY FULL" error <0030> * occurring during MERGE execution will leave the file open <0031> * to disk DSR bug, 5/19/81 <0032> 63A5 86,A3,9E SZNEW CLR V@MRGPAB Initialize merged temporary <0033> * for PAB pointer <0034> *---------------------------------------------------------- <0035> 63A8 BE,73,88 ST RSTK,@SUBSTK Load base of subroutine stack <0036> 63AB 06,69,17 CALL CHRTA2 Load character table <0037> 63AE 86,45 CLR @FLAG Initialize flag byte <0038> 63B0 87,46 DCLR @BUFLEV Initialize crunch buffer leve <0039> 63B2 06,80,12 CALL CLSALL Close all open files <0040> 63B5 86,34 CLR @DATA Initialize READ/DATA pointer <0041> 63B7 BF,6E,09 DST VRAMVS,@VSPTR Initialize base of value stac 63BA 58 <0042> 63BB BD,24,6E DST @VSPTR,@STVSPT Save in permanent base <0043> 63BE BD,A3,88 DST @VSPTR,V@SAVEVP 63C1 6E <0044> 63C2 06,68,C3 CALL INITPG Initialize program & s.t. <0045> 63C5 06,A0,18 CALL INTRND Initialize random number <0046> 63C8 8E,A3,71 CZ V@LODFLG <0047> 63CB 63,D3 BS TOPL02 If need auto-boot <0048> * RXB PATCH CODE ************* <0049> * CLR V@LODFLG Won't ever need to do again <0050> 63CD 43,D0 BR G63D0 <0051> * RXB PATCH CODE ****************************************** <0052> AORG >03D0 99/4 GPL-ASSEMBLER (Pass 3) correct PAGE 0015 EDIT-359 <0053> 63D0 06,64,8E G63D0 CALL AUTOLD Attempt an auto-boot <0054> * Label TOPL02 is used by auto-boot in detection of err <0055> 63D3 ERRRDY EQU $ <0056> 63D3 06,6A,84 TOPL02 CALL G6A84 Say READY <0057> 63D6 00 BYTE 0 * returns to TOPL15 <0058> 63D7 06,68,C3 TOPL05 CALL INITPG Initialize program space <0059> 63DA 06,68,DC TOPL10 CALL KILSYM Kill the symbol table <0060> * RXB PATCH CODE ************* <0061> * TOPL15 AND >F7,@FLAG If error in UDF execution <0062> 63DD 05,7E,49 TOPL15 B MYSRCH <0063> 63E0 BE,74,05 G63E0 ST 5,@KEYBD Select full keyboard <0064> 63E3 03 SCAN <0065> 63E4 86,74 CLR @KEYBD <0066> 63E6 BE,73,88 TOPL20 ST RSTK,@SUBSTK Initialize subroutine stack <0067> 63E9 BF,20,02 TOPL25 DST NLNADD,@VARW Screen addr = lower left corn 63EC E2 <0068> 63ED 86,80,89 CLR @RAMFLG Clear the RAMFLG <0069> 63F0 86,44 CLR @PRGFLG Make sure not in program mode <0070> * Check for auto-num mode <0071> 63F2 DA,45,01 CLOG >01,@FLAG If auto-num on <0072> 63F5 64,1E BS TOPL35 <0073> 63F7 A1,14,0E DADD @CURINC,@CURLIN Generate new line number <0074> 63FA D2,14,00 CGE 0,@CURLIN >32767? <0075> 63FD 64,05 BS TOPL30 <0076> 63FF B2,45,FE AND >FE,@FLAG If out of range->exit auto-nu <0077> 6402 05,64,1E B TOPL35 Merge in below <0078> * Must be a long branch!! <0079> 6405 D5,30,32 TOPL30 DCEQ @ENLN,@STLN Line might exist <0080> 6408 64,12 BS G6412 <0081> 640A BD,4A,14 DST @CURLIN,@FAC Ready for program search <0082> 640D 0F,7E XML SPEED <0083> 640F 03 BYTE SEETWO * Search for existence of line <0084> 6410 65,1D BS EDTZ05 COND set = line found <0085> 6412 0F,83 G6412 XML SCROLL Scroll to the next line <0086> 6414 BD,5E,14 DST @CURLIN,@ARG2 New line # <0087> 6417 06,6F,BA CALL DISO Display the line number <0088> 641A 91,20 DINC @VARW Following by a space <0089> 641C 44,20 BR G6420 <0090> 641E 0F,83 TOPL35 XML SCROLL Scroll the screen <0091> 6420 BE,A2,E1 G6420 ST >9E,V@NLNADD-1 Display the prompt character 6423 9E <0092> 6424 06,6A,76 CALL G6A76 Read in a line <0093> 6427 06,D0,AF CALL SAVLIN Save input line for recall <0094> * Crunch the input line <0095> 642A 86,22 CLR @ERRCOD Assume no-error return <0096> 642C BF,0A,08 DST CRNBUF,@RAMPTR Initialize crunch pointer 642F 20 <0097> 6430 0F,7F XML CRUNCH CRUNCH the input line <0098> 6432 00 BYTE 0 * Normal crunch mode <0099> 6433 8A,23 TOPL42 CASE @ERRCOD+1 <0100> 6435 44,45 BR TOPL45 No error detected <0101> 6437 49,7C BR ERRSYN *SYNTAX ERROR <0102> 6439 49,90 BR ERRBLN *BAD LINE NUMBER <0103> 643B 49,94 BR ERRLTL *LINE TOO LONG <0104> 643D 49,86 BR ERRNTL *NAME TOO LONG <0105> 643F 49,80 BR ERRNQS *UNMATCHED QUOTES <0106> 6441 49,9A BR ERRCIP *COMMAND ILLEGAL IN PROGRAM <0107> 6443 49,A4 BR ERRIVN *UNRECOGNIZED CHARACTER <0108> 6445 8F,4A TOPL45 DCZ @FAC Line # present <0109> 6447 64,62 BS TOPL55 <0110> 6449 DA,45,01 CLOG >01,@FLAG Not AUTONUM <0111> 644C 44,5B BR G645B <0112> 644E D6,75,0D CEQ >0D,@RKEY Must be up or down <0113> 6451 64,5B BS G645B 99/4 GPL-ASSEMBLER (Pass 3) correct PAGE 0016 EDIT-359 <0114> 6453 D6,42,01 CEQ >01,@CHAT Start EDIT mode <0115> 6456 44,5B BR G645B <0116> 6458 05,D0,00 B EDTZZ0 <0117> 645B 06,66,CF G645B CALL EDITLN EDIT the line into the progra <0118> 645E 63,E9 BS TOPL25 If didn't change the line <0119> 6460 43,DA BR TOPL10 <0120> * Jump always <0121> 6462 D6,42,01 TOPL55 CEQ >01,@CHAT If blank line - ignore <0122> 6465 63,E9 BS TOPL25 <0123> 6467 D6,A8,20 CEQ >EB,V@CRNBUF 646A EB <0124> 646B 65,C9 BS SZSIZE <0125> 646D C6,A8,20 CH >08,V@CRNBUF If imperative 6470 08 <0126> * GKXB Branch code for new commands DEL, COPY, and MOVE. <0127> 6471 77,59 BS NEWCMD Go here to test for new <0128> * keywords <0129> 6473 BF,2C,08 DST CRNBUF+1,@PGMPTR Anticipate usage of PGMCHR 6476 21 <0130> 6477 0F,79 XML PGMCHR Prepare CHAT for OLD and SAVE <0131> 6479 8A,A8,20 CASE V@CRNBUF Select the keyword <0132> 647C 43,A5 BR SZNEW NEW 0 <0133> 647E 45,20 BR SZCONT CONTINUE 1 <0134> 6480 45,BE BR SZLIST LIST 2 <0135> 6482 45,BA BR SZBYE BYE 3 <0136> 6484 45,60 BR SZNUM NUMBER 4 <0137> 6486 45,B7 BR SZOLD OLD 5 <0138> 6488 46,25 BR SZRES RESEQUENCE 6 <0139> 648A 45,AF BR SZSAVE SAVE 7 <0140> 648C 45,C6 BR SZMERG MERGE 8 <0141> * AUTO-BOOT - attempt a ----> RUN "DSK1.LOAD" <0142> 648E 31,00,0B AUTOLD MOVE 11,G@DSCLOD,V@CRNBUF 6491 A8,20,63 6494 51 <0143> 6495 BF,2C,08 DST CRNBUF,@PGMPTR DSK1.LOAD is in crunch buffer 6498 20 <0144> * RXB PATCH CODE ************* <0145> * BR SZRUNL Go to the RUN "NAME" CODE <0146> 6499 5A,97 BR MYRUN Take out these and you have a plain out of the Box XB. Of course you lose the RXB Menu and that does not put the REDO back in. I type in programs with a Text Editor in TI Writer (FW) or Classic99 then use my RXB CALL USER to make programs instead. (Faster and I can see the more of the code in 40/80 columns) Quote Link to comment Share on other sites More sharing options...
RXB Posted July 6, 2014 Share Posted July 6, 2014 Rich, could the solution be something as simple as adding an option to the TI start Menu? 1 TI BASIC 2 RXB With MENU 3 RXB Without MENU Then everyone would be happy--and more people would play with the goodness that is RXB. Sorry not enough room left in RXB for this even if I eliminate the Menu it does not give enough space left for both at same time. I include the Source Code and all tools so anyone that wants to modify it for themselves is perfectly free to do so but do not distribute a broken version please. Quote Link to comment Share on other sites More sharing options...
RXB Posted July 6, 2014 Share Posted July 6, 2014 Same behaviour with this new one - indeed I didn't do anything with the original rpk I had, other than downloading it from whtech . Here's a program: Type SIZE: Then type LIST: Hey send me a private message with this code it may have something in it causing this. I will take a look to figure it out. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.