Subject: Re: [TI994A] XCOM XB compiler

From: Owen Brand <[email-masked]>
Date: Fri, 29 Jan 2010 22:21:29 -0500

Used Wilhelm's compiler to compile the following

400 FOR I=2 TO 28 :: CALL COINC(#1,I,10):: NEXT I

Darn thing actually kicked out object code.... Don't know how useful  
it will be.  Need to figure out what to do with it now....

Owen Brand
**Oprysoft**
Opry99er.com

On Jan 29, 2010, at 5:06 PM, fdos <[email-masked]> wrote:

> Yes, I use the MESS TI/Geneve emulators for all my software  
> development
> as it best mimics my real TI (4A & 4P) and Geneve systems.   
> Definitely,
> saves wear and tear on my real hardware, as the assembly and compile
> processes really pound the disk drives (floppy or hard disk).
>
> I'm trying to setup my CF7A+ system, which is connected to a 23" LCD
> flat panel, as is my Win98SE PC, for my grandkids so they can easily
> load their favorite games using a simple menu system.  Parsec really
> shows off well on this wide screen HDTV with lots of different types  
> of
> inputs.  Fortunately, I don't have to give up access to the Win98SE PC
> and CF7A+ Sidecar very often or for long periods of time.  It always
> stays here after they leave! :-)
>
> Bill S
>
> Owen Brand wrote:
>>
>>
>> I'll DL that today. I don't know that I will ever find another GK,
>> but I am not sweating it. One thing I've learned is that I prefer
>> programming in an emulated setting most of the time, but I prefer
>> playing and testing on the real hardware ALL the time. If it can be
>> emulated, that's what is moat important to me at the current  
>> time... I
>> don't even have an AV cable for my TI right now--- gave mine away to
>> my grandmother (of all people). She is lonely in her apartment so I
>> went to her place and installed a console only setup with
>> Blackjack&Poker, Touch Typing Tutor, TI Invaders, and Yahtzee. She is
>> saving up for a laptop, but until then, she has my AV cable... :) I
>> can't even test on my real deal right now.. so I am wearing OUT my
>> Classic99 software programming "Honeycomb Rapture."
>>
>> Owen Brand
>> **Oprysoft**
>> Opry99er.com
>>
>> On Jan 29, 2010, at 3:09 PM, fdos <[email-masked]
>> <mailto:fdosbrs%40frontiernet.net>> wrote:
>>
>>> Owen,
>>>
>>> You don't have to have the GK for Barry's XXB, but once it's in your
>>> possession again then get Tony Knerr's XB 2.5 along with a GRAM7 EA
>>> and
>>> you'll have the near ultimate TI programming setup. However, if you
>>> want to distribute your programs created in this environment limit
>>> yourself to TI XB and XXB only--don't use Tony's XB enhancements in
>>> the
>>> programs you create to distribute. There are a lot of immediate mode
>>> commands that will be very useful during your programming sessions,
>>> however.
>>>
>>> In the mean time download XXB, and see if these CALL LINK()s will be
>>> useful to your creative talents because you can distribute the XXB
>>> object code along with your programs. Have fun.
>>>
>>> Bill S
>>>
>>> Owen Brand wrote:
>>>>
>>>>
>>>> Bill--- as far as the GK goes, I am not currently in possession of
>>>> one... However I CAN say that I did NOT sell it. I thought about
>>>> ebaying it, but thought better of it. :) Some things should  
>>>> remain in
>>>> our programming community and not go sit in a box under a bed  
>>>> waiting
>>>> for the "market" to be right.
>>>>
>>>> I have a TI floppy controller and a SSSD TI floppy drive--- but I
>>>> also
>>>> have 2 3.5 drives installed.
>>>>
>>>> Owen Brand
>>>> **Oprysoft**
>>>> Opry99er.com
>>>>
>>>> On Jan 29, 2010, at 2:39 PM, fdos <[email-masked]
>> <mailto:fdosbrs%40frontiernet.net>
>>>> <mailto:fdosbrs%40frontiernet.net>> wrote:
>>>>
>>>>> Owen,
>>>>>
>>>>> Have you tried Barry Travers XXB? It is a very comprehensive set  
>>>>> of
>>>>> CALL LINK()s for XB. In fact, Tony's XB 2.5 or 2.7 (depends on  
>>>>> your
>>>>> floppy disk capacity) include it, and you do still have a GK,
>>>>> right? It
>>>>> is also available for download from WHTECH separately, but I don't
>>>>> recall where specifically. It might meet your needs well. A lot of
>>>>> Barry's XXB AL routines are what I converted (with much  
>>>>> assistance)
>>>>> for
>>>>> use in TI BASIC+, but I think the Sprite stuff was some what
>>>>> limited, so
>>>>> I got that stuff from Mark Wills' TGWTK (as modified for TI  
>>>>> BASIC/EA
>>>>> by
>>>>> him).
>>>>>
>>>>> You will always come up with new requirements for additional CALL
>>>>> LINK()s as your XB programing skills increase while XB remains
>>>>> static.
>>>>> Get use to it.
>>>>>
>>>>> BASIC/XB compilers have their own user interface as they no longer
>>>>> interface to BASIC/XB interpreters, so the code produced by them
>>>>> will
>>>>> have to be interfaced back to the GPL interpreter in someway. I  
>>>>> know
>>>>> how to do it in Forth, but the compatibility of Forth and AL makes
>>>>> it
>>>>> very easy to do. Good luck.
>>>>>
>>>>> Bill S
>>>>>
>>>>> Owen Brand wrote:
>>>>>>
>>>>>>
>>>>>> Thanks Bill. All I really need is something to take a one or two
>>>>>> line
>>>>>> XB sub and turn it into machine code for me. I realize that
>>>>>> compilers
>>>>>> are inefficient for larger programs in XB--- having tried  
>>>>>> Wilhelm's
>>>>>> compiler with very little success. But.... What if it was a  
>>>>>> single
>>>>>> line with 3 or 4 statements? :)
>>>>>>
>>>>>> Owen Brand
>>>>>> **Oprysoft**
>>>>>> Opry99er.com
>>>>>>
>>>>>> On Jan 29, 2010, at 1:14 PM, fdos <[email-masked]
>> <mailto:fdosbrs%40frontiernet.net>
>>>> <mailto:fdosbrs%40frontiernet.net>
>>>>>> <mailto:fdosbrs%40frontiernet.net>> wrote:
>>>>>>
>>>>>>> Owen,
>>>>>>>
>>>>>>> Here is a clue. Most of these BASIC/XB compilers have been  
>>>>>>> around
>>>>>>> for
>>>>>>> several decades now. Do you hear anyone touting them to you for
>>>>>>> game
>>>>>>> development? Have you found lots or a few of these compiled
>>>>>>> programs?
>>>>>>> We have some limited "C"/"c" compilers for our TI/Geneves and  
>>>>>>> very
>>>>>>> good
>>>>>>> Fortran compilers for both, but how many compiled programs do  
>>>>>>> you
>>>>>>> find?
>>>>>>> I believe Clint Pulley's small c has the most.
>>>>>>>
>>>>>>> Remember, I've been down this avenue too, so have many others. A
>>>>>>> few
>>>>>>> have managed to do well with "C", in one form or another, but on
>>>>>>> the
>>>>>>> most part we either accept the speed and other limitations of XB
>>>>>>> and
>>>>>>> go
>>>>>>> on or we move to a speedier language of our own choice. Most  
>>>>>>> have
>>>>>>> gone
>>>>>>> to AL because Wycove Forth was expensive, and TI Forth was
>>>>>>> incomplete
>>>>>>> and buggy the way it was when TI put it into PD. TI was
>>>>>>> reluctant to
>>>>>>> put it in PD because it was not finished or tested at the time,
>>>>>>> but
>>>>>>> Craig Miller convinced them to do it anyway. The price for this
>>>>>>> was
>>>>>>> that TI Forth got a bad name very quickly, because programmers
>>>>>>> wanted
>>>>>>> instant solutions, and a buggy incomplete programming language
>>>>>>> didn't
>>>>>>> provide it.
>>>>>>>
>>>>>>> Many of us wish it was otherwise, so that we could have done it
>>>>>>> our
>>>>>>> way
>>>>>>> in XB, but that's not been the case. Even those who began to
>>>>>>> supplement
>>>>>>> XB with CALL LINK()s to AL routines eventually went all the way
>>>>>>> over
>>>>>>> to
>>>>>>> AL. You'll understand why when you encounter the very slow XB
>>>>>>> object
>>>>>>> code loader. Then you'll learn about ALLSAVE to remedy that, and
>>>>>>> the
>>>>>>> debug process for this technique will frustrate you, but if you
>>>>>>> can
>>>>>>> live
>>>>>>> with it....
>>>>>>>
>>>>>>> These comments are only intended to save you some time. I'm sure
>>>>>>> I've
>>>>>>> not been comprehensive or absolutely accurate in all cases (old
>>>>>>> gray
>>>>>>> matter you know), but I'm sure others here will expand and  
>>>>>>> correct
>>>>>>> those
>>>>>>> short comings or simply have a different opinion.
>>>>>>>
>>>>>>> Best wishes.
>>>>>>>
>>>>>>> Bill S
>>>>>>>
>>>>>>> Owen Brand wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>> You know, I don't even need to compile an entire game--- if I
>>>>>>>> could
>>>>>>>> code
>>>>>>>> some of the more memory-expensive subprograms into XB (3-4  
>>>>>>>> lines)
>>>>>>>> and
>>>>>>>> compile those into hyper-fast AL routines and then CALL LOAD
>>>>>>>> them,
>>>>>>>> that
>>>>>>>> would REALLY enhance what I'm doing.... That seems like it
>>>>>>>> would be
>>>>>>>> much
>>>>>>>> more plausible.
>>>>>>>>
>>>>>>>> Owen Brand
>>>>>>>> **Oprysoft**
>>>>>>>> Opry99er.com <http://Opry99er.com <http://Opry99er.com>
>> <http://Opry99er.com <http://Opry99er.com>>
>>>> <http://Opry99er.com <http://Opry99er.com> <http://Opry99er.com
>> <http://Opry99er.com>>>>
>>>>>>>>
>>>>>>>> On Jan 29, 2010, at 11:50 AM, Gregory McGill
>>>>>> <[email-masked] <mailto:arcadeshopper%40gmail.com>
>> <mailto:arcadeshopper%40gmail.com>
>>>> <mailto:arcadeshopper%40gmail.com>
>>>>>>>> <mailto:[email-masked]
>> <mailto:arcadeshopper%40gmail.com> <mailto:arcadeshopper
>>>>>>>> %40gmail.com>
>>>> <mailto:arcadeshopper
>>>>>>>> %40gmail.com>>>
>>>>>> wrote:
>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I've messed with some of the compilers Owen, They are very
>>>>>>>>> interesting.. But sometimes its difficult to get things to  
>>>>>>>>> work
>>>>>>>>> correctly in them. I compiled Camelot for instance, in my
>>>>>>>>> video on
>>>>>>>>> ustream you can see it run and how much zippier it is compared
>>>>>>>>> to
>>>>>>>>> the
>>>>>>>>> TIbasic ver..
>>>>>>>>>
>>>>>>>>> G
>>>>>>>>>
>>>>>>>>> On Fri, Jan 29, 2010 at 8:41 AM, Owen Brand
>>>>>>>>> <[email-masked] <mailto:owenbrand%40opry99er.com>
>> <mailto:owenbrand%40opry99er.com>
>>>>>> <mailto:owenbrand%40opry99er.com>
>>>>>>>>> <mailto:[email-masked]
>> <mailto:owenbrand%40opry99er.com> <mailto:owenbrand%40opry99er.com>
>>>> <mailto:owenbrand%40opry99er.com>>>
>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I look forward to hearing all about it... Would LOVE to learn
>>>>>>>>> what I
>>>>>>>>> can about it. :)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Owen Brand
>>>>>>>>> **Oprysoft**
>>>>>>>>> <http://Opry99er.com <http://Opry99er.com> <http:// 
>>>>>>>>> Opry99er.com
>> <http://Opry99er.com>> <http://Opry99er.com <http://Opry99er.com>
>>>> <http://Opry99er.com <http://Opry99er.com>>>>Opry99er.com
>>>>>> <http://Opry99er.com <http://Opry99er.com> <http://Opry99er.com
>> <http://Opry99er.com>> <http://Opry99er.com <http://Opry99er.com>
>>>> <http://Opry99er.com <http://Opry99er.com>>>>
>>>>>>>>>
>>>>>>>>> On Jan 29, 2010, at 11:37 AM, fdos <[email-masked]
>> <mailto:fdosbrs%40frontiernet.net>
>>>> <mailto:fdosbrs%40frontiernet.net>
>>>>>> <mailto:fdosbrs%40frontiernet.net>
>>>>>>>>> <mailto:fdosbrs%40frontiernet.net>> wrote:
>>>>>>>>>
>>>>>>>>>> Owen,
>>>>>>>>>>
>>>>>>>>>> Ben Yates can tell you all about the XCOM compiler. He'll pop
>>>>>>>>>> in on
>>>>>>>>>> this some time or another.
>>>>>>>>>>
>>>>>>>>>> Bill S
>>>>>>>>>>
>>>>>>>>>> Owen Brand wrote:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Found a PDF manual on whtech this morning for XCOM compiler
>>>>>>>>> v1.1. It
>>>>>>>>>>> seems to be a complete compiler for BASIC and XB.... In the
>>>>>>>>>>> introduction it lays out how it converts the XB code into
>>>>>>>>>>> machine
>>>>>>>>>>> code
>>>>>>>>>>> and saves it to MERGE format.... It says that it makes your
>>>>>>>>>>> program
>>>>>>>>>>> run 10-15 times faster than standard XB code. It also says
>>>>>>>>>>> that
>>>>>>>>> with
>>>>>>>>>>> "the new version," the output machine code can be used with
>>>>>>>>>>> the
>>>>>>>>>>> Editor
>>>>>>>>>>> Assembler or MiniMem. This looks promising.... Anyone know  
>>>>>>>>>>> of
>>>>>>>>>>> this
>>>>>>>>>>> software? Anyone have a copy they could share? :)
>>>>>>>>>>>
>>>>>>>>>>> Owen Brand
>>>>>>>>>>> **Oprysoft**
>>>>>>>>>>> <http://Opry99er.com <http://Opry99er.com>
>> <http://Opry99er.com <http://Opry99er.com>> <http://
>>>>>>>>>>> Opry99er.com
>>>> <http://Opry99er.com <http://Opry99er.com>>>>Opry99er.com
>>>>>> <http://Opry99er.com <http://Opry99er.com> <http://Opry99er.com
>> <http://Opry99er.com>> <http://Opry99er.com <http://Opry99er.com>
>>>> <http://Opry99er.com <http://Opry99er.com>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> ------------------------------------
>>>>>>>>>>
>>>>>>>>>> Yahoo! Groups Links
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> ------------------------------------
>>>>>>>
>>>>>>> Yahoo! Groups Links
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> ------------------------------------
>>>>>
>>>>> Yahoo! Groups Links
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>> ------------------------------------
>>>
>>> Yahoo! Groups Links
>>>
>>>
>>>
>>
>>
>
>
> ------------------------------------
>
> Yahoo! Groups Links
>
>
>

