Jump to content



0

GPLLNK equate for XB


7 replies to this topic

#1 moulinaie OFFLINE  

moulinaie

    Chopper Commander

  • 185 posts
  • Location:France, Burgundy

Posted Sun Oct 30, 2011 1:22 PM

Hi all,

Does anybody know the GPLLNK equate for Extended Basic???

Guillaume.

#2 RXB OFFLINE  

RXB

    Dragonstomper

  • 539 posts
  • Location:Vancouver, Washington, USA

Posted Sun Oct 30, 2011 4:12 PM

Down load the EA Manual and use Page 415 of the Editor Assembler Manual.


http://www.retroclou...bler_Manual.pdf

Right here on this site under:

http://www.atariage....ment-resources/

#3 moulinaie OFFLINE  

moulinaie

    Chopper Commander

  • 185 posts
  • Location:France, Burgundy

Posted Sun Oct 30, 2011 4:36 PM

View PostRXB, on Sun Oct 30, 2011 4:12 PM, said:

Down load the EA Manual and use Page 415 of the Editor Assembler Manual.


http://www.retroclou...bler_Manual.pdf
I have the book, but GPLLNK is not listed !!
That's why I'm asking...

Guillaume.

#4 RXB OFFLINE  

RXB

    Dragonstomper

  • 539 posts
  • Location:Vancouver, Washington, USA

Posted Sun Oct 30, 2011 4:41 PM

GPLLNK page 251.

Say when you use Adobe use the Search routine like I do. Click the search icon and type GPLLNK.

#5 moulinaie OFFLINE  

moulinaie

    Chopper Commander

  • 185 posts
  • Location:France, Burgundy

Posted Mon Oct 31, 2011 1:45 AM

Hello,

My question was not clear I think...

For example, when you use XMLLNK in TI XB environment, yo_u must declare:
XMLLNK equ >2018
What is the declaration for GPLLNK ??
It is not in page 251, nor 415-416.

Guillaume.

#6 Willsy OFFLINE  

Willsy

    Dragonstomper

  • 765 posts
  • Location:Uzbekistan (no, really!)

Posted Mon Oct 31, 2011 4:40 AM

Rich,

The tagged-object loader in the XB cart is a 'reduced functionality' version of the EA tagged object loader. Unfortunately, it doesn't support the REF tag, so it cannot resolve REFd addresses in your assembler source code. It does support the DEF directive (necessary for CALL LINK) which means your only choice is to give the address yourself, which of course means that you need to know it first, in order to specify it as a DEF directive in your source code!

Unfortunately Guillame, I do not know the address of GPLLNK in the XB environment, but if you check out the July 1986 edition of the Smart Programmer, you will find a version of GPLLNK listed that you can use. It's not a very large program (70 bytes) and is fully compatible with MiniMem, EA, XB etc. I have posted the magazine below. You need the paper port viewer to view the file, which you can download (free) from here: ftp://ftp.scansoft.c...ort/setupex.exe

You may also have the same trouble with XMLLNK. You will want to use XMLLNK if you want to do any floating point math. For XMLLNK you can use the following code, which should work just fine.

GPLLNK  BSS 32		  * workspace for gpllnk
		DATA LNKGPL	 * address of code
		
LNKGPL  MOV *R11+,@>83E2 * move XML opcode to GPLs R1
		MOV @>83F6,R0   * save GPLs R11
		LWPI >83E0	  * load GPL workspace
		MOV R1,R2	   * copy opcode
		SRL R1,12	   * get table number
		SLA R1,1		* convert to word offset
		SLA R2,4		* remove table number from copy
		SRL R2,11	   * get the index into the table
		A @>0CFA(R1),R2 * get address of pointer
		MOV *R2,R2	  * get address of code from pointer
		BL *R2		  * branch to the code
		LWPI GPLLNK	 * restore our workspace
		MOV R0,@>83F6   * restore GPLs R11
	   RTWP

Hope this helps.

Mark
Attached File  sp8607.zip   626.49K   4 downloads

#7 moulinaie OFFLINE  

moulinaie

    Chopper Commander

  • 185 posts
  • Location:France, Burgundy

Posted Mon Oct 31, 2011 9:31 AM

View PostWillsy, on Mon Oct 31, 2011 4:40 AM, said:

Rich,

The tagged-object loader in the XB cart is a 'reduced functionality' version of the EA tagged object loader. Unfortunately, it doesn't support the REF tag, so it cannot resolve REFd addresses in your assembler source code. It does support the DEF directive (necessary for CALL LINK) which means your only choice is to give the address yourself, which of course means that you need to know it first, in order to specify it as a DEF directive in your source code!

Unfortunately Guillame, I do not know the address of GPLLNK in the XB environment, but if you check out the July 1986 edition of the Smart Programmer, you will find a version of GPLLNK listed that you can use. It's not a very large program (70 bytes) and is fully compatible with MiniMem, EA, XB etc. I have posted the magazine below. You need the paper port viewer to view the file, which you can download (free) from here: ftp://ftp.scansoft.c...ort/setupex.exe

Yeah, this helps a lot!
I'm adding the floating point instructions to MLC, so I needed the GPLLNK to get scientific functions.

Quote


You may also have the same trouble with XMLLNK. You will want to use XMLLNK if you want to do any floating point math. For XMLLNK you can use the following code, which should work just fine.

No, XMLLNK works fine directly. The E/A manual gives the new equates to use. I could perform arithmetics with no problem.

Thanks a lot Mark, you saved me!

Guillaume.

#8 Willsy OFFLINE  

Willsy

    Dragonstomper

  • 765 posts
  • Location:Uzbekistan (no, really!)

Posted Mon Oct 31, 2011 9:55 AM

No problem!

There is also an *excellent* article on GPLLNK, specifically relating to XB in the May 1984 edition of The Smart Programmer.

See attached. This is probably better than the previous article that I posted.

HTH

Mark
Attached File  sp8405.zip   717.92K   5 downloads




1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users