Subject: Re: [swpb] Re: [TI-99/4A] GPL Assembly process (was: Multiple Personality Distorter)

From: Jeffrey White <[email-masked]>
Date: Thu, 21 Apr 2011 15:54:48 -0700 (PDT)

Bill,

Don't give up so soon.  ROM wasn't built in a day.  (OK, bad pun.)  Is MSAVE or 
MSAVE6 out in the ether as a GROM-file?  Rich is a GPL expert, and Thierry may 
chime in at some point.  Tursi could surely figure out what MSAVE is doing 
wrong.

I have been holding out a little hope for you.  The GRAM Card DSR has CALL 
MODULE("MYNAME") which will save a TI BASIC program to G>6000-9FFF and add it to 
the menu.  However, the module only works at GROM base >9800 according to the 
manual.  The problem with this is that EA and MM occupy G>6000, which makes it 
hard to test with INIT, LOAD, etc. unless they are relocated.  However, the GRAM 
Card can load EA at GROM base >9820 (each GRAM Card has two available GROM 
bases, and multiple cards can occupy a P-box).

So we have MSAVE that puts the TI BASIC program in GROM 7, which is at most 8K.  
MSAVE6 puts the TI BASIC program in GROM 3.  CALL MODULE puts the TI BASIC 
program in GROM 3 and 4.

I have a GRAM Card somewhere -- either Indianapolis or Louisville.  When I moved 
to Indianapolis nearly 17 years ago, I brought my Geneve and CC9900 
microexpansion systems with me and stored everything else at my mother's house.  
Being Easter weekend and all, maybe I will visit my mother if I cannot find the 
GRAM card or flexcable interface here.

Does anybody else have a Mechatronics GRAM Card that can try the CALL MODULE 
routine?

Jeff White

----- Original Message ----
From: fdos <[email-masked]>
To: [email-masked]; [email-masked]
Sent: Thu, April 21, 2011 11:38:46 AM
Subject: [swpb] Re: [TI-99/4A] GPL Assembly process (was: Multiple Personality 
Distorter)

Guys,

I have very bad news to report, and after such hard debate and work has 
been done on my behalf.  Rich Gilbertson provided a modified TI BASIC 
and Tony Knerr converted it to GK format, so I could simply load it in 
and test it thoroughly.  A bug in INIT was already found, but easily 
bypassed.

In any case, my TI BASIC+ setup program fails at line 120 (contains CALL 
INIT), and Jeff White's test program fails at line 40, so not even 
CHARPAT works from a running MSAVEd TI BASIC program.

It seems that Tursi was right from early on that the culprit here is 
MSAVE/MSAVE6.  I suspect they have their own search mechanism that 
searches MSAVE/MSAV6, TI BASIC up to the last known CALL, and then the 
DSRs.  I have also found a bug in CALL LINK(), but probably of no 
consequence.

Obviously, both my TI BASIC+ setup and Jeff's test programs work well 
from VDP, except for LINK.  This is very disappointing after years of 
trying to find a solution.  Unless there is a way to fix MSAVE/MSAVE6 
this is a hopeless project.  I'm very sorry for having put all of you 
through this fruitless effort, but now I can dedicate my hobby time to 
TurboForth enhancements.  Which should make Mark happy.  Unless I have 
to bug him too much.

Bill S

