Jump to content


Specialized file access from XB

79 replies to this topic

#76 Lee Stewart OFFLINE  

Lee Stewart

    River Patroller

  • 3,871 posts
  • Location:Silver Run, Maryland

Posted Fri Oct 19, 2018 8:44 PM

To the best of my recollection, I've not used SAVE1-5 in my programs.  Maybe the words are used for re-entrant DSR calls. I believe Bruce Harrison wrote a few articles on this topic in Micropendium.   Ss noted in my post, I didn't write this version but it is pretty much standard.  In fact, Paul C.'s Fastterm source code contains a very similar DSRLNK that he labels "ultra standard".


I thought the Editor Assembler manual contained a listing of the DSRLNK routine.  I took a quick look at my manual and could not find it.  Maybe I'm thinking of some other documentation.... anyone know where to find the published version? 


Here on Thierry’s site:  E/A Assembly Routines.  DSRLNK starts at A22B2.



#77 InsaneMultitasker OFFLINE  


    River Patroller

  • 2,323 posts

Posted Fri Oct 19, 2018 8:56 PM


Here on Thierry’s site:  E/A Assembly Routines.  DSRLNK starts at A22B2.



Thanks Lee.  This helped me remember one other good reference that contains a documented DSRLNK for XB.  The interface standard design guide can be found in the development resources.  Page J20 contains the commented DSRLNK routine.  There are a few sections on DSR routines that are valuable to review for anyone interested in the nuts and bolts. 






  • 855 posts
  • Location:The Great White North

Posted Fri Oct 19, 2018 9:49 PM


Here on Thierry’s site:  E/A Assembly Routines.  DSRLNK starts at A22B2.




Ok I get it now. This is almost the same as the code I took from here.


So I am guessing nobody has tried the crazy stuff I want to do...

  1. not scanning all the cards ie: disk card only DSRLNK
  2. Pre-scanning the ROM list to get the code entry address for the device
  3. pre-calculating the PAB address that starts at the '.' (what I call the real PAB)
  4. storing the real PAB as a file ID that is passed to the Disk DSR like a handle

...because it's got some black magic in it so it's not worth the trouble. (?)

#79 Tursi OFFLINE  



  • 5,426 posts
  • HarmlessLion
  • Location:BUR

Posted Sat Oct 20, 2018 1:39 AM

I've seen DSRs that only scan the disk card.. but you still need to store the CRU address >1100 in the right place. :) If you do that, though, you make it so that people can't use a RAMdisk to override the disk controller, for instance.


It's perfectly okay to precalculate everything, nothing can tell whether you actually scanned or searched. You just need to turn on the card and jump to the right address. The catch is that it won't work without all those little memory addresses being set up. :)


For the scratchpad loader, we call the "real" DSRLNK only once, then we pre-calculate a bunch of PABs with different EA#5 filenames, save off the data, and just directly branch to the DSR for each file. You can certainly get away with precalculations. :)


Source is in this archive, but it doesn't include the actual DSRLNK, just what we did with it. ;) 




    Chopper Commander

  • 247 posts
  • Location:"trapped in interspace"

Posted Sat Oct 20, 2018 5:44 PM


I never understood that either. Where is the routine that TI BASIC is using stored?

In yet another coincidence, I came upon this...


Attached File  basic dsr.JPG   121.9KB   2 downloads :cool:

0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users