Jump to content

Recommended Posts

It looks like your site is down. All the links are kaput...

ok, moved the site to another provider. Except for a few files, all links in the Dev.Res.Thread should be working again.

 

Currently still missing files are:

 

OCR'ed TI-Invaders Source Code

C Compiler in PC99 format (zip package)

????

Edited by retroclouds
Link to comment
Share on other sites

  • 2 months later...

Getting this one into proper format will be almost as much fun as when I reconstructed the Parsec source code in editable text form. . .that one took a month or two of work spaced out to keep me from getting frustrated with it--and I had Paul Urbanus helping on it too! He was good at finding one family of errors in the text, and while correcting what he found, I was able to identify most of the rest of them. Ten to twelve passes through the entire document and we'd caught almost everything--but when I went through it again six months later, I found another 20 or so items that we'd missed in all of our careful searching.

  • Like 1
Link to comment
Share on other sites

Here, just another try. Maybe you check it by copy and paste it to word, print it out,

and compare it with the original by holding to the light :) I don´t know, just a try :)

 

 

1982-TI_Invaders_Source_Code-NewTryNonOrig.pdf

 

 

 

 

puuuh, AtariAge is sooo slow, I needed half an hour for this post here :(

And errors on errors if uploading files.... but only AA is affected....

also tried from a 2nd site (Hamburg), same sh*t.

I´ll try next week again.

Link to comment
Share on other sites

I was interested in the text copy to see if it assembled correctly so I could play with the code and maybe modify it.

It's in this thread post #1, under 6. Tutorials, Assembly language, Commented assembly source code.

 

We now have the OCR'ed and tweaked TI Invaders source code TXT available & ready for assembly with Winasm99.

Thank you @Stuart!

Link to comment
Share on other sites

  • 1 month later...
  • 1 month later...

Does anybody have a link or is willing to share a simple program which shows how to write a program that executes code from ROM and code from GROM, one using pure machine code and the other using GPL in the same application. I know that this is done by some apps. I am asking this so that I can understand how the CPU will switch context from running in a virtual space (GPL) and running full speed in machine code in the same program.

 

What I presume will happen is that you start from machine code at some address and then make a special call to execute GPL code and then return back to machine code. If this is not the case then I need to learn a lot more.

 

The example I need could simply be writing "Hello World" from Machine Language then going into GPL and writing "GPL Hello World" and then loop back to machine code "Hello World" forever until a key is pressed.

 

I am not sure, but I presume that one can only write such code using EA and then executing code from a particular address.

 

Thanks for your time.

Link to comment
Share on other sites

One other thing. Given that GROM's are not addressable but only has data lines for streaming data back to the CPU (Memory Mapped Devices) would a program written to read the code from a GROM be a lot different from a program written to read the same code from ROM ((for the same CPU) or is the difference abstracted at hardware level? I only have experience of running a program stored in RAM, therefore any ROM for me was considered a device that had code in it which first I extract and put in RAM and then execute that code from RAM. Is it the same in TI ?

Link to comment
Share on other sites

One other thing. Given that GROM's are not addressable but only has data lines for streaming data back to the CPU (Memory Mapped Devices) would a program written to read the code from a GROM be a lot different from a program written to read the same code from ROM ((for the same CPU) or is the difference abstracted at hardware level? I only have experience of running a program stored in RAM, therefore any ROM for me was considered a device that had code in it which first I extract and put in RAM and then execute that code from RAM. Is it the same in TI ?

 

Cartridge ROM in CPU space in the TI-99/4A is the same as RAM regarding program execution, with two exceptions, (1) you cannot write to it and (2) it is bank-switched. The current bank is 8KiB in the 6000h – 7FFFh space.

 

DSR ROM in expansion cards is also in CPU space starting at 4000h and only present when its card is turned on through the CRU.

 

As @Tursi said, GROM can be read, one byte at a time, through a memory window. A block of GROM can be read contiguously once its starting address has been set because GROM is auto-incrementing.

 

GPL programs in GROM are interpreted by the GPL interpreter, which is an ALC program resident in the console ROM (CPU space at 0000h – 1FFFh). Console ROM is on a 16-bit bus (same as scratchpad RAM, 8300h – 83FFh), so ALC there runs a good bit faster than programs you can write for the 32KiB expansion RAM, which is multiplexed on an 8-bit bus.

 

...lee

Link to comment
Share on other sites

Regarding writing a single program to run GPL and ALC, it cannot be done! GPL must reside in a GROM (or GRAM, which was provided by a few third-party manufacturers BITD to load code that had been passed through a GPL assembler) to be interpreted by the GPL interpreter. There simply is no way to tell the GPL interpreter to start interpreting code in CPU space.

 

...lee

Link to comment
Share on other sites

Regarding writing a single program to run GPL and ALC, it cannot be done! GPL must reside in a GROM (or GRAM, which was provided by a few third-party manufacturers BITD to load code that had been passed through a GPL assembler) to be interpreted by the GPL interpreter. There simply is no way to tell the GPL interpreter to start interpreting code in CPU space.

 

...lee

Thanks Lee. I will read all that I can find on GPL. I think that actually compiling and running a GPL Hello World might be more difficult than I am anticipating. It is not just the code but how to get to the point that I set up the environment to fire a GPL program on a real TI. :) any newbie tips will be appreciated.

Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...