---

From: fdos <[email-masked]>
Date: Sat, 30 Jan 2010 08:22:14 -0700

Owen,

Why not post the object code, so we can have a gander (look see, not lay 
an egg :-).

Bill S

Owen Brand wrote:
> On Jan 29, 2010, at 5:06 PM, fdos <[email-masked] 
> <http://Opry99er.com>>>
>  >> <http://Opry99er.com <http://Opry99er.com>>>>>
>  >>>>>>>>
>  >>>>>>>> <mailto:[email-masked] <mailto:arcadeshopper%40gmail.com>
>  >>>>>>>>> <mailto:[email-masked] <mailto:owenbrand%40opry99er.com>
>  >> <http://Opry99er.com <http://Opry99er.com>>> <http://Opry99er.com 
> <http://Opry99er.com> <http://Opry99er.com <http://Opry99er.com>>
> <http://Opry99er.com>>>>>Opry99er.com
>  >> <http://Opry99er.com <http://Opry99er.com>>> <http://Opry99er.com 
> <http://Opry99er.com> <http://Opry99er.com <http://Opry99er.com>>
> <http://Opry99er.com>>>>>
>  >>>>>>>>>
> <http://Opry99er.com>>> <http://
>  >>>>>>>>>>> Opry99er.com
> <http://Opry99er.com>>>>>Opry99er.com
>  >> <http://Opry99er.com <http://Opry99er.com>>> <http://Opry99er.com 
> <http://Opry99er.com> <http://Opry99er.com <http://Opry99er.com>>
> <http://Opry99er.com>>>>>
>  >>>>>>>>>>>
>  >>>>>>>>>>>
>  >>>>>>>>>>
>  >>>>>>>>>>

