Jump to content
jedimatt42

TIPI - TI-99/4A to Raspberry PI interface development

Recommended Posts

1 hour ago, RXB said:

RXB SOURCE same as XB:

[0149] 8345          FLAG   EQU  >8345            General 8-bit flag

[0262] 03B9          SAPROT EQU  >03B9             PROTECTION flag in SAVE

[1974] 8C15 86,45    G8C15  CLR  @FLAG             Otherwise clear protection

[2047] 8CBD 86,45    G8CBD  CLR  @FLAG             Otherwise clear protection flag

[2215]               * Has to be PROTECTED option here, crunched as unquoted str
[2216] 8DF4 D7,B0,2C G8DF4  DCEQ >C809,V*PGMPTR    Unquoted string with length 9
       8DF7 C8,09
[2217]               *                              has to be PROTECTED
[2218] 8DF9 41,09           BR   ERRSYN
[2219] 8DFB D7,E0,02        DCEQ >5052,[email protected](@PGMPTR) "PR" of PRotected
       8DFE 2C,50,52
[2220] 8E01 41,09           BR   ERRSYN             If not : SYNTAX ERROR
[2221] 8E03 D7,E0,04        DCEQ >4F54,[email protected](@PGMPTR) "OT" of prOTected
       8E06 2C,4F,54
[2222] 8E09 41,09           BR   ERRSYN             If not : SYNTAX ERROR
[2223] 8E0B D7,E0,06        DCEQ >4543,[email protected](@PGMPTR) "EC" of protECted
       8E0E 2C,45,43
[2224] 8E11 41,09           BR   ERRSYN             If not : SYNTAX ERROR
[2225] 8E13 D7,E0,08        DCEQ >5445,[email protected](@PGMPTR) "TE",of protecTEd
       8E16 2C,54,45
[2226] 8E19 41,09           BR   ERRSYN             If not : SYNTAX ERROR
[2227] 8E1B D6,E0,0A        CEQ  >44,[email protected](@PGMPTR)  "D" of protecteD
       8E1E 2C,44
[2228] 8E20 41,09           BR   ERRSYN             If not : SYNTAX ERROR
[2229] 8E22 8E,E0,0B        CZ   [email protected](@PGMPTR)     Check EOL
       8E25 2C
[2230] 8E26 41,09           BR   ERRSYN
[2231] 8E28 90,A3,B9        INC  [email protected]

XB protection flag is at Hex >03B9 or Decimal 953 the flag named is SAPROT also set by flag named oddly FLAG

 

CALL POKEV(953,0) ! Unprotects file and clears SAPROT flag

CALL POKEV(953,1) ! Protects file and sets SAPROT flag

 

XB does not have a CALL POKEV command so you are screwed in XB.

 

 

We are talking about the FDR attribute of a file, not the XB flag. in the manual: "TI Extended BASIC", page 163, the reference for SAVE in Chapter 4, subsection 'options', second paragraph:

Quote

 

... This is not the same as using the protection available with the Disk Manager module.


 

 

It is the protection available with the Disk Manager module that we are discussing... not the SAVE PROTECTED option that those pokes manipulate.

 

We are trying to discuss the thing that has to do with disk controller level stuff.

 

Well, except we are done discussing it.

 

The summary: TIPI doesn't support the disk manager protection feature, except to set and unset it. It fails to enforce it. Enforcing it could be a good thing, which I've filed as an issue in the project github repository. Native files (things not in TIFILES format) on linux are treated as read-only ( mostly ) and it could clarify things to users, if TIPI reported them as protected ( P ) in the catalog records it generates at the disk controller level. And if it uniformly enforced the protection.

 

 

 

Share this post


Link to post
Share on other sites

I made a upgraded version of the Disk Manager Module too.

It handled RAMDISK like DSKA. or Disks 1 to 9 too.

That would be a better upgraded Disk Manager Module then the one I see people use.

RXB 2012 also had a routine to strip all Protections off disk files on a disk and make a unprotected disk copy sector by sector.

 

How come TIPI does not support that option, it is only 1 byte flag?

Share this post


Link to post
Share on other sites
3 hours ago, RXB said:

How come TIPI does not support that option, it is only 1 byte flag?

See previous posts not too far up the road.

  • Like 1

Share this post


Link to post
Share on other sites
On 12/28/2020 at 10:00 AM, jedimatt42 said:

A nice way to tie some stuff together, would be for me to implement this protect flag properly and report all the magic native conversion type files as protected, since they are implicitly already, but the error handling is ... made up. 

So you need to look up the standard error handling instead of just making up you own?

You could just us the TI OS it has most of those built in already.

Share this post


Link to post
Share on other sites
1 hour ago, RXB said:

So you need to look up the standard error handling instead of just making up you own?

You could just us the TI OS it has most of those built in already.

 

If it worked that way, wouldn't that be nice... I refer you to the developers resources thread, where all the documentation and specifications for most aspects of the 4A architecture are linked.  My statement about 'made up' was flippant, and not accurate.

 

I don't think you understand what TIPI is... 

 

I have adhered to the specifications of the 'TI OS' as much as practical... but as noted earlier, my copy was missing pages.

  • Like 4

Share this post


Link to post
Share on other sites

Don't know if this has been already reported and fixed in the past, so please ignore if necessary:

 

The config program ("CALL TIPI") locks-up if the URL in URI1 is too long. Just verified it again. Had to ssh into the PI and edit the tipi.config manually to make it work again.
After I removed the URL and restarted the TI-99/4a, the config started responding normally again.

 

Tested with TIPCFG v10, PI-Version 1.65 

 

The URL I used was: URI1=https://github.com/kl9900/TMS9900Family/blob/master/Consoles/TI-99/99-8/Rom/TXT

 

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites
Don't know if this has been already reported and fixed in the past, so please ignore if necessary:
 
The config program ("CALL TIPI") locks-up if the URL in URI1 is too long. Just verified it again. Had to ssh into the PI and edit the tipi.config manually to make it work again.
After I removed the URL and restarted the TI-99/4a, the config started responding normally again.
 
Tested with TIPCFG v10, PI-Version 1.65 
 
The URL I used was: URI1=https://github.com/kl9900/TMS9900Family/blob/master/Consoles/TI-99/99-8/Rom/TXT
 
giphy.gif?cid=349c9dd7eg72gfnwrn1ams1cr1kh5yokoojy7w5xb7s0rmya&rid=giphy.gifHoly giant url batman

Sent from my LM-V600 using Tapatalk

  • Haha 2

Share this post


Link to post
Share on other sites

Scared me, I thought you locked up the new year there for a moment.. that was a close one, but instead, you created the first lock up of the new year...

Edited by GDMike

Share this post


Link to post
Share on other sites

@retroclouds, I'll add it to github issues.  Along with the need to rework that. It hasn't handled long lines well - ever. You probably ran into a buffer overrun! Now can you use it to jailbreak your 4A? 

 

Back when I was writing TIPICFG, I now realize I almost never prevented buffer overruns in my 4A code.

 

(Ah, this is already recorded: https://github.com/jedimatt42/tipi/issues/141)

Edited by jedimatt42
  • Like 1

Share this post


Link to post
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.

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...