+arcadeshopper Posted February 16, 2021 Share Posted February 16, 2021 29 minutes ago, RXB said: Not attacking TIPI just saying what is happening. I go to CALL TIPI put in any path into DSK1 or DSK2 or DSK3 or DSK4 and that path only responds to TIPI. or DSK0. and ignores the path. When I do a CALL TIPI again the path I put in is not . (period) If I know squat about doing a LOG I would post it. Pretend I am not a expert on TIPI but as a new user of one. You need to re-read your messages above then. https://github.com/jedimatt42/tipi/wiki/Troubleshooting describes how to check the log files You need to post photos of your "crashes" if you want help. You need to post logs of the activities that caused these "crashes" in the tipi.log you can cut and paste from the interface or ssh if that's what you are using. Post a photo of the directories in the web interface that you are trying to map to DSK1 You don't need a trailing period in the mapping. You can see in my photo the TIPI.FC folder is mapped with just FC in DSK1 map. If the folder was TIPI.GAMES.EA5 then it would GAMES.EA5 in the map Greg Quote Link to comment Share on other sites More sharing options...
+9640News Posted February 16, 2021 Share Posted February 16, 2021 Rich, I use a Windows program WinSCP available at https://winscp.net to log into the TIPI for log file access and being able to copy/cut/paste information. You will need to identify the IP address for your TIPI to use WinSCP. The Hostname should be something like 192.168.1.xx and use a port number of 22. Username will be tipi, and password will be tipi. There will be log files when you login. I'm not sure if it defaults to the log path, or if you have to find it. My path is at /var/log/tipi/ The log file tipi.log will be your most recent set of log files. Doubleclick and scroll to the end of that log file for the most recent information added to the file. Things will be time and date stamped by whatever timezone the tipi is currently configured. You might be able to interpret from the log files what is happening yourself from the log file or you may need to just copy (or portion of) the file and post. The log entries for a catalog function will be a bit strange, so make sure you scroll back far enough by date/time to when the actual command(s) were entered as depending upon how many files and directories, and then the PI.CONFIG setting for display order, may make things a bit confusing for the novice. What I can tell you is that an extended basic program with a slight modification for a new type of file (DIRECTORY) as type 6, I typed in from what I believe was the TI Disk controller manual. Beery 2 Quote Link to comment Share on other sites More sharing options...
RXB Posted February 16, 2021 Share Posted February 16, 2021 I would really like to use TIPI to get the tests done on RXB 2020 C and release it. Quote Link to comment Share on other sites More sharing options...
+arcadeshopper Posted February 16, 2021 Share Posted February 16, 2021 Ok I got on his machine and he is able to use DSK1 maps now.. So the program loads fine from DSK1. but in the program it is trying to load pages from a file in that folder and is erroring. We looked at the log file and his routine in RXB to load pages into SAMS isn't even hitting the TIPI .. it's erroring without any log entries in the TIPI side.. Rich is going to post the assembly in another message if anyone can help there, I'm pretty useless in assembly Greg 2 Quote Link to comment Share on other sites More sharing options...
+arcadeshopper Posted February 16, 2021 Share Posted February 16, 2021 fyi Rich here's those instructions for backing up your sdcard: https://howchoo.com/g/nmexndnlmdb/how-to-back-up-a-raspberry-pi-on-windows 1 Quote Link to comment Share on other sites More sharing options...
RXB Posted February 16, 2021 Share Posted February 16, 2021 14 minutes ago, arcadeshopper said: Ok I got on his machine and he is able to use DSK1 maps now.. So the program loads fine from DSK1. but in the program it is trying to load pages from a file in that folder and is erroring. We looked at the log file and his routine in RXB to load pages into SAMS isn't even hitting the TIPI .. it's erroring without any log entries in the TIPI side.. Rich is going to post the assembly in another message if anyone can help there, I'm pretty useless in assembly Greg Thanks Greg, but this is GPL not Assembly: ********************************************************** * CALL PLOAD(pathstring) * ********************************************************** PLOAD DATA ISRON STRI 'PLOAD' DATA $+2 CALL COMB * ( ? BLOADL CALL MYSAL * Get pathname ST >05,V*PAD * LOAD opcode CALL MYDOIT * DSRLNK opcode MOVE >1000,V@>40(@PAD),@0(@TEMP) * COPY IT CEQ COMMAZ,@CHAT * COMMA? BS BLOADL * Yes loop BR PEEK5 * Done MYDOIT DST @PAD,@FAC12 * Get buffer address in VDP ADD 9,@FAC13 * Point to name length CALL LINK * DSRLNK GROM >0010 BYTE >08 BS ERRFE * File Error CLOG >E0,V@1(@PAD) * Set error bits BR ERRFE * File Error RTN MYSAL XML PGMCHR * Skip ( OR COMMA CALL SAMS4A * TEMP will have address XML COMPCT * Garbage collection VDP DCHE >1C81,@STREND * Enough VDP space? BR ERRSO * ERROR STACK OVERFLOW DST >0C00,@PAD * Buffer for BSAVE/BLOAD CALL STRGET * Pathstring CLR V*PAD * 0 BYTE MOVE >1080,V@0(@PAD),V@1(@PAD) * Ripple DST @PAD,@ARG * Get PAB address ADD >40,@ARG1 * Add in PAB buffer DST @ARG,V@2(@PAD) * Buffer address DST >1000,V@6(@PAD) * Number of bytes ST @FAC7,V@9(@PAD) * Length byte MOVE @FAC6,V*FAC4,V@10(@PAD) * Pathstring RTN ************************************************************ * CHECK FOR ")" AND END OF STATEMENT * IF ALL OK, THEN RETURN TO CALLER * GETCHR ALSO RETURNS TO HERE PEEK5 CEQ RPARZ,@CHAT BR ERRSYN XML PGMCHR Skip ")" CALL CHKEND BR ERRSYN CALL RETURN RETURN TO CALLER *********************************************************** STRGET CALL STRFCH CEQ >65,@FAC2 BR ERRSNM * STRING NUM MISMATCH RTN STRPAR XML PARSE BYTE RPARZ RTN **************************************************** * SAMS PAGES 2,3,A,B,C,D,E,F * * Get 2 and 3 numeric or A to F tokens * * input in CHAT is >C8 is numeric or must be token * * output TEMP has RAM ADDRESS of 4K page to save * **************************************************** SAMS4A DCLR @TEMP * Clear address storage CEQ >C8,@CHAT * NUMBER? BR SAMSAL * No must be 2 or 3 or A to F CALL STRPAR * Get number XML CFI * Convert to integer CHE 4,@FAC1 * 1 or higher BS ERRBA * ERROR BAD ARGUEMENT ST >20,@TEMP * Defualt address >2000 CEQ 2,@FAC1 * 2? BS SAMSP3 * Ok so done CHE 4,@FAC1 * 4 or higher? BS ERRBA * ERROR BAD ARGUEMENT ADD >10,@TEMP * Get address SAMSP3 RTN * RETURN * 24K ADDRESS PAGES SAMSAL CHE >47,@CHAT * G OR HIGHER BS ERRBA * ERROR BAD ARGUEMENT CHE >41,@CHAT * A OR HIGHER? BR ERRBA * ERROR BAD ARGUEMENT ST @CHAT,@ARG * Save TOKEN SUB >41,@ARG * 0 TO 5 ST >A0,@TEMP * Default address >A000 SAMSLP CZ @ARG * 0? BS SAMSD * RETURN ADD >10,@TEMP * >B000 TO >F000 DEC @ARG * 5 TO 1 B SAMSLP * LOOP FOREVER SAMSD XML PGMCHR * SKIP TOKEN RTN * RETURN *********************************************************** We got a FILE ERROR at 150 and here is the RXB program: 100 ! RXB SAMS LOADER DEMO 110 ! NO ASSEMBLY USED 120 ! PAGE 16 TO 36 USED 130 FOR A=1 TO 20 140 CALL SAMS(2,A+16) 150 CALL PLOAD(2,"DSK1.SCRN"&STR$(A)) 160 CALL MOVES("RV",2079,8192,0) 170 NEXT A 180 FOR A=1 TO 20 190 CALL SAMS(2,A+16) 200 CALL MOVES("RV",2079,8192,0) 210 NEXT A 220 GOTO 180 140 sets SAMS page number at >2000 150 Loads a program image file at >2000 As this works on any Hard Drive and Disk Controller I have no way to see why it crashed with a file error. Any help would be great, thanks. Quote Link to comment Share on other sites More sharing options...
+arcadeshopper Posted February 16, 2021 Share Posted February 16, 2021 I'm even more useless in gpl Sent from my LM-V600 using Tapatalk 1 1 Quote Link to comment Share on other sites More sharing options...
HOME AUTOMATION Posted February 16, 2021 Share Posted February 16, 2021 (edited) 2 hours ago, RXB said: I go to CALL TIPI put in any path into DSK1 or DSK2 or DSK3 or DSK4 and that path only responds to TIPI. or DSK0. and ignores the path. When I do a CALL TIPI again the path I put in is not the path but just a . (period) If I knew squat about doing a LOG I would post it. Pretend I am not a expert on TIPI but as a new user of one. How come no matter what path I put in it only does DSK0. or TIPI. as the path? Did you press (R)elaod, after setting a drive mapping path??? That is required to save changes ...I believe. Edited February 16, 2021 by HOME AUTOMATION 2 Quote Link to comment Share on other sites More sharing options...
GDMike Posted February 16, 2021 Share Posted February 16, 2021 I made my path string equal to 25 so that the user path can be located in sub folders on tipi as well. 1 Quote Link to comment Share on other sites More sharing options...
+arcadeshopper Posted February 16, 2021 Share Posted February 16, 2021 Did you press ®elaod, after setting a drive mapping path??? That is required to save changes ...I believe.Reload just verifies the settings takeWrite is what you need to do to write the changes to pi.configIf it's easier open pi.config in your editor of choice and then make the changes there and save itSent from my LM-V600 using Tapatalk 1 1 Quote Link to comment Share on other sites More sharing options...
RXB Posted February 17, 2021 Share Posted February 17, 2021 This is the program image file it crashed above to load, this is a TI DIR View File to show what is in file: [File header information] ------------------------- 00000000 07 54 49 46 49 4C 45 53 00 10 01 00 00 00 00 00 .TIFILES........ 00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000070 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ [File data] ----------- 00000000 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 ................ 00000010 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 ................ 00000020 C8 D5 D0 D5 C8 D5 C8 D5 D0 D5 D0 D5 D0 D5 D0 D5 ................ 00000030 D0 D5 D0 D5 C8 D5 C8 D5 D0 D5 C8 D5 C8 D5 D0 D1 ................ 00000040 C8 D0 C8 C8 C8 D0 C8 C8 C8 C8 C8 D0 C8 C8 C8 C8 ................ 00000050 C8 C8 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 ................ 00000060 C8 D5 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 D0 D0 D0 D0 ................ 00000070 D0 D0 D0 D0 D0 D0 D0 D0 C8 D0 D0 D0 D0 D0 D0 D1 ................ 00000080 C8 C8 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 ................ 00000090 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 ................ 000000A0 C8 D5 D0 D0 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 C8 D0 ................ 000000B0 C8 D0 D0 D0 D0 D0 D0 D0 D0 D0 D0 D0 D0 D0 D0 D1 ................ 000000C0 C8 D0 C8 C8 C8 D0 C8 C8 C8 C8 C8 D0 C8 D0 C8 C8 ................ 000000D0 C8 D0 C8 C8 C8 D0 C8 C8 C8 C8 C8 D0 C8 C8 C8 C8 ................ 000000E0 C8 D5 D0 D0 C8 D0 D0 D0 C8 D0 D0 D1 C8 D0 D0 D0 ................ 000000F0 C8 D0 D0 D0 C8 D0 C8 D0 C8 D3 D0 D0 C8 D2 D0 D1 ................ 00000100 C8 C8 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 C8 C8 C8 ................ 00000110 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 ................ 00000120 C8 D5 D0 D0 D0 D0 C8 D0 C8 D0 D0 D0 D0 D0 D0 D0 ................ 00000130 D0 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 D4 ................ 00000140 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 C8 C8 C8 C8 C8 ................ 00000150 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 ................ 00000160 C8 D5 C8 D0 C8 D0 D0 D0 C8 D0 D0 D0 D0 D0 C8 D0 ................ 00000170 C8 D0 C8 D3 D0 D0 D0 D0 C8 D4 C8 D0 C8 D0 C8 D4 ................ 00000180 C8 C8 C8 D0 C8 C8 C8 C8 C8 D0 C8 C8 C8 C8 C8 D0 ................ 00000190 C8 D0 C8 C8 C8 C8 C8 C8 C8 D0 C8 C8 C8 D0 C8 C8 ................ 000001A0 C8 D5 D0 D0 C8 D0 D0 D0 D0 D4 C8 D0 D0 D0 C8 D0 ................ 000001B0 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 C8 D2 ................ 000001C0 C8 D0 C8 C8 C8 D0 C8 C8 C8 C8 C8 D0 C8 D0 C8 D0 ................ 000001D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 ................ 000001E0 C8 D5 C8 D0 D0 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 ................ 000001F0 C8 D0 D0 D0 D0 D0 C8 D0 D0 D0 D0 D0 C8 D0 D0 D1 ................ 00000200 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 C8 C8 ................ 00000210 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 D0 C8 D0 C8 C8 ................ 00000220 C8 D5 C8 D0 C8 D5 D0 D0 C8 D0 C8 D0 D0 D0 C8 D0 ................ 00000230 D0 D0 D0 D0 D0 D0 D0 D0 C8 D0 D0 D0 C8 D0 D0 D1 ................ 00000240 C8 D0 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 ................ 00000250 C8 C8 C8 C8 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 C8 C8 ................ 00000260 C8 D5 D0 D0 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 D0 D0 ................ 00000270 C8 D0 D0 D0 D0 D0 C8 D0 C8 D0 C8 D0 D0 D0 D0 D1 ................ 00000280 C8 C8 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 C8 D0 C8 C8 ................ 00000290 C8 C8 C8 D0 C8 C8 C8 C8 C8 D0 C8 C8 C8 C8 C8 C8 ................ 000002A0 C8 D5 D0 D0 D0 D0 C8 D0 C8 D0 C8 D0 D0 D0 C8 D0 ................ 000002B0 D0 D0 D0 D0 C8 D0 D0 D0 C8 D0 D0 D0 D0 D0 D0 D1 ................ 000002C0 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 ................ 000002D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 ................ 000002E0 C8 D3 D0 D4 C8 D4 C8 D4 C8 D4 D0 D1 C8 D4 C8 D4 ................ 000002F0 C8 D3 D0 D3 D0 D4 C8 D3 D0 D3 D0 D4 C8 D4 C8 D4 ................ 00000300 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 ................ 00000310 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 ................ 00000320 C8 D5 D0 D5 C8 D5 C8 D5 C8 D5 D0 D5 D0 D5 C8 D5 ................ 00000330 C8 D5 C8 D5 D0 D5 C8 D5 C8 D5 D0 D5 C8 D5 D0 D1 ................ 00000340 C8 D0 C8 C8 C8 C8 C8 D0 C8 D0 C8 C8 C8 C8 C8 D0 ................ 00000350 C8 C8 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 C8 C8 ................ 00000360 C8 D5 D0 D0 D0 D0 C8 D0 C8 D0 D0 D0 D0 D0 C8 D0 ................ 00000370 D0 D0 C8 D0 D0 D0 C8 D0 C8 D0 C8 D0 D0 D0 D0 D1 ................ 00000380 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 C8 C8 C8 D0 C8 C8 ................ 00000390 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 C8 C8 C8 D0 ................ 000003A0 C8 D5 D0 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 ................ 000003B0 D0 D0 D0 D0 C8 D0 C8 D0 C8 D0 D0 D0 C8 D0 C8 D4 ................ 000003C0 C8 C8 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 ................ 000003D0 C8 C8 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 ................ 000003E0 C8 D5 D0 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 ................ 000003F0 C8 D0 C8 D0 D0 D0 C8 D0 C8 D0 D0 D0 C8 D0 D0 D1 ................ 00000400 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 ................ 00000410 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 C8 C8 C8 C8 D0 ................ 00000420 C8 D5 D0 D0 C8 D0 C8 D0 D0 D0 C8 D0 C8 D0 C8 D0 ................ 00000430 C8 D0 C8 D0 C8 D5 C8 D0 C8 D0 C8 D0 D0 D0 D0 D4 ................ 00000440 C8 D0 C8 C8 C8 D0 C8 C8 C8 C8 C8 C8 C8 D0 C8 D0 ................ 00000450 C8 C8 C8 D0 C8 C8 C8 C8 C8 D0 C8 C8 C8 D0 C8 C8 ................ 00000460 C8 D5 C8 D0 C8 D0 C8 D0 D0 D0 D0 D0 C8 D0 C8 D0 ................ 00000470 D0 D0 C8 D0 D0 D0 D0 D0 C8 D0 C8 D0 D0 D0 D0 D1 ................ 00000480 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 ................ 00000490 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 C8 C8 C8 C8 ................ 000004A0 C8 D4 C8 D0 D0 D0 C8 D0 D0 D2 C8 D0 C8 D0 D0 D0 ................ 000004B0 C8 D0 C8 D0 D0 D0 C8 D0 C8 D0 D0 D0 C8 D0 D0 D1 ................ 000004C0 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 C8 ................ 000004D0 C8 D0 C8 D0 C8 C8 C8 C8 C8 C8 C8 C8 C8 D0 C8 C8 ................ 000004E0 C8 D5 C8 D0 C8 D4 D0 D0 C8 D0 C8 D0 D0 D0 D0 D0 ................ 000004F0 D0 D0 C8 D0 D0 D0 D0 D0 D0 D1 C8 D0 C8 D0 D0 D2 ................ 00000500 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 C8 C8 C8 ................ 00000510 C8 D0 C8 C8 C8 C8 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 ................ 00000520 C8 D5 C8 D0 C8 D0 C8 D0 C8 D0 C8 D5 D0 D0 D0 D0 ................ 00000530 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 D0 D0 D0 D0 D0 D1 ................ 00000540 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 C8 C8 C8 C8 C8 D0 ................ 00000550 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 C8 C8 C8 C8 C8 C8 ................ 00000560 C8 D5 D0 D0 D0 D0 C8 D0 C8 D0 D0 D3 D0 D0 D0 D0 ................ 00000570 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 D0 D1 ................ 00000580 C8 C8 C8 C8 C8 C8 C8 D0 C8 C8 C8 C8 C8 C8 C8 C8 ................ 00000590 C8 D0 C8 C8 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 C8 D0 ................ 000005A0 C8 D5 C8 D0 D0 D0 C8 D0 C8 D0 D0 D0 D0 D0 D0 D0 ................ 000005B0 D0 D0 C8 D0 C8 D0 D0 D0 C8 D0 C8 D0 C8 D0 D0 D4 ................ 000005C0 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 C8 C8 D0 ................ 000005D0 C8 C8 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 C8 C8 C8 C8 ................ 000005E0 C8 D3 D0 D4 C8 D4 C8 D4 C8 D4 C8 D4 D0 D1 C8 D4 ................ 000005F0 C8 D3 D0 D3 D0 D4 C8 D4 C8 D4 C8 D4 D0 D1 D0 D1 ................ 00000600 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 ................ 00000610 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 ................ 00000620 C8 D5 C8 D5 C8 D5 D0 D5 C8 D5 D0 D5 D0 D5 C8 D5 ................ 00000630 D0 D5 D0 D5 D0 D5 D0 D5 C8 D5 C8 D5 C8 D5 D0 D1 ................ 00000640 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 C8 C8 D0 ................ 00000650 C8 C8 C8 C8 C8 C8 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 ................ 00000660 C8 D5 C8 D0 C8 D0 C8 D0 C8 D0 D0 D0 D0 D0 D0 D0 ................ 00000670 D0 D0 D0 D0 D0 D0 D0 D0 D0 D0 D0 D0 D0 D0 C8 D4 ................ 00000680 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 C8 D0 C8 C8 C8 C8 ................ 00000690 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 D0 C8 C8 C8 D0 ................ 000006A0 C8 D3 D0 D0 C8 D0 C8 D0 D0 D0 C8 D0 C8 D0 D0 D0 ................ 000006B0 D0 D0 D0 D0 D0 D0 C8 D0 D0 D0 C8 D0 C8 D0 D0 D4 ................ 000006C0 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 ................ 000006D0 C8 C8 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 C8 ................ 000006E0 C8 D5 C8 D0 C8 D0 C8 D0 D0 D0 C8 D0 C8 D0 C8 D0 ................ 000006F0 C8 D3 D0 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 D0 D1 ................ 00000700 C8 C8 C8 D0 C8 C8 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 ................ 00000710 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 C8 C8 C8 D0 ................ 00000720 C8 D5 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 C8 D0 C8 D0 ................ 00000730 D0 D0 C8 D0 D0 D0 C8 D0 C8 D0 C8 D0 D0 D0 C8 D4 ................ 00000740 C8 D0 C8 C8 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 ................ 00000750 C8 C8 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 C8 C8 C8 ................ 00000760 C8 D5 D0 D0 D0 D0 C8 D0 D0 D0 C8 D0 C8 D3 D0 D0 ................ 00000770 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 C8 D0 D0 D0 D0 D1 ................ 00000780 C8 C8 C8 C8 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 C8 C8 ................ 00000790 C8 D0 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 ................ 000007A0 C8 D5 C8 D0 D0 D0 D0 D0 C8 D0 C8 D0 D0 D0 D0 D0 ................ 000007B0 D0 D5 C8 D0 C8 D0 D0 D0 C8 D0 C8 D0 C8 D0 C8 D4 ................ 000007C0 C8 C8 C8 D0 C8 D0 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 ................ 000007D0 C8 C8 C8 C8 C8 C8 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 ................ 000007E0 C8 D5 C8 D0 C8 D0 C8 D0 D0 D0 C8 D0 D0 D0 D0 D0 ................ 000007F0 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 C8 D2 ................ 00000800 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 C8 C8 C8 C8 ................ 00000810 C8 D0 C8 D0 C8 C8 C8 D0 C8 C8 C8 C8 C8 C8 C8 D0 ................ 00000820 C8 D5 C8 D0 D0 D0 C8 D0 C8 D0 D0 D0 D0 D0 C8 D0 ................ 00000830 D0 D0 C8 D0 C8 D0 D0 D0 D0 D0 C8 D0 C8 D0 D0 D1 ................ 00000840 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 C8 C8 D0 C8 D0 ................ 00000850 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 ................ 00000860 C8 D5 C8 D0 C8 D0 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 ................ 00000870 C8 D3 D0 D0 C8 D0 C8 D0 D0 D4 C8 D0 D0 D0 C8 D2 ................ 00000880 C8 D0 C8 D0 C8 C8 C8 C8 C8 D0 C8 D0 C8 C8 C8 C8 ................ 00000890 C8 D0 C8 C8 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 ................ 000008A0 C8 D5 D0 D4 C8 D0 D0 D0 D0 D0 C8 D0 D0 D1 D0 D0 ................ 000008B0 C8 D4 C8 D0 C8 D0 D0 D0 C8 D0 C8 D5 C8 D0 D0 D1 ................ 000008C0 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 C8 C8 C8 C8 D0 ................ 000008D0 C8 D0 C8 C8 C8 C8 C8 C8 C8 D0 C8 D0 C8 C8 C8 C8 ................ 000008E0 C8 D4 C8 D3 D0 D4 C8 D4 C8 D3 D0 D3 D0 D3 D0 D4 ................ 000008F0 C8 D4 C8 D3 D0 D3 D0 D3 D0 D4 C8 D4 D0 D1 C8 C8 ................ 00000900 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 ................ 00000910 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 ................ 00000920 C8 D5 C8 D5 D0 D5 C8 D5 C8 D5 D0 D5 D0 D5 C8 D5 ................ 00000930 C8 D5 D0 D5 D0 D5 C8 D5 C8 D5 D0 D5 C8 D2 C8 C8 ................ 00000940 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 C8 C8 D0 ................ 00000950 C8 C8 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 C8 D0 C8 C8 ................ 00000960 C8 D5 C8 D0 C8 D0 D0 D0 C8 D2 C8 D0 C8 D0 D0 D0 ................ 00000970 C8 D0 D0 D0 D0 D0 D0 D0 D0 D0 C8 D0 D0 D0 D0 D1 ................ 00000980 C8 D0 C8 C8 C8 C8 C8 C8 C8 D0 C8 C8 C8 D0 C8 C8 ................ 00000990 C8 D0 C8 C8 C8 C8 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 ................ 000009A0 C8 D5 D0 D0 D0 D0 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 ................ 000009B0 D0 D0 C8 D0 D0 D0 C8 D0 D0 D0 C8 D2 C8 D0 D0 D1 ................ 000009C0 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 C8 C8 C8 D0 ................ 000009D0 C8 C8 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 ................ 000009E0 C8 D5 D0 D0 C8 D0 D0 D0 C8 D0 C8 D0 C8 D0 D0 D0 ................ 000009F0 D0 D0 D0 D0 C8 D0 C8 D0 D0 D0 D0 D0 C8 D0 D0 D1 ................ 00000A00 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 D0 C8 C8 ................ 00000A10 C8 D0 C8 D0 C8 D0 C8 C8 C8 C8 C8 C8 C8 C8 C8 D0 ................ 00000A20 C8 D5 D0 D5 C8 D0 D0 D1 C8 D2 D0 D0 C8 D0 C8 D0 ................ 00000A30 D0 D0 C8 D0 D0 D0 D0 D0 C8 D0 D0 D0 C8 D0 C8 D4 ................ 00000A40 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 C8 C8 C8 D0 ................ 00000A50 C8 C8 C8 C8 C8 C8 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 ................ 00000A60 C8 D5 D0 D0 C8 D0 C8 D0 D0 D0 C8 D0 C8 D0 D0 D0 ................ 00000A70 D0 D0 D0 D0 D0 D0 D0 D0 C8 D0 C8 D0 C8 D0 C8 D4 ................ 00000A80 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 ................ 00000A90 C8 C8 C8 C8 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 ................ 00000AA0 C8 D5 D0 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 ................ 00000AB0 D0 D0 D0 D0 D0 D0 C8 D0 C8 D0 C8 D0 D0 D0 C8 D4 ................ 00000AC0 C8 C8 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 ................ 00000AD0 C8 C8 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 C8 C8 C8 C8 ................ 00000AE0 C8 D5 D0 D0 C8 D0 C8 D0 C8 D0 C8 D0 D0 D0 C8 D0 ................ 00000AF0 C8 D0 C8 D0 D0 D0 C8 D0 C8 D0 D0 D0 D0 D0 D0 D1 ................ 00000B00 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 C8 C8 C8 C8 D0 ................ 00000B10 C8 D0 C8 D0 C8 C8 C8 D0 C8 C8 C8 C8 C8 C8 C8 C8 ................ 00000B20 C8 D5 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 D0 D0 D0 D0 ................ 00000B30 D0 D0 C8 D0 C8 D0 D0 D0 D0 D0 D0 D0 D0 D0 C8 D2 ................ 00000B40 C8 D0 C8 D0 C8 C8 C8 C8 C8 D0 C8 D0 C8 C8 C8 C8 ................ 00000B50 C8 C8 C8 D0 C8 C8 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 ................ 00000B60 C8 D5 D0 D0 D0 D0 D0 D0 C8 D0 C8 D0 D0 D0 C8 D0 ................ 00000B70 D0 D0 C8 D0 D0 D0 C8 D0 D0 D4 C8 D0 C8 D0 D0 D1 ................ 00000B80 C8 C8 C8 C8 C8 D0 C8 C8 C8 D0 C8 C8 C8 C8 C8 D0 ................ 00000B90 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 ................ 00000BA0 C8 D5 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 D0 D0 D0 D4 ................ 00000BB0 C8 D0 C8 D0 C8 D0 C8 D0 D0 D1 C8 D0 C8 D0 D0 D2 ................ 00000BC0 C8 C8 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 C8 C8 ................ 00000BD0 C8 D0 C8 D0 C8 D0 C8 C8 C8 D0 C8 C8 C8 C8 C8 D0 ................ 00000BE0 C8 C8 C8 D3 D0 D3 D0 D4 C8 D4 C8 D4 D0 D1 D0 D1 ................ 00000BF0 C8 D4 D0 D1 C8 D4 D0 D1 C8 D4 D0 D1 D0 D1 D0 D1 ................ 00000C00 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 ................ 00000C10 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 ................ 00000C20 C8 D5 C8 D2 D0 D5 D0 D5 D0 D5 C8 D5 C8 D5 C8 D3 ................ 00000C30 D0 D5 C8 D5 D0 D5 C8 D5 C8 D5 D0 D5 D0 D5 D0 D1 ................ 00000C40 C8 C8 C8 D0 C8 C8 C8 C8 C8 C8 C8 D0 C8 D0 C8 C8 ................ 00000C50 C8 D0 C8 C8 C8 C8 C8 D0 C8 C8 C8 C8 C8 C8 C8 C8 ................ 00000C60 C8 D5 D0 D0 C8 D0 D0 D0 C8 D0 C8 D0 C8 D0 C8 D0 ................ 00000C70 D0 D0 C8 D0 D0 D0 D0 D0 D0 D0 D0 D0 C8 D0 D0 D1 ................ 00000C80 C8 D0 C8 C8 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 C8 D0 ................ 00000C90 C8 C8 C8 C8 C8 D0 C8 C8 C8 C8 C8 C8 C8 D0 C8 D0 ................ 00000CA0 C8 D5 D0 D0 C8 D0 C8 D0 D0 D0 C8 D0 C8 D2 C8 D0 ................ 00000CB0 D0 D0 C8 D0 D0 D0 C8 D0 D0 D0 D0 D0 D0 D0 C8 D4 ................ 00000CC0 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 ................ 00000CD0 C8 D0 C8 D0 C8 C8 C8 D0 C8 C8 C8 C8 C8 C8 C8 C8 ................ 00000CE0 C8 D5 D0 D0 C8 D0 C8 D0 D0 D0 D0 D0 C8 D0 D0 D0 ................ 00000CF0 C8 D0 C8 D0 D0 D0 D0 D0 C8 D0 D0 D0 D0 D0 D0 D1 ................ 00000D00 C8 D0 C8 C8 C8 D0 C8 C8 C8 C8 C8 C8 C8 C8 C8 D0 ................ 00000D10 C8 D0 C8 C8 C8 C8 C8 C8 C8 D0 C8 C8 C8 C8 C8 C8 ................ 00000D20 C8 D5 C8 D0 D0 D0 C8 D0 D0 D0 D0 D0 D0 D0 D0 D0 ................ 00000D30 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 C8 D2 D0 D1 D0 D1 ................ 00000D40 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 C8 C8 C8 C8 C8 ................ 00000D50 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 D0 C8 C8 C8 C8 ................ 00000D60 C8 D5 C8 D0 D0 D0 D0 D0 C8 D0 C8 D0 D0 D0 D0 D0 ................ 00000D70 C8 D0 C8 D0 C8 D0 C8 D0 D0 D0 D0 D0 D0 D0 D0 D1 ................ 00000D80 C8 D0 C8 C8 C8 C8 C8 D0 C8 C8 C8 D0 C8 C8 C8 D0 ................ 00000D90 C8 C8 C8 D0 C8 D0 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 ................ 00000DA0 C8 D3 D0 D0 D0 D0 D0 D0 C8 D0 D0 D0 C8 D0 D0 D0 ................ 00000DB0 D0 D0 D0 D0 C8 D0 D0 D0 C8 D0 D0 D0 D0 D0 D0 D1 ................ 00000DC0 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8 ................ 00000DD0 C8 C8 C8 C8 C8 C8 C8 D0 C8 D0 C8 C8 C8 C8 C8 C8 ................ 00000DE0 C8 D5 D0 D0 D0 D3 D0 D0 D0 D0 D0 D0 C8 D0 D0 D0 ................ 00000DF0 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 C8 D0 D0 D0 D0 D1 ................ 00000E00 C8 D0 C8 C8 C8 C8 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 ................ 00000E10 C8 D0 C8 D0 C8 D0 C8 C8 C8 C8 C8 D0 C8 D0 C8 D0 ................ 00000E20 C8 D5 C8 D0 D0 D0 C8 D0 D0 D5 C8 D0 C8 D0 C8 D0 ................ 00000E30 D0 D0 C8 D0 C8 D0 D0 D0 C8 D0 D0 D0 C8 D0 C8 D4 ................ 00000E40 C8 D0 C8 D0 C8 C8 C8 C8 C8 D0 C8 C8 C8 D0 C8 C8 ................ 00000E50 C8 C8 C8 D0 C8 C8 C8 D0 C8 C8 C8 C8 C8 D0 C8 D0 ................ 00000E60 C8 D5 C8 D0 D0 D0 D0 D0 C8 D0 D0 D0 D0 D0 C8 D0 ................ 00000E70 D0 D0 C8 D0 D0 D0 C8 D0 D0 D0 D0 D0 C8 D0 C8 D4 ................ 00000E80 C8 D0 C8 C8 C8 C8 C8 D0 C8 C8 C8 C8 C8 C8 C8 D0 ................ 00000E90 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 C8 C8 C8 D0 C8 C8 ................ 00000EA0 C8 D5 D0 D0 D0 D0 D0 D0 D0 D0 C8 D0 D0 D0 C8 D0 ................ 00000EB0 C8 D4 C8 D0 D0 D0 C8 D0 C8 D0 C8 D0 D0 D0 D0 D1 ................ 00000EC0 C8 C8 C8 C8 C8 D0 C8 C8 C8 C8 C8 D0 C8 D0 C8 C8 ................ 00000ED0 C8 D0 C8 D0 C8 D0 C8 D0 C8 C8 C8 D0 C8 D0 C8 D0 ................ 00000EE0 C8 D3 D0 D3 D0 D4 C8 D3 D0 D3 D0 D4 C8 D3 D0 D3 ................ 00000EF0 D0 D4 C8 D4 C8 D4 C8 D3 D0 D3 D0 D4 C8 D4 C8 D4 ................ 00000F00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000F10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000F20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000F30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000F40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000F50 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000F60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000F70 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000F80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000F90 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000FA0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000FB0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000FC0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000FD0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000FE0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000FF0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ Quote Link to comment Share on other sites More sharing options...
+InsaneMultitasker Posted February 17, 2021 Share Posted February 17, 2021 8 hours ago, RXB said: 150 CALL PLOAD(2,"DSK1.SCRN"&STR$(A)) Is this statement hitting the floppy controller first instead of TIPI? What happens if you pull the floppy controller out of the box. Quote Link to comment Share on other sites More sharing options...
RXB Posted February 17, 2021 Share Posted February 17, 2021 2 hours ago, InsaneMultitasker said: Is this statement hitting the floppy controller first instead of TIPI? What happens if you pull the floppy controller out of the box. No as it is in GPL first it search's all the GPL DSR for the Device Name then it goes to ROM and searches. It uses the same exact DSR search as Editor Assembler Cart or XB cart same one, it just loads a Program Image File but does not need a header. Once in the VDP buffer the CALL PLOAD routine moves it to the correct RAM location. Therefore it works just it always has for RXB since 2001 when I wrote the routine and has worked for every device made up till now. I suspect TIPI is looking for a FILE HEADER LOCATION TO LOAD IT, but that is not needed as the routine takes care of it. Look this is the same as a XB program, TIPI does not tell it where to load XB programs or a CALL LOAD object file, so why does it need a file header? The reason for SAMS CALL PLOAD in RXB is to be able to move RAM or load RAM without restrictions as DATA does not care where it resides. Quote Link to comment Share on other sites More sharing options...
+9640News Posted February 17, 2021 Share Posted February 17, 2021 Rich, It is going to be important to provide some log files from the TIPI to know what is happening on the TIPI/PI side of things. Those log files will show what commands it is receiving, file attributes being received, PI responses, and more. One or two people may be GPL code aware, but it is those log files that can shed a lot of information. When you post a log file, describe the action your code is anticipated to do and what the results were. And when you do not get the expected result, immediately stop work on your TI, go to your PC and capture the log file so nobody is left figuring out where/when the code in question was called. Give us the filename(s) you expect were to be accessed as well. Tim and I worked on TIPI integration with MDOS and consulted with Matt as we pushed the boundaries further with the Geneve development. When we came across something when pushing the envelope, we then wrapped those results into a TI-99/4A Extended Basic program or example along with the log file entries on how to demonstrate the issue. You have to make the effort to get the log file entries in question posted, otherwise, there is little anyone can do to support you. Beery 1 Quote Link to comment Share on other sites More sharing options...
+arcadeshopper Posted February 17, 2021 Share Posted February 17, 2021 It's not hitting the TIPI at all. I posted that above Sent from my LM-V600 using Tapatalk 1 1 Quote Link to comment Share on other sites More sharing options...
+9640News Posted February 17, 2021 Share Posted February 17, 2021 If it is not hitting the TIPI at all, then the TIPI DSR isn't being hit. So, I looked at the header for the TIPI DSR. Rich, does your GPL code depend upon something at the highlighted section in the TIPI header? ; DSR ROM header AORG >4000 BYTE >AA ; Standard Header BYTE >01 ; version DATA >0000 ; # of application programs / reserved DATA pwrlnk ; power up list DATA >0000 ; user-program list (grom only) DATA tipilnk ; DSR list DATA basiclnk ; LVL2 DSRLNK & BASIC CALL subroutine list DATA >0000 ; interrupt list DATA >0000 ; something for groms... can't find docs. ; TIPI routine list - well known addresses for some custom exposure DATA recvmsg ; MOV @>4010,R0 BL *R0 to invoke recvmsg. DATA sendmsg ; MOV @>4012,R0 BL *R0 to invoke sendmsg. DATA vrecvmsg ; MOV @>4014,R0 BL *R0 to invoke recvmsg. DATA vsendmsg ; MOV @>4016,R0 BL *R0 to invoke sendmsg. DATA >0000 1 Quote Link to comment Share on other sites More sharing options...
+jedimatt42 Posted February 17, 2021 Author Share Posted February 17, 2021 1 hour ago, BeeryMiller said: If it is not hitting the TIPI at all, then the TIPI DSR isn't being hit. So, I looked at the header for the TIPI DSR. Rich, does your GPL code depend upon something at the highlighted section in the TIPI header? ; DSR ROM header AORG >4000 BYTE >AA ; Standard Header BYTE >01 ; version DATA >0000 ; # of application programs / reserved DATA pwrlnk ; power up list DATA >0000 ; user-program list (grom only) DATA tipilnk ; DSR list DATA basiclnk ; LVL2 DSRLNK & BASIC CALL subroutine list DATA >0000 ; interrupt list DATA >0000 ; something for groms... can't find docs. ; TIPI routine list - well known addresses for some custom exposure DATA recvmsg ; MOV @>4010,R0 BL *R0 to invoke recvmsg. DATA sendmsg ; MOV @>4012,R0 BL *R0 to invoke sendmsg. DATA vrecvmsg ; MOV @>4014,R0 BL *R0 to invoke recvmsg. DATA vsendmsg ; MOV @>4016,R0 BL *R0 to invoke sendmsg. DATA >0000 That is not relevant. RXB is doing a DSRLNK with list offset >08, so that should just be looking at the tipilnk/DSR list 1 1 Quote Link to comment Share on other sites More sharing options...
+jedimatt42 Posted February 17, 2021 Author Share Posted February 17, 2021 6 hours ago, RXB said: ... I suspect TIPI is looking for a FILE HEADER LOCATION TO LOAD IT, but that is not needed as the routine takes care of it. Look this is the same as a XB program, TIPI does not tell it where to load XB programs or a CALL LOAD object file, so why does it need a file header? ... What makes you think TIPI is doing this? By your own admission it doesn't do that for XB programs. I would like to hear an explanation of how you got to this assumption. If I were to make a guess I would expect it has to do with my notes here: https://github.com/jedimatt42/tipi/blob/master/hardware/dsr/devices.a99 TIPI may be using more of the GPL workspace registers than RXB allows for. It works with every other program that issues a LOAD, such as EA Option 5, TI BASIC, XB, Tunnels of Doom, Adventure, Force Command, DM2K, parts of RXB, so... (actually widespread and historical success is not an indicator of correctness. It just indicates a failure to fail) In your GPL code that you posted, the comments around your CALL LINK are wrong. They don't match your code. To read that code, I would need to know the addresses that your symbols refer to, and for the comments to be corrected. The thing that stands out, is the comment that indicates you are using the offset >10 ( LVL2 subprogram list ) to link to, when you are setting the offset to be >08 as expected for LVL3 IO. With precision, what are the values of @PAD, LINK, and the series of @FACxx symbols. What are the values of the other significant symbols? 1 Quote Link to comment Share on other sites More sharing options...
RXB Posted February 17, 2021 Share Posted February 17, 2021 4 hours ago, BeeryMiller said: If it is not hitting the TIPI at all, then the TIPI DSR isn't being hit. So, I looked at the header for the TIPI DSR. Rich, does your GPL code depend upon something at the highlighted section in the TIPI header? ; DSR ROM header AORG >4000 BYTE >AA ; Standard Header BYTE >01 ; version DATA >0000 ; # of application programs / reserved DATA pwrlnk ; power up list DATA >0000 ; user-program list (grom only) DATA tipilnk ; DSR list DATA basiclnk ; LVL2 DSRLNK & BASIC CALL subroutine list DATA >0000 ; interrupt list DATA >0000 ; something for groms... can't find docs. ; TIPI routine list - well known addresses for some custom exposure DATA recvmsg ; MOV @>4010,R0 BL *R0 to invoke recvmsg. DATA sendmsg ; MOV @>4012,R0 BL *R0 to invoke sendmsg. DATA vrecvmsg ; MOV @>4014,R0 BL *R0 to invoke recvmsg. DATA vsendmsg ; MOV @>4016,R0 BL *R0 to invoke sendmsg. DATA >0000 No my DSR is exactly the same as the how Editor Assembler works, I posted the code you can see it is exactly the same. The only difference is I am not looking for a header on the file as I do not care if it has one, just the name. The reason I do not need a header is the header says how long the file is, but look at what is posted it shows >1001 file size so it is right size but I do not check that just the name. Also a file header normally has the address where to load and again that is not needed. If the name is wrong it just errors out. This is the most simplified loader and saver anyone could right. 4K size Program Image File, no header just filename. Again this has been used since RXB 2001, so not a new thing or use. Quote Link to comment Share on other sites More sharing options...
RXB Posted February 17, 2021 Share Posted February 17, 2021 2 hours ago, jedimatt42 said: What makes you think TIPI is doing this? By your own admission it doesn't do that for XB programs. I would like to hear an explanation of how you got to this assumption. If I were to make a guess I would expect it has to do with my notes here: https://github.com/jedimatt42/tipi/blob/master/hardware/dsr/devices.a99 TIPI may be using more of the GPL workspace registers than RXB allows for. It works with every other program that issues a LOAD, such as EA Option 5, TI BASIC, XB, Tunnels of Doom, Adventure, Force Command, DM2K, parts of RXB, so... (actually widespread and historical success is not an indicator of correctness. It just indicates a failure to fail) In your GPL code that you posted, the comments around your CALL LINK are wrong. They don't match your code. To read that code, I would need to know the addresses that your symbols refer to, and for the comments to be corrected. The thing that stands out, is the comment that indicates you are using the offset >10 ( LVL2 subprogram list ) to link to, when you are setting the offset to be >08 as expected for LVL3 IO. With precision, what are the values of @PAD, LINK, and the series of @FACxx symbols. What are the values of the other significant symbols? Thanks but RXB is not using a CALL LINK, it not ASSEMBLY ACCESS maybe that is the confusion this is GPL ONLY there is no Assembly used. RXB 2020 SOURCE is out there but I can include the source in PC Text. This is a list of the EQUATES from what is already posted: * List of Equates ****************************************************** * GPL address * LINK EQU >0010 ****************************************************** * Equates for XMLs CFI EQU >12 CONVERT FLOATING POINT TO INTEGER COMPCT EQU >70 PREFORM A GARBAGE COLLECTION PARSE EQU >74 Parse a value PGMCHR EQU >79 GET PROGRAM CHARACTER ********************************************************** * PAD EQU >8300 Temporary area TEMP EQU >8316 FLAG BITS STREND EQU >831A String space ending CHAT EQU >8342 Current charater/token * FAC EQU >834A FAC1 EQU FAC+1 FAC2 EQU FAC+2 FAC4 EQU FAC+4 FAC6 EQU FAC+6 FAC7 EQU FAC+7 FAC12 EQU FAC+12 FAC13 EQU FAC+13 * ARG EQU >835C Floating-point ARGument ARG1 EQU ARG+1 ********************************************************** ERRSYN CALL ERRZZ * SYNtax error BYTE 3 ERRSO CALL ERRZZ * Stack Overflow BYTE 12 ERRBA CALL ERRZZ * Bad Argument BYTE 28 *********************************************************** * ERRZZ - Sets up an error stack entry based upon the * information passed to it by the caller and what it can * gather from the error table. It then either prints the * error message and aborts or goes to the line specified by * a previously executed ON ERROR statement. The stack enrry * looks like: * --------------------------------------------------------- * | Error code | Severity | >69 | Luno # | EXTRAM | PGMPTR * | ^ | ^ | ^ | ^ | ^ | ^ * | FAC | FAC1 | FAC2| FAC3 | FAC4 | FAC6 *---------------------------------------------------------- * ERROR CODE - the error number * SEVERITY - Severity of the error * 1 - Warning * 5 - Possibly recoverable * 9 - Fatal, unrecoverable * >69 ERROR STACK ENTRY ID * LUNO # - Luno # if file error or -1 if non-file error * EXTRAM, PGMPTR - Information to indicate the line # of * the error ************************************************************ RXB2020C TEXT.zip Quote Link to comment Share on other sites More sharing options...
RXB Posted February 17, 2021 Share Posted February 17, 2021 5 hours ago, BeeryMiller said: If it is not hitting the TIPI at all, then the TIPI DSR isn't being hit. So, I looked at the header for the TIPI DSR. Rich, does your GPL code depend upon something at the highlighted section in the TIPI header? ; DSR ROM header AORG >4000 BYTE >AA ; Standard Header BYTE >01 ; version DATA >0000 ; # of application programs / reserved DATA pwrlnk ; power up list DATA >0000 ; user-program list (grom only) DATA tipilnk ; DSR list DATA basiclnk ; LVL2 DSRLNK & BASIC CALL subroutine list DATA >0000 ; interrupt list DATA >0000 ; something for groms... can't find docs. ; TIPI routine list - well known addresses for some custom exposure DATA recvmsg ; MOV @>4010,R0 BL *R0 to invoke recvmsg. DATA sendmsg ; MOV @>4012,R0 BL *R0 to invoke sendmsg. DATA vrecvmsg ; MOV @>4014,R0 BL *R0 to invoke recvmsg. DATA vsendmsg ; MOV @>4016,R0 BL *R0 to invoke sendmsg. DATA >0000 Berry just to fill you in on DSR set up in GROMs: [0467] *********************************************************** [0468] * GROM HEADER [0469] *********************************************************** [0470] GROM >6000 [0471] AORG 0 [0472] 6000 AA,14 DATA >AA14 * VALID GROM / VERSION 20 [0473] 6002 01,00 DATA >0100 * (FUTURE EXPANSION) [0474] 6004 00,00 DATA >0000 * POWERUP [0475] 6006 63,3B DATA XBCART * PROGRAMS [0476] 6008 00,00 DATA >0000 * DSR [0477] 600A A0,26 DATA LINK1 * CALL [0478] 600C 00,00 DATA >0000 * INTERUPT [0479] 600E 00,00 DATA >0000 * BASIC CALL Hmm LINK1 is the name picked by TI originally it is not a CALL LINK for assembly like EA or XB. It just as easily could be CRAP1 or JUNK1 so do not mistake this for Assembly. XB CALL and BASIC CALL had different set up for headers to subprograms. Quote Link to comment Share on other sites More sharing options...
+9640News Posted February 17, 2021 Share Posted February 17, 2021 8 minutes ago, RXB said: Berry just to fill you in on DSR set up in GROMs: [0467] *********************************************************** [0468] * GROM HEADER [0469] *********************************************************** [0470] GROM >6000 [0471] AORG 0 [0472] 6000 AA,14 DATA >AA14 * VALID GROM / VERSION 20 [0473] 6002 01,00 DATA >0100 * (FUTURE EXPANSION) [0474] 6004 00,00 DATA >0000 * POWERUP [0475] 6006 63,3B DATA XBCART * PROGRAMS [0476] 6008 00,00 DATA >0000 * DSR [0477] 600A A0,26 DATA LINK1 * CALL [0478] 600C 00,00 DATA >0000 * INTERUPT [0479] 600E 00,00 DATA >0000 * BASIC CALL Hmm LINK1 is the name picked by TI originally it is not a CALL LINK for assembly like EA or XB. It just as easily be CRAP1 or JUNK1 so do not mistake this for Assembly. Rich, I appreciate your postings, however I will be the first to tell you I pretty much understand nothing about GPL. Greg indicated there was nothing in the logs, so the code wasn't hitting the TIPI or at least not hitting the log file. Even with a poorly constructed PAB, at least what I have seen on the Geneve/TIPI side of things, there would still be a log entry even if the PI could not process it unless the process for logging itself got hung up itself. I will say this with some of the things Tim and I have tested, we have come across situations where things were working fine with certain functions, then things stopped working that should have worked and we were really scratching our heads disbelieving a code change would have that impact. This was caused by bad code on our side the PI could not process resulting in a lockup, and some of those times were not recorded in the log file because of the processes that got hung up on the PI side of things because that kind of error was never anticipated. It does not hurt if you have the capability, to have an occasional PI reboot to at least test and view the log file to confirm the file logged your most recent actions when you think something you are testing should have worked. I have seen more than one time when things were not being saved in the log file because of a bad pab request when code went through several layers of translation. Then, you think you are not hitting the TIPI, but you actually are with good code, but processes are having issues because of a previous poor construct of code. Matt has been really good addressing those kinds of issues with the more obscure functionality. Tim has an assembly tool that writes to the RS232 directly to understand what information is being passed and received in the development efforts on the Geneve that uses a Windows terminal on the receiving end. I don't know if you have the ability to do something in GPL that would create similar functionality or not but may be worth exploring if you don't have something already. Beery 1 Quote Link to comment Share on other sites More sharing options...
GDMike Posted February 17, 2021 Share Posted February 17, 2021 (edited) For what it's worth, when I was working on SNP and trying to get the DSR to cooperate, and which I finally was able to do saves and loads on to tipi shared drives, but then my tipi clock quit working, it had been working for months with no issues I thought for sure I have a PAB conflict, it turned out that the tipi clock routine I was using was using a number 9 in the description of the text length which was also a 9 but it caught my attention, and so I threw a 10 and replace the nine in there and I added a space at the end of the file name and it fixed my tipi clock issue but what I'm trying to say is it had nothing to do with my PAB for my DSR but just showed up when I was having to be working on the DSR for my saves so crap can happen I guess out of the blue when even and odd addresses don't see eye to I. Edited February 17, 2021 by GDMike 1 Quote Link to comment Share on other sites More sharing options...
+Lee Stewart Posted February 17, 2021 Share Posted February 17, 2021 3 hours ago, jedimatt42 said: In your GPL code that you posted, the comments around your CALL LINK are wrong. They don't match your code. To read that code, I would need to know the addresses that your symbols refer to, and for the comments to be corrected. The thing that stands out, is the comment that indicates you are using the offset >10 ( LVL2 subprogram list ) to link to, when you are setting the offset to be >08 as expected for LVL3 IO. >10 (the value of LINK) is not a reference to the DSR’s list, but rather the address in the branch table, near the beginning of GROM0, of the DSRLNK branch: Spoiler ******************************************************************************** * * * CONSOLE GROM 0 ANALYSIS TI99/4A * * * * 9.6.84 H. Martin * * * ******************************************************************************** Header: 0000 : DATA >AA02 Header 0002 : DATA >0000 0004 : DATA >0000 Power-up (isn't here) 0006 : DATA >0000 Program (isn't here) 0008 : DATA >1310 DSR 000A : DATA >1320 Subroutine 000C : DATA >0000 Interrupt (isn't here) 000E : DATA >0000 Jump table: 0010 : BR GROM@>03D9 GROM DSRLNK <<<------<<< 0012 : BR GROM@>0439 GSR return . . . The BYTE (>08) following the CALL is the DSR’s reference to level 3 routines, I believe. ...lee 1 Quote Link to comment Share on other sites More sharing options...
+Lee Stewart Posted February 17, 2021 Share Posted February 17, 2021 1 hour ago, RXB said: Thanks but RXB is not using a CALL LINK, it not ASSEMBLY ACCESS maybe that is the confusion this is GPL ONLY there is no Assembly used. RXB is, in fact using a “CALL LINK”. It just happens to be a GPL subroutine branch instruction to a GROM0 address labelled “LINK” rather than a Basic call to Assembly Language Code (ALC). And, not to put too fine a point on it, but ALC is most certainly used by RXB in that the GROM0’s GPL DSRLNK calls the console ROM0’s DSRLNK code. It is from that ALC that the DSR ROM’s code is searched and, if found, is executed. Of course, if it is not found in a DSR ROM, GROM headers are searched, etc. ...lee 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.