---

From: Owen Brand <[email-masked]>
Date: Sat, 30 Jan 2010 10:26:32 -0500

I will certainly do that tonight when I get home.... :) Got some  
business in the city today, and I play tonight at Texas Outlaw.... A  
place here in town.  It is am early show, so I will be done playing at  
10:30---- I'll post this object code when I get home tonight.  Wonder  
if it's worth a crap?

Owen Brand
**Oprysoft**
Opry99er.com

---

From: fdos <[email-masked]>
Date: Sat, 30 Jan 2010 08:34:08 -0700

Owen,

Object code can't be discerned by me until after I pass it through a 
disassembler, and compressed object code is even more obscure.

Bill S

Owen Brand wrote:
> On Jan 30, 2010, at 10:22 AM, fdos <[email-masked] 
> <http://Opry99er.com>>>>>>
>  >>>>>>>>>>
> <http://Opry99er.com>>>> <http://Opry99er.com <http://Opry99er.com>
>  >> <http://Opry99er.com <http://Opry99er.com>> <http://Opry99er.com 
> <http://Opry99er.com> <http://Opry99er.com <http://Opry99er.com>>>
>  >> <http://Opry99er.com <http://Opry99er.com>>>>>>Opry99er.com
> <http://Opry99er.com <http://Opry99er.com>> <http://Opry99er.com 
> <http://Opry99er.com>
> <http://Opry99er.com>>>> <http://Opry99er.com <http://Opry99er.com>
>  >> <http://Opry99er.com <http://Opry99er.com>> <http://Opry99er.com 
> <http://Opry99er.com> <http://Opry99er.com <http://Opry99er.com>>>
>  >> <http://Opry99er.com <http://Opry99er.com>>>>>>
>  >>>>>>>>>>>
>  >> <http://Opry99er.com <http://Opry99er.com>>>> <http://
>  >>>>>>>>>>>>> Opry99er.com
>  >> <http://Opry99er.com <http://Opry99er.com>>>>>>Opry99er.com
> <http://Opry99er.com <http://Opry99er.com>> <http://Opry99er.com 
> <http://Opry99er.com>
> <http://Opry99er.com>>>> <http://Opry99er.com <http://Opry99er.com>
>  >> <http://Opry99er.com <http://Opry99er.com>> <http://Opry99er.com 
> <http://Opry99er.com> <http://Opry99er.com <http://Opry99er.com>>>
>  >> <http://Opry99er.com <http://Opry99er.com>>>>>>
>  >>>>>>>>>>>>>
>  >>>>>>>>>>>>>
>  >>>>>>>>>>>>
>  >>>>>>>>>>>>

---

From: Owen Brand <[email-masked]>
Date: Sat, 30 Jan 2010 17:02:11 -0500

In looking through these docs on this compiler, it says the main  
requirement is that there is no floating point math and that any delay  
loops that are set need to be changed to CALL SOUNDs with a volume of  
30.  It claims to be pretty comprehensive. :). I'll test a bunch of  
stuff out tonight and get back with you guys on my success or failure.

Owen Brand
**Oprysoft**
Opry99er.com