Gazoo Posted July 2, 2014 Share Posted July 2, 2014 I have an original TI Extended Basic Cartridge. I want to disable the Rom on it, leaving the Grom working. Never mind why, I'll tell you later. Ok, since you asked I'll give you a hint. It involves a Widget that selects #1 & #2 cartridges at the same time. Tell me how to do it. Gazoo Quote Link to comment Share on other sites More sharing options...
RXB Posted July 2, 2014 Share Posted July 2, 2014 Sorry buddy you will hit a wall there. Many of the lines of code in XB use XML in XB. [0132] * Equates for XMLs [0133] 0000 SYNCHK EQU >00 SYNCHK XML selector [0134] 0001 FILSPC EQU >01 Fill-space utility [0135] 0001 PARCOM EQU >01 PARse to a COMma selector [0136] 0002 CSTRIN EQU >02 Copy-string utility [0137] 0002 RANGE EQU >02 RANGE selector [0138] 0003 SEETWO EQU >03 SEETWO XML selector [0139] 0006 FADD EQU >06 Floating ADD [0140] 0008 FMUL EQU >08 Floating MULtiply [0141] 0009 FDIV EQU >09 Floating DIVide [0142] 000A FCOMP EQU >0A Floating COMPare [0143] 000B SADD EQU >0B Stack ADD [0144] 000C SSUB EQU >0C Stack SUBtract [0145] 0010 CSNUM EQU >10 Convert String to Number [0146] 0012 CFI EQU >12 Convert to two byte integer [0147] 0012 FLTINT EQU >12 Convert floating to integer [0148] 0020 ALSUP EQU >20 XML to user AssembLy SUBrouti [0149] 0070 COMPCT EQU >70 PREFORM A GARBAGE COLLECTION [0150] 0071 GETSTR EQU >71 SYSTEM GET STRING [0151] 0072 MEMCHK EQU >72 MEMORY check routine: VDP [0152] 0073 XCNS EQU >73 Convert number to string [0153] * Warning Defualt changed in >0159 [0154] 0074 PARSE EQU >74 Parse a value [0155] 0075 CONT EQU >75 Continue parsing [0156] 0076 EXECG EQU >76 Execute a XB stmt or program [0157] 0077 VPUSH EQU >77 Push on value stack [0158] 0078 VPOP EQU >78 Pop off value stack [0159] 0079 PGMCHR EQU >79 GET PROGRAM CHARACTER [0160] 007A SYM EQU >7A Find SYMBOL entry [0161] 007B SMB EQU >7B Find symbol table entry [0162] 007C ASSGNV EQU >7C Assign VARIABLE [0163] 007D SCHSYM EQU >7D Search symbol table [0164] 007E SPEED EQU >7E SPEED UP XML [0165] 007F CRUNCH EQU >7F Crunch an input line [0166] 0080 CIF EQU >80 Convert INTEGER to FLOATING P [0167] 0082 RTNB EQU >82 Return [0168] 0083 SCROLL EQU >83 SCROLL THE SCREEN [0169] 0084 IO EQU >84 IO utility (KW table search) [0170] 0085 GREAD EQU >85 READ DATA FROM ERAM [0171] 0086 GWRITE EQU >86 WRITE DATA TO ERAM [0172] 0087 DELREP EQU >87 REMOVE CONTENT FROM VDP/ERAM [0173] 0088 MVDN EQU >88 MOVE DATA IN VDP/ERAM [0174] 0089 MVUP EQU >89 MOVE DATA IN VDP/ERAM [0175] 008A VGWITE EQU >8A MOVE DATA FROM VDP TO ERAM [0176] 008B GVWITE EQU >8B WRITE DATA FROM GRAM TO VRAM [0177] 008C GREAD1 EQU >8C READ DATA FROM ERAM [0178] 008E GDTECT EQU >8E ERAM DETECT&ROM PAGE 1 ENABLE [0179] 008F SCNSMT EQU >8F SCAN STATEMENT FOR PRESCAN [0180] *********************************************************** Most of these are for fetching values (SYM, SCHSYM, PGMCHR, RANGE) from XB in commands like CALL HCHAR(19,22,65,10) You see this is the main reason for XB being so much faster then BASIC. People do not remember that XB has 12K of ROM to speed up XB unlike BASIC. XML like SPEED and SMB and GREAD1 and SCROLL and ASSGNV and PARSE and CONT and EXECG are there. Quote Link to comment Share on other sites More sharing options...
RXB Posted July 2, 2014 Share Posted July 2, 2014 Here is a small example of the routines I use as subroutines for RXB, but they are just shorter versions in normal XB that I borrow. <0001> *********************************************************** <0002> * RXB <0003> ******************************************************* <0004> * AMS BRANCH TABLE FOR AMS ROUTINES * FIXED * <0005> D0F4 52,46 BR AMSMAP * AT * <0006> D0F6 52,61 BR AMSPAS * >D0F4 * <0007> D0F8 52,7B BR AMSOFF * PERMANENTLY * <0008> D0FA 52,94 BR AMSON * ADD TO THE * <0009> D0FC 52,D6 BR SISRON * TABLE IF * <0010> D0FE 53,11 BR SISROF * NEEDED. * <0011> ******************************************************* <0012> D100 D6,42,B7 GLPARZ CEQ LPARZ,@CHAT <0013> D103 45,33 BR ERRSYN <0014> D105 00 RTN <0015> D106 0F,79 STRFCH XML PGMCHR <0016> D108 0F,74 XML PARSE <0017> D10A B6 BYTE >B6 <0018> D10B 00 RTN <0019> D10C 06,D1,06 STRGET CALL STRFCH <0020> D10F D6,4C,65 CEQ >65,@FAC2 <0021> D112 45,43 BR ERRSNM * STRING NUM MISMATCH <0022> D114 00 RTN <0023> D115 06,D1,06 NUMFCH CALL STRFCH <0024> D118 D6,4C,65 CEQ >65,@FAC2 <0025> D11B 65,43 BS ERRSNM * STRING NUM MISMATCH <0026> D11D 00 RTN <0027> D11E 0F,12 CFIFCH XML CFI <0028> D120 D6,54,03 CEQ >03,@FAC+10 <0029> D123 65,A2 BS ERRBV * NUMERIC OVERFLOW <0030> D125 00 RTN <0031> D126 06,D1,56 GETNUM CALL SUBLP3 <0032> D129 D6,42,B3 CEQ >B3,@CHAT <0033> D12C 45,33 BR ERRSYN <0034> D12E 00 RTN <0035> D12F 0F,79 NGOOD XML PGMCHR <0036> D131 D6,42,80 CEQ >80,@CHAT <0037> D134 65,33 BS ERRSYN * ? <0038> D136 06,D1,4A CALL SNDER <0039> D139 D6,4C,65 CEQ >65,@FAC2 <0040> D13C 45,9A BR ERRBA * BAD ARGUMENT <0041> D13E BF,4A,00 DST >001C,@FAC D141 1C <0042> D142 BD,4E,1C DST @SREF,@FAC4 99/4 GPL-ASSEMBLER (Pass 3) correct PAGE 0048 EQUATES ALCS-359 <0043> D145 BD,50,0C DST @BYTES,@FAC6 <0044> D148 51,53 BR SNDASS <0045> D14A 0F,7A SNDER XML SYM <0046> D14C 0F,7B XML SMB <0047> D14E 0F,77 XML VPUSH <0048> D150 00 RTN <0049> D151 0F,80 CIFSND XML CIF <0050> D153 0F,7C SNDASS XML ASSGNV <0051> D155 00 RTN <0052> D156 06,D1,15 SUBLP3 CALL NUMFCH <0053> D159 06,D1,1E CALL CFIFCH <0054> D15C 00 RTN <0055> D15D 44,53,4B DSKSUB TEXT 'DSK#.' D160 23,2E <0056> D162 0F,79 DEVNAM XML PGMCHR Advance program pointer <0057> D164 0F,74 XML PARSE Parse to ')' <0058> D166 B6 BYTE RPARZ <0059> D167 D6,4C,65 CEQ >65,@FAC2 Do we have a string? <0060> D16A 71,9B BS DEV1 YES, normal execution <0061> D16C 0F,12 XML CFI Convert FAC to integer <0062> D16E D6,54,03 CEQ >03,@FAC10 OK? <0063> D171 65,A2 BS ERRBV No. <0064> D173 CA,4B,1E CHE 30,@FAC1 ASCII? <0065> D176 71,80 BS DEVASC Yes. <0066> D178 CA,4B,0A CHE 10,@FAC1 Higher then 9? <0067> D17B 65,A2 BS ERRBV No, error <0068> D17D A2,4B,30 ADD 48,@FAC1 Make it ASCII. <0069> D180 BC,54,4B DEVASC ST @FAC1,@TEMP1 Save the number <0070> D183 BF,0C,00 DEV0 DST 5,@BYTES Set up for a string D186 05 <0071> D187 0F,71 XML GETSTR Get string space <0072> D189 31,00,05 MOVE 5,G@DSKSUB,V*SREF Save the string D18C B0,1C,D1 D18F 5D <0073> D190 BC,E0,03 ST @TEMP1,V@3(@SREF) Store the number D193 1C,54 <0074> D195 BD,50,0C DST @BYTES,@FAC6 Copy string length. <0075> D198 BD,4E,1C DST @SREF,@FAC4 Copy string address. <0076> D19B 8F,50 DEV1 DCZ @FAC6 Is it a null string? <0077> D19D 65,9A BS ERRBA YES! Bad Argument <0078> D19F BC,54,B0 ST V*FAC4,@TEMP1 D1A2 4E <0079> D1A3 D6,51,01 CEQ 1,@FAC7 <0080> D1A6 71,83 BS DEV0 <0081> D1A8 00 RTN <0082> *********************************************************** Quote Link to comment Share on other sites More sharing options...
Gazoo Posted July 2, 2014 Author Share Posted July 2, 2014 (edited) Sorry buddy you will hit a wall there. Many of the lines of code in XB use XML in XB.are there. No, I didn't hit a wall. As you've done many times in the past, you are responding to a question that you don't understand. This has nothing to do with programming. It has to do with electronics. Grom and Rom are separate electronic devices. I want to disable the Rom in a real TI cartridge, a piece of hardware. I want the Grom in this real piece of hardware to keep functioning, as I'm going to provide the Rom access in a different way. If you don't understand the question, please don't respond with an answer that has nothing to do with the question. Thanks, Gazoo Edited July 2, 2014 by Gazoo Quote Link to comment Share on other sites More sharing options...
RXB Posted July 2, 2014 Share Posted July 2, 2014 I am so freaking sad that I lost the XB Assembly Language Source code for the ROMS!!! Quote Link to comment Share on other sites More sharing options...
marc.hull Posted July 2, 2014 Share Posted July 2, 2014 I have an original TI Extended Basic Cartridge. I want to disable the Rom on it, leaving the Grom working. Never mind why, I'll tell you later. Ok, since you asked I'll give you a hint. It involves a Widget that selects #1 & #2 cartridges at the same time. Tell me how to do it. Gazoo Pull the ROM ...... Perhaps you could keep the *cs line high with some pull ups attached with test clips but any value high enough not to burn up whatever is pulling it low may not be able to sustain a high signal. I guess you don't want to alter the board? Quote Link to comment Share on other sites More sharing options...
Gazoo Posted July 2, 2014 Author Share Posted July 2, 2014 (edited) I am so freaking sad that I lost the XB Assembly Language Source code for the ROMS!!! Have you ever asked anyone for it? Maybe someone has it. I might even have it somewhere if I felt the urge to look for it. Edited July 2, 2014 by Gazoo Quote Link to comment Share on other sites More sharing options...
Gazoo Posted July 2, 2014 Author Share Posted July 2, 2014 Pull the ROM ...... Perhaps you could keep the *cs line high with some pull ups attached with test clips but any value high enough not to burn up whatever is pulling it low may not be able to sustain a high signal. I guess you don't want to alter the board? Yea, not looking to hurt it. Maybe clip a lead on a chip near the pad that I can resolder or temporarily tack a resistor in place somewhere. I was also thinking of unsoldering the 2 Grom stacked chips and putting them on a Grom only cart board, but that's a lot of work. Thanks, Gazoo Quote Link to comment Share on other sites More sharing options...
+Vorticon Posted July 2, 2014 Share Posted July 2, 2014 No, I didn't hit a wall. As you've done many times in the past, you are responding to a question that you don't understand. This has nothing to do with programming. It has to do with electronics. Grom and Rom are separate electronic devices. I want to disable the Rom in a real TI cartridge, a piece of hardware. I want the Grom in this real piece of hardware to keep functioning, as I'm going to provide the Rom access in a different way. If you don't understand the question, please don't respond with an answer that has nothing to do with the question. Thanks, Gazoo I usually try to stay out of these squabbles, but you are being incredibly rude here. Perhaps Rich misunderstood you, but that is no excuse for ripping him apart like that, particularly since he was trying to help. What the hell is wrong with people... Quote Link to comment Share on other sites More sharing options...
Stuart Posted July 2, 2014 Share Posted July 2, 2014 Try a slither of insulating tape over the cartridge edge connector pin 34, which is the cartridge ROM /CS. Totally reversible if it doesn't work. 1 Quote Link to comment Share on other sites More sharing options...
Gazoo Posted July 2, 2014 Author Share Posted July 2, 2014 I usually try to stay out of these squabbles, but you are being incredibly rude here. Perhaps Rich misunderstood you, but that is no excuse for ripping him apart like that, particularly since he was trying to help. What the hell is wrong with people... I am truly sorry for offending you. I just think that people should pay attention to the subject at hand and not respond to something that has nothing to do with it. Rich is a repeat offender in this manner, I just wish he would pay a little more attention to the actual question asked. There's nothing wrong with me. I've tried to subtly make this point on numerous occasions. Sometimes you've got to pull out the big guns to make people wake up. Hopefully this will be the last comment I have to make on this matter. Sincerely. Gazoo Quote Link to comment Share on other sites More sharing options...
Gazoo Posted July 2, 2014 Author Share Posted July 2, 2014 Try a slither of insulating tape over the cartridge edge connector pin 34, which is the cartridge ROM /CS. Totally reversible if it doesn't work. Thanks, Stuart! Gazoo Quote Link to comment Share on other sites More sharing options...
+Ksarul Posted July 2, 2014 Share Posted July 2, 2014 Carefully clip the power lead on the ROM to isolate it and then solder a bridge across the gap once you are finished. That will involve the least work and makes sure the ROM won't respond while you're testing. Quote Link to comment Share on other sites More sharing options...
Gazoo Posted July 2, 2014 Author Share Posted July 2, 2014 Carefully clip the power lead on the ROM to isolate it and then solder a bridge across the gap once you are finished. That will involve the least work and makes sure the ROM won't respond while you're testing. Thank you sir, I thought that might be one alternative. Gazoo Quote Link to comment Share on other sites More sharing options...
marc.hull Posted July 2, 2014 Share Posted July 2, 2014 Try a slither of insulating tape over the cartridge edge connector pin 34, which is the cartridge ROM /CS. Totally reversible if it doesn't work. Now that's a smart idea.. If it floats then tie the /cs pin to 5v and that should work like a charm. Your brilliant Stu.... Quote Link to comment Share on other sites More sharing options...
RXB Posted July 3, 2014 Share Posted July 3, 2014 No, I didn't hit a wall. As you've done many times in the past, you are responding to a question that you don't understand. This has nothing to do with programming. It has to do with electronics. Grom and Rom are separate electronic devices. I want to disable the Rom in a real TI cartridge, a piece of hardware. I want the Grom in this real piece of hardware to keep functioning, as I'm going to provide the Rom access in a different way. If you don't understand the question, please don't respond with an answer that has nothing to do with the question. Thanks, Gazoo I did respond. XB WILL NO LONGER WORK AS THE XML IS IN GROM AS TO ADDRESS IT NEEDS TO FUNCTION AT ALL! Only very little of XB will continue to function. You want proof fire up Classic99 and put a EA ROM in place of XB ROMs and watch what happens. NOTHING! If you think you know more about the XB source code then ok, but I think I have a clue as to what I am talking about on this subject. If you want help say so and I will help you, but do not attack me for telling you what will happen without a re-write of the GROMs to pull this off. Quote Link to comment Share on other sites More sharing options...
RXB Posted July 3, 2014 Share Posted July 3, 2014 Have you ever asked anyone for it? Maybe someone has it. I might even have it somewhere if I felt the urge to look for it. Yes I have asked many many times. Quote Link to comment Share on other sites More sharing options...
RXB Posted July 3, 2014 Share Posted July 3, 2014 By the way this is easy to do. Take the RXB ROM OBJECT CODE as only 2 BYTES are different then normal XB and disassemble them with DISKASSEMBLER. I am including the OBJECT files for ROM 1 and ROM 2 Just use DISKASSEMBLER and you are set. Rich RXB ROMS.zip Quote Link to comment Share on other sites More sharing options...
Gazoo Posted July 3, 2014 Author Share Posted July 3, 2014 (edited) I did respond. XB WILL NO LONGER WORK AS THE XML IS IN GROM AS TO ADDRESS IT NEEDS TO FUNCTION AT ALL! Only very little of XB will continue to function. You want proof fire up Classic99 and put a EA ROM in place of XB ROMs and watch what happens. NOTHING! If you think you know more about the XB source code then ok, but I think I have a clue as to what I am talking about on this subject. If you want help say so and I will help you, but do not attack me for telling you what will happen without a re-write of the GROMs to pull this off. Please come in from left field. The subject has nothing to do with what you are talking about. Look at the other replies and try to get on topic. Thanks, Rich! Gazoo Edited July 3, 2014 by Gazoo Quote Link to comment Share on other sites More sharing options...
RXB Posted July 3, 2014 Share Posted July 3, 2014 As I am not a Hardware guy are you going to continue to provide a >6000 Address for the XB ROMS in both Hardware? As you can do this little trick with a Cart in Slot and PGRAM by a jumper an software mod that Don O'Neil showed me one time. The ROMs in the Cart are used even when only the GROM is in the PGRAM. Quote Link to comment Share on other sites More sharing options...
+InsaneMultitasker Posted July 3, 2014 Share Posted July 3, 2014 Have you ever asked anyone for it? Maybe someone has it. I might even have it somewhere if I felt the urge to look for it. Oh, don't tease us like that!!!! Quote Link to comment Share on other sites More sharing options...
marc.hull Posted July 3, 2014 Share Posted July 3, 2014 As I am not a Hardware guy are you going to continue to provide a >6000 Address for the XB ROMS in both Hardware? As you can do this little trick with a Cart in Slot and PGRAM by a jumper an software mod that Don O'Neil showed me one time. The ROMs in the Cart are used even when only the GROM is in the PGRAM. Unless the Rome are disabled. Ok spill the beans Tony. What is the Rock cooking up tonight ..... Quote Link to comment Share on other sites More sharing options...
Gazoo Posted July 3, 2014 Author Share Posted July 3, 2014 Oh, don't tease us like that!!!! Yea, I've found a couple of floppies recently labeled XB rom source code, but haven' tried to read 'em yet. Too many actually important irons in the fire! Go away, pest! Gazoo Quote Link to comment Share on other sites More sharing options...
Gazoo Posted July 3, 2014 Author Share Posted July 3, 2014 Unless the Rome are disabled. Ok spill the beans Tony. What is the Rock cooking up tonight ..... Tomorrow. XB cart and 512k Rom cart plugged into a modified widget that has slots 1 & 2 connected together. I did this a while back for a member if the TI Philly users group, Whit Bauer, that wanted the EA cartridge to work with Myarc Extended Basic. Both carts plugged into the widget for a simulated supercart that worked with his Myarc Ramdisk. Same concept, checking 512k Rom cart stability. I desperately want this new cart thing to work, so I'm trying out every possibility. I even ordered a new burner today to try and burn these incredibly flakey 1284p chips that are in this new cart. Even though I don't have the money to spend on it. Your friend. Gazoo Quote Link to comment Share on other sites More sharing options...
+Ksarul Posted July 3, 2014 Share Posted July 3, 2014 I think he's trying to get an alternate version of the ROMs to run with the XB GROMs, but that requires that the original ROMs are disabled. Since he's going to be providing an alternative to the disabled ROMs, that eliminates your legitimate programming issue, Rich. But as the real issue was to disable the ROMs so that he could perform the test, the programming issue is actually moot. Please look at those purported XB source disks, Gazoo! You have my curiosity piqued too! 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.