On 4/20/2011 11:32 PM, fdos wrote:
> Rich,
>
> That will be great. Impatiently waiting.............
>
> Bill S
>
> On 4/20/2011 4:23 PM, [email-masked] wrote:
>> Bill
>>
>> I am chasing down a but in the EA Cart in Basic and when I get it fixed I will 
>>post the whole thing.
>> Maybe even now that I have CSAVE the GRAM file also.
>>
>> P.S. Thanks to Tyler for the help.
>>
>> Rich
>>
>>
>>
>> ----- Original Message -----
>> From: "fdos"<[email-masked]>
>> To: [email-masked]
>> Sent: Wednesday, April 20, 2011 3:54:18 PM
>> Subject: [TI-99/4A] GPL Assembly process (was: Multiple Personality 
Distorter)
>>
>> Hi Rich,
>>
>> Well I arranged everything as you've outlined and put everything on
>> DSK1. The process proceeded just like in the video, and a DSK1.OINIT
>> file along with a DSK!.LINIT file were produced.
>>
>> The GPL loader did it's thing and said it was successful! However, no
>> TI BASIC is available on the TI selection menu--just the EA cart. I'm
>> guessing the SBASIC file is included in the GPL assembly process to
>> create a TI BASIC from scratch followed by the SINIT file to add the EA
>> CALLs? If this is not the case then I should load an unmodified TI
>> BASIC into Gram 1-2 before starting the GPL assembler, so that the SINIT
>> can link to the BASIC code.
>>
>> I tried saving the GRAM 1-2 to DSK1.BASICEA1&  BASICEA2, so I could use
>> JJ's BOOT MENU program to load it correctly--to no avail. I did load
>> GRAM 1-2 with my previously saved TI BASIC using BOOT MENU and then ran
>> the GPL loader. I now had a TI BASIC to select. Unfortunately, it
>> locked up immediately after selection. It did look like TI BASIC, but
>> no cursor and I could see a little bit of screen garbage.
>>
>> Any ideas as to how to proceed from here? Can you send me a copy of
>> your OINIT file?
>>
>> Bill S
>>
>> On 4/18/2011 3:51 PM, [email-masked] wrote:
>>> Bill
>>>
>>> Put entire download on disk 1
>>>
>>>>    From Editor Assembler press 2
>>> Type: DSK1.ASSM1
>>> (If using REA then press 1)
>>> SOURCE FILE: DSK1.SINIT
>>> OBJECT FILE: DSK1OINIT
>>> LIST FILE : DSK1.LINIT
>>> OPTIONS: LCSFPF
>>> (Now press Enter key)
>>>
>>> when it is done press Enter then again press Enter
>>>
>>> Go to Editor Assembler 5 and type: DSK1.GPL*LOADER
>>> (Press Enter)
>>>>    From the GPL*LOADER screen type: DSK1.OINIT
>>> (Make sure write protect is off on the GRAMKRAKER or GRAMULATOR)
>>> Press Enter
>>> Then go to TI BASIC it should work.
>>>
>>>
>>> Rich
>>>
>>>
>>>
>>> ----- Original Message -----
>>> From: "fdos"<[email-masked]>
>>> To: [email-masked]
>>> Sent: Monday, April 18, 2011 3:40:34 PM
>>> Subject: Re: [TI-99/4A] Multiple Personality Distorter
>>>
>>> Rich,
>>>
>>> I'm not making myself clear. If I use the E/A loader to load the GPL
>>> ASSM files I do not get the input screen as you do in the video. I only
>>> get the part after the GPL assembler is running, but I've not had an
>>> opportunity to input the source file name or object flie name or the
>>> list file name or the options. I never see that screen.
>>>
>>> If you can just tell me how to start the GPL assembler (as what I'm
>>> doing can't be right) I should be in business.
>>>
>>> Bill S
>>>
>>> On 4/18/2011 3:10 PM, [email-masked] wrote:
>>>>
>>>> Bill
>>>>
>>>> Yes it is exactly like the Editor Assembler but does GPL only.
>>>>
>>>> Options for the GPL*LOADER are
>>>> LCSFPF
>>>>
>>>> List
>>>> Compressed
>>>> Symbols F=16 tables if needed.
>>>> Passes F=16 if needed to resolve references or symbols.
>>>>
>>>> If you are having problems with loading the GRAMKRAKER then you have to make 
>>>>sure you
>>>> do not have the write protect on, you get a red screen from GPL*LOADER if it 
>>>>crashes.
>>>>
>>>> This should work fine now.
>>>>
>>>> Rich
>>>>
>>>>
>>>> ----- Original Message -----
>>>> From: "fdos"<[email-masked]>
>>>> To: [email-masked]
>>>> Sent: Monday, April 18, 2011 2:52:33 PM
>>>> Subject: Re: [TI-99/4A] Multiple Personality Distorter
>>>>
>>>> Yes, this is true, but when I load the ASSM files the screen
>>>> presentation is not what I see in the video. I get a GPL loader (pass 0
>>>> OK) and then a (pass 1 error) every time, and it's a fatal error.
>>>> Finally a "any key to continue" that just takes me back to the EA
>>>> loader. I have no clue as to what file it might be assembling as there
>>>> is no indication.
>>>>
>>>> So how do I load&  use the GPL Assembler as it appears in the video? It
>>>> looks much like the normal EA assembler which I do use frequently. The
>>>> only real difference seems to be the options, which are many on the
>>>> screen display in the video.
>>>>
>>>> Bill S
>>>>
>>>> On 4/18/2011 2:32 PM, [email-masked] wrote:
>>>>> Bill
>>>>>
>>>>> http://www.atariage.com/forums/topic/180471-gplhow2/
>>>>>
>>>>> The video and attachment source code are there.
>>>>>
>>>>> Rich
>>>>>
>>>>>
>>>>>
>>>>> ----- Original Message -----
>>>>> From: "fdos"<[email-masked]>
>>>>> To: [email-masked]
>>>>> Sent: Monday, April 18, 2011 8:19:47 AM
>>>>> Subject: Re: [TI-99/4A] Multiple Personality Distorter
>>>>>
>>>>> Rich,
>>>>>
>>>>> Great News! You made my day for sure as long as you didn't leave out
>>>>> CALL LINK(). From where do I download this puppy? I can't wait to get
>>>>> my hands on it.
>>>>>
>>>>> Bill S
>>>>>
>>>>> On 4/18/2011 3:14 AM, [email-masked] wrote:
>>>>>> Hello have a beta here.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> GPLHOW2D
>>>>>> TI BASIC EDITOR ASSEMBER support built into TI BASIC GROMS 1 and 2.
>>>>>> CALL INIT, CALL LOAD, CALL CHARPAT, CALL PEEK, CALL PEEKV,
>>>>>> CALL POKEV.
>>>>>>
>>>>>>
>>>>>> YouTube - GPLHOW2D.mov
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> http://www.youtube.com/watch?v=ykQVkFzEaXc
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Let me know if you find any problems.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Rich
>>>>>>
>>>>>>
>>>>>>
>>>>>> ----- Original Message -----
>>>>>> From: "fdos"<[email-masked]>
>>>>>> To: [email-masked]
>>>>>> Sent: Saturday, April 16, 2011 7:49:47 AM
>>>>>> Subject: Re: [TI-99/4A] Multiple Personality Distorter
>>>>>>
>>>>>> Hi Rich,
>>>>>>
>>>>>> Hmmm........ See below:
>>>>>>
>>>>>> On 4/15/2011 4:14 PM, [email-masked] wrote:
>>>>>>> Hello
>>>>>>>
>>>>>>> I will be working on the TI BASIC after I finish all the GPLHOW2 Videos and 
>>>>>>>packages.
>>>>>>> I am just released GPLHOW2B and will go to work on TI BASIC after 
>GPLHOW2E
>>>>>> OK.
>>>>>>>
>>>>>>> TI BASIC area>2000 to>3FFF
>>>>>>> 1. Add EA Cart calls including INIT, LOAD, LINK, CHARPAT
>>>>>> Exactly what I need.
>>>>>>>
>>>>>>> 2. Work on the Basic Support Module/EA/RPK/Speech and add AMS 
CONTROLLER.
>>>>>>> (This will be a single cartridge and have everything you can think of for TI 
>>>>>>>BASIC calls.)
>>>>>> Another BASIC with EA? Will it be as powerful as Super Extended Basic
>>>>>> with EA? Which is what I use frequently.
>>>>>>>
>>>>>>> I do not believe there is enough space for all of it. INIT alone will take 80% 
>>>>>>>of most of it.
>>>>>>> To cram all that into the left over TI Basic memory,
>>>>>>> My cut down version of INIT will take less space, but it will be very 
>>>tight.
>>>>>>> I think the best solution is a cart that has everything possible.
>>>>>> Hmmm... If needed can't you use the unused 2K of the OPSYS (6K on 8K
>>>>>> boundary) also? That would provide a total of 6K, and the entire E/A
>>>>>> module is in a 6K GROM. My primary purpose is to free up the entire
>>>>>> module space, so I can load 40K of TI BASIC programs there using MSAVE6,
>>>>>> and be able to load AL support code in the 30K of expansion memory using
>>>>>> the available E/A CALLS.
>>>>>>>
>>>>>>> Pretty much the same as RXB, everything in one package. But a BASIC 
>>>version.
>>>>>> Wouldn't RXB with EA be much better? I know I would prefer to use SEB
>>>>>> with EA in this case.
>>>>>>>
>>>>>>> Rich
>>>>>>>
>>>>>>>
>>>>>>> ----- Original Message -----
>>>>>>> From: "mark wills"<[email-masked]>
>>>>>>> To: [email-masked]
>>>>>>> Sent: Friday, April 15, 2011 2:06:46 AM
>>>>>>> Subject: Re: [TI-99/4A] Multiple Personality Distorter
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Rich is *THE MAN* when it comes to GPL! He'll do it!
>>>>>>>
>>>>>>> Rich has been blowing our brains out over at Atariage with his GPL 
stuff.
>>>>>>>
>>>>>>> He's possibly the last surviving (and best!) TI GPL Guru!
>>>>>>>
>>>>>>> Mark
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> From: "[email-masked]"<[email-masked]>
>>>>>>> To: [email-masked]
>>>>>>> Sent: Fri, 15 April, 2011 3:07:16
>>>>>>> Subject: Re: [TI-99/4A] Multiple Personality Distorter
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Bill
>>>>>>>
>>>>>>>
>>>>>>> Just show me what you want and I can do it.
>>>>>>> Do I understand the problem as you need TI BASIC to have the EA commands and 
>>>>>>>INIT loaded into the TI BASIC GROMs?
>>>>>>>
>>>>>>>
>>>>>>> If that is the case then that is not of a problem, I think I can make it 
>>>>fit.
>>>>>>>
>>>>>>>
>>>>>>> Rich
>>>>>>>
>>>>>>>
>>>>>>> ----- Original Message -----
>>>>>>> From: "fdos"<[email-masked]>
>>>>>>> To: [email-masked]
>>>>>>> Sent: Thursday, April 14, 2011 2:35:47 PM
>>>>>>> Subject: Re: [TI-99/4A] Multiple Personality Distorter
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Rich,
>>>>>>>
>>>>>>> Forth has always been my solution to programming on the Ti or Geneve,
>>>>>>> and it looks like, with the release of TurboForth 1.0 this coming
>>>>>>> Monday, it will be on the rise in this community as there appears to be
>>>>>>> lots of support for it; mostly the game programmers, but I expect that
>>>>>>> to expand rapidly once new furiously fast games become the norm here and
>>>>>>> at Atariage.
>>>>>>>
>>>>>>> Well if you read my two last posts to this thread you'll see that I
>>>>>>> haven't had much success just patching two words in TI BASIC, so cut&
>>>>>>> paste of any part of TI BASIC seems out of the question for me at the
>>>>>>> moment.
>>>>>>>
>>>>>>> I obviously need lots of help when it comes to AL and GPL.
>>>>>>>
>>>>>>> Bill S
>>>>>>>
>>>>>>> On 4/14/2011 2:08 PM, [email-masked] wrote:
>>>>>>>> Hello, Bill
>>>>>>>>
>>>>>>>> Yea I love Forth, to bad it just never caught on with the general public. C did 
>>>>>>>>and really it is a horrid language.
>>>>>>>> Why patching programs became popular today instead of fixing them. Actually I 
>>>>>>>>thought LISP should have been the winner.
>>>>>>>> LISP is like Forth with similar vocabulary and has something like libararies 
>>>>>>>>like C. And LISP is AI friendly.
>>>>>>>> I keep up with all the Science and Computer Science news and LISP and Forth may 
>>>>>>>>be making a huge comeback.
>>>>>>>>
>>>>>>>> Anyway I remember the trip to that Milwaukee fair. I am right now working on 
>>>>>>>>several different video of using the
>>>>>>>> GPL ASSEMbler and GPL Linker. I dug up my old GPL tutorials and will make video 
>>>>>>>>of it. Also my REA is now out there
>>>>>>>> and you can see BINIT and BINIT2 in the source code and it is a much better 
>>>>>>>>version of INIT for the EA Cart. Also
>>>>>>>> I cut down the size of the EA support for INIT by quite a bit which allowed me 
>>>>>>>>space to write the AMS CONTROLLER.
>>>>>>>> Just cut and paste my BINIT and you will have a better smaller version for your 
>>>>>>>>project.
>>>>>>>>
>>>>>>>> Rich
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> ----- Original Message -----
>>>>>>>> From: "fdos"<  [email-masked]>
>>>>>>>> To: [email-masked]
>>>>>>>> Sent: Wednesday, April 13, 2011 8:36:12 AM
>>>>>>>> Subject: Re: [TI-99/4A] Multiple Personality Distorter
>>>>>>>>
>>>>>>>> ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬ 
>>>>>>>>ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã¢â‚¬Â¦Ãƒâ€šÃ‚Â¡
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Hi Rich,
>>>>>>>>
>>>>>>>> How are you doing these days, and what are you up to? Last time we
>>>>>>>> chatted was on board Bud Mills' van headed to Milwaukee from Chicago.
>>>>>>>> You were talking about RXB and I was talking about Forth+. Not sure
>>>>>>>> either one of us understood the other. :-)
>>>>>>>>
>>>>>>>> Wow! That would be great. I was thinking last night about how to do
>>>>>>>> this, and wondered just what the process would be; GPL uhg! First I had
>>>>>>>> no idea what to do with Theirry's commented source code for all three
>>>>>>>> functions. Does it have to be assembled or compiled, and I know I don't
>>>>>>>> have a GPL assembler/compiler. The I thought maybe I just use my 80K GK
>>>>>>>> to move the code from the E/A module to the appropriate locations, but
>>>>>>>> how does it get linked or fixed up so it can be found and used by TI
>>>>>>>> BASIC? No clue.
>>>>>>>>
>>>>>>>> I will certainly appreciate any assistance you can provide in getting
>>>>>>>> this project done. This is only about the fourth time I've gone this
>>>>>>>> route in hopes of finding qualified help.
>>>>>>>>
>>>>>>>> Bill Sullivan
>>>>>>>>
>>>>>>>> On 4/13/2011 3:42 AM, [email-masked] wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I might have a hard copy of EA cart GPL code, will have to look.
>>>>>>>>> If I do then I could move that code to were you need it.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Rich
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> ----- Original Message -----
>>>>>>>>> From: "fdos"<  [email-masked]>
>>>>>>>>> To: [email-masked]
>>>>>>>>> Sent: Wednesday, April 13, 2011 3:32:36 AM
>>>>>>>>> Subject: Re: [TI-99/4A] Multiple Personality Distorter
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Obviously, I can't sleep thinking about this old problem child of 
mine,
>>>>>>>>> and thanks to Jeff White I don't have to take responsibility for
>>>>>>>>> re-posting my previous long rant on this subject. He also explained
>>>>>>>>> well what I understood about TI BASIC and XB CALLs being different, so
>>>>>>>>> would not conflict with each other.
>>>>>>>>>
>>>>>>>>> The only reason I used MSAVE versus MSAVE6 was the hope that my basic
>>>>>>>>> program in GRAN7 would be able to use the CALLs in the E/A module. The
>>>>>>>>> sub-programs in the E/A module are not found. Subsequently, I did
>>>>>>>>> discover that the Myarc equivalents; CALL ILR, CALL LR()&  CALL LLR()
>>>>>>>>> could be used in an MSAVEd program, but are not completely the same as
>>>>>>>>> the E/A versions, and would not work for my purpose.
>>>>>>>>>
>>>>>>>>> MSAVE6 allows full use of the module space for TI BASIC programs 
>(almost
>>>>>>>>> 40K), therefore no room for any module to be plugged in, so no 
conflict
>>>>>>>>> will be possible. I only plan to use three module banks for actual
>>>>>>>>> cartridges in my 16 module bank HSGPL card, and two in the 4 module 
>bank
>>>>>>>>> HSGPL card. The rest will be used for TI BASIC programs provided the
>>>>>>>>> real CALL INIT, CALL LOAD() and CALL LINK() are available to be called
>>>>>>>>> from the MSAVE6 TI BASIC programs.
>>>>>>>>>
>>>>>>>>> writing and MSAVEing TI BASIC programs is easier done in my 80K
>>>>>>>>> GranKracker than in the HSGPL systems. The GK saved module is easy to
>>>>>>>>> convert to HSGPL format.
>>>>>>>>>
>>>>>>>>> If I knew how to load and link the GPL code to TI BASIC for CALL INIT,
>>>>>>>>> CALL LOAD()&  CALL LINK() in the extra 2K space after GROM0, GROM1&
>>>>>>>>> GROM2 I would do it myself, but I don't have a clue about how this is 
>>>>done.
>>>>>>>>>
>>>>>>>>> I rest my weary eyes at this point and head back to bed in hopes of
>>>>>>>>> getting a little sleep. Think cherry plumbs and .....
>>>>>>>>>
>>>>>>>>> Bill S
>>>>>>>>>
>>>>>>>>> On 4/12/2011 2:08 PM, tursi wrote:
>>>>>>>>>>> If there's no room in GROM0, and these E/A call are all in GROM1&  
>>>GROM2
>>>>>>>>>>> they should not interfere with XB, and I thought the CALLs for TI 
>>BASIC
>>>>>>>>>>> are different from those in XB, so don't conflict with each other
>>>>>>>>>>> anyway. Although they might conflict with those same CALLs in Mini 
>>>>>Memory.
>>>>>>>>>>
>>>>>>>>>> They will conflict with XB. CALLs are searched through all GROMs 
>>>starting
>>>>>>>>>> with GROM0 and counting up, so CALL INIT will always be found in 
GROM1
>>>>>>>>>> before GROM3 (XB), and therefore XB programs that CALL INIT will run 
>>the
>>>>>>>>>> wrong one and crash.
>>>>>>>>>>
>>>>>>>>>> You can't conflict with one cartridge (like MM) and not others (like 
>>>XB).
>>>>>>>>>>
>>>>>>>>>> The best solution I have for this is to test for the presence of a
>>>>>>>>>> cartridge and skip the call in GROM1 if there is a cartridge present. 
>>>>This
>>>>>>>>>> would work for most cases, I think, but it does mean if you have a 
>game
>>>>>>>>>> like Parsec installed, even though there are no CALL subprograms in 
>>>>there,
>>>>>>>>>> it will still disable my added ones. It's the best solution short of
>>>>>>>>>> reproducing the entire search, though.
>>>>>>>>>>
>>>>>>>>>>> To explain we come to my complete reason for the request. It is not
>>>>>>>>>>> specific to not having the E/A module in the cart slot or having 
>>>another
>>>>>>>>>>> specific module in the TI cart slot, but due to MSAVE and MSAVE6
>>>>>>>>>>> provided with the MG GramKracker CALL search. TI BASIC programs 
saved
>>>>>>>>>>> in module space using MSAVE/MSAVE6 (MSAVE will allow the E/A module 
>to
>>>>>>>>>>> be plugged in, but MSAVE6 will not) will find CALLs in MSAVE/MSAVE6 
>or
>>>>>>>>>>> in DSR space, but will not find any CALLs in module space at a lower
>>>>>>>>>>> GROM address than the location of MSAVE/MSAVE6.
>>>>>>>>>>
>>>>>>>>>> I don't understand the problem, unfortunately. My system is not a 
GRAM
>>>>>>>>>> device. I don't have or use GRAM devices so I'm not really following
>>>>>>>>>> what's going on there.
>>>>>>>>>>
>>>>>>>>>> Let me try and follow though, you have a system by which you can save 
>>TI
>>>>>>>>>> BASIC programs in cartridge GROM space, but when you do this, although 
>>>TI
>>>>>>>>>> BASIC calls like HCHAR and CLEAR work, Editor/Assembler calls like 
>INIT
>>>>>>>>>> and LOAD do not. Is that correct?
>>>>>>>>>>
>>>>>>>>>>> Obviously, if someone (not me) with the knowledge and capability of
>>>>>>>>>>> modifying these two GPL utilities to search lower addresses for 
CALLs
>>>>>>>>>>> this specific request would not be needed. I've made this request
>>>>>>>>>>> before (3 or 4 years back), and I thought at one time someone we 
know
>>>>>>>>>>> was going to do it, but it never happened.
>>>>>>>>>>
>>>>>>>>>> If you can send me a TI BASIC program with E/A saved in this manner, 
>>and
>>>>>>>>>> any load instructions you have for how to load it (it's okay if the
>>>>>>>>>> instructions are for GRAM Kracker, I will figure it out), I will see if 
>>>I
>>>>>>>>>> can understand why it's happening. I have a suspicion that the TI 
>BASIC
>>>>>>>>>> interpreter probably doesn't bother to check cartridge space when a
>>>>>>>>>> program runs from GROM, that would be easier to fix in my GROM0 than
>>>>>>>>>> bringing in all the E/A utilities, and a sample would let me test the
>>>>>>>>>> theory and the fix.
>>>>>>>>>>
>>>>>>>>>> I suspect this would be true, because there is the potential that if 
>>the
>>>>>>>>>> TI BASIC program had a 0xAA byte at any of the GROM start addresses, 
>it
>>>>>>>>>> would be misintrepreted as a GROM header and cause a crash. But that 
>is
>>>>>>>>>> something that's easy to test for and workaround.
>>>>>>>>>>
>>>>>>>>>> Just email me a sample file there (no need to go overboard, something
>>>>>>>>>> simple like 10 CALL INIT, 20 CALL CLEAR is enough), and I'll take a 
>>>quick
>>>>>>>>>> peek.