Omega-TI Posted February 6, 2014 Share Posted February 6, 2014 I have a question for you software gods concerning Telco.... I know Telco has a 40/80 column toggle feature. The toggles coding checks for a 9938 or 9958, if none is present, it stays in 40 column mode, correct? Now if I understand correctly, the F18A does not functionally display things differently in text mode than the other 80 column cards, but just has less memory? Am I right here? I also believe I read somewhere that the F18A's memory *IS* adequate for 80 columns TEXT display. I know Tursi was able to tweak BA-Writer with no issues. If such is the case, would it not just be possible to just force the toggle to on, or to functionally bypass or erase the code that checks for the 9938 or 9958? It would be interesting to see what the result would be. I'm not an Uber Coder like you guys, but I have a 'gut feeling' that a couple of bytes in the right spot with a sector editor would make Telco 80 column 'full time only'. Comments? Solutions? Fixes? Results? Quote Link to comment Share on other sites More sharing options...
eck Posted February 6, 2014 Share Posted February 6, 2014 You are right, that this checking-code can be skipped, to run Telco within the 80 col mode. I do not know anything about Telco, so have in mind, that the V9938 has a second color register and a table to put blinking chars on screen. If this program uses such features, than this would become a harder job to change for F18 use, I do believe. If it is a program like PrEditor, than a Diskassembler is your friend to find the code section to be jumped over. 1 Quote Link to comment Share on other sites More sharing options...
+Lee Stewart Posted February 7, 2014 Share Posted February 7, 2014 @--- Ω ---: I don't know whether Telco uses the extra memory that a 9938 can have; but, in 80-column text mode, it doesn't need any more memory than what is in the 9918A and F18A—it just needs to set the first 15 VDP registers properly (the 9918A only has 8 ) so that both the 9938 and F18A can use 80 column mode with no blinking characters allowed. The only other issues are (1) insuring that the Value Stack and PABs are relocated elsewhere in VRAM if Telco uses them; (2) blanking the extra 960 bytes of screen VRAM (probably already handled if Telco thinks it's using a 9938) and (3) insuring that constants for SCREEN-END and SCREEN-WIDTH are changed to 1920 and 80, respectively, wherever they may be stored (again, probably already handled if Telco goes down the 9938 path). ...lee 1 Quote Link to comment Share on other sites More sharing options...
Omega-TI Posted February 7, 2014 Author Share Posted February 7, 2014 You are right, that this checking-code can be skipped, to run Telco within the 80 col mode. I do not know anything about Telco, so have in mind, that the V9938 has a second color register and a table to put blinking chars on screen. If this program uses such features, than this would become a harder job to change for F18 use, I do believe. If it is a program like PrEditor, than a Diskassembler is your friend to find the code section to be jumped over. Telco is a two color only program. I have mine set to BLUE & WHITE, although I've started using Rasmus' new PAL program as it really improves the contrast. I do not remember Telco using ever using blinking characters, certainly not any color with the ANSI, so hopefully the job might be easier than we think. <crossing fingers> Quote Link to comment Share on other sites More sharing options...
+Torrax Posted February 8, 2014 Share Posted February 8, 2014 Telco with a 9938/58 will use the extra memory for overlays and buffers (It's mentioned in the documentation). So a hack for the F18 would be tricky to do. Is Art Green still around?? If so maybe he can release Telco's source code. Quote Link to comment Share on other sites More sharing options...
eck Posted February 8, 2014 Share Posted February 8, 2014 (edited) Hello, --- Omega ---! The message from Torrax is not so good. Lee is right, but I tried to say, that you might loose some "information". So on second thought, it would only be color- and or blinking-information. If you have the time, you might check this code with your F18 console: DEF START START LWPI >8300 LI 0,TEXT80 LI 1,20 TMODE MOVB *0+,@>8C02 DEC 1 JNE TMODE setting 10 VDP registers MOVB @TEXT80+2,@>83D4 LI 0,>4000 VDP RAM >0000 with write bit LI 1,>2A00 clearing the screen LI 2,80*24 with stars (>2A00) BL @UP CLEAR MOVB 1,@>8C00 DEC 2 JNE CLEAR done? LI 0,>5000 VDP RAM >1000 with write bit LI 1,160 clearing the first 160 BL @UP bytes of the color table BL @BLINK SETO 2 set 10*8 characters to one LI 1,10 BL @BLINK one line uses VR12 and VR13 INV 2 clear the rest of the color table LI 1,70 BL @BLINK LI 0,>4460 first message prints on VDP 14*80 LI 1,MESS LI 2,54 place the byte count of your first message here BL @UP BL @MESSL1 LI 0,>4500 second message @ line 16 LI 1,MESS2 LI 2,73 and here for your second message BL @UP BL @MESSL1 LIMI 2 make quit working? ENDLOS JMP ENDLOS MESSL1 MOVB *1+,@>8C00 writes data to VRAM DEC 2 JNE MESSL1 RT BLINK MOVB 2,@>8C00 fixed data to VRAM DEC 1 JNE BLINK RT UP MOVB @>8301,@>8C02 VWTR MOVB 0,@>8C02 RT TEXT80 DATA >0480,>7081,>0382,>4783,>0184,>F487,>0888,>0289 ten Video-Register DATA >1E8C,>108D here MESS TEXT 'Ich verzichte hier bewusst auf den Text:' place your own text here BYTE 34 TEXT 'Hallo Welt!' BYTE 34 end text one MESS2 TEXT 'Nanu?' place your second text here TEXT ' Wollte ich nicht auf die Darstellung von ' BYTE 34 TEXT 'Hallo Welt!' BYTE 34 TEXT ' verzichten!?' end of line 16 ENDE END START The program needs the E/A-module, because it is expecting a character set at >0800 in VRAM. Make a crash test, if you like. The second message prints in black and graywith a V9938 in place - no blinking here (VR13 is set to one and zero >10). With the setup above only 16k Ram in the VRAM are seen with the VSBW, VMBW, VSBR and VMBR routines, which is important for the functionality of DSRLNK's, PAB's and stuff like this. Three quarter of the 64k VRAM are separated in pretty useless 3 byte chunks. To benefit from the two other 64k VRAM pages Telco needs special access routines which should crash your system even when they try to read or write to the first 16k VRAM. I can post a routine to test this, if you would like to check this too. Edited February 11, 2014 by eck 1 Quote Link to comment Share on other sites More sharing options...
Omega-TI Posted February 8, 2014 Author Share Posted February 8, 2014 (edited) Hello, --- Omega ---! The message from Torrax is not so good. Lee is right, but I tried to say, that you might loose some "information". So on second thought, it would only be color- and or blinking-information. If you have the time, you might check this code with your F18 console: DEF START START LWPI >8300 LI 0,TEXT80 LI 1,20 TMODE MOVB *0+,@>8C02 DEC 1 JNE TMODE setting 10 VDP registers MOVB @TEXT80+2,@>83D4 LI 0,>4000 VDP RAM >0000 with write bit LI 1,>2A00 clearing the screen LI 2,80*24 with stars (>2A00) BL @UP CLEAR MOVB 1,@>8C00 DEC 2 JNE CLEAR done? LI 0,>5000 VDP RAM >1000 with write bit LI 1,160 clearing the first 160 BL @UP bytes of the color table BL @BLINK SETO 2 set 10*8 characters to one LI 1,10 BL @BLINK one line uses VR12 and VR13 INV 2 clear the rest of the color table LI 1,70 BL @BLINK LI 0,>4460 first message prints on VDP 14*80 LI 1,MESS LI 2,54 place the byte count of your first message here BL @UP BL @MESSL1 LI 0,>4500 second message @ line 16 LI 1,MESS2 LI 2,73 and here for your second message BL @UP BL @MESSL1 LIMI 2 make quit working? ENDLOS JMP ENDLOS MESSL1 MOVB @*1+,@>8C00 writes data to VRAM DEC 2 JNE 2 RT BLINK MOVB 2,@>8C00 fixed data to VRAM DEC 1 JNE BLINK RT UP MOVB @>8301,@>8C02 VWTR MOVB 0,@>8C02 RT TEXT80 DATA >0480,>7081,>0382,>4783,>0184,>F487,>0888,>0289 ten Video-Register DATA >1E8C,>108D here MESS TEXT 'Ich verzichte hier bewusst auf den Text:' place your own text here BYTE 34 TEXT 'Hallo Welt!' BYTE 34 end text one MESS2 TEXT 'Nanu?' place your second text here TEXT ' Wollte ich nicht auf die Darstellung von ' BYTE 34 TEXT 'Hallo Welt!' BYTE 34 TEXT ' verzichten!?' end of line 16 ENDE END START The program needs the E/A-module, because it is expecting a character set at >0800 in VRAM. Make a crash test, if you like. The second message prints in black and graywith a V9938 in place - no blinking here (VR13 is set to one and zero >10). With the setup above only 16k Ram in the VRAM are seen with the VSBW, VMBW, VSBR and VMBR routines, which is important for the functionality of DSRLNK's, PAB's and stuff like this. Three quarter of the 64k VRAM are separated in pretty useless 3 byte chunks. To benefit from the two other 64k VRAM pages Telco needs special access routines which should crash your system even when they try to read or write to the first 16k VRAM. I can post a routine to test this, if you would like to check this too. I would dearly love to, but I'm man enough to admit my faults, and my major fault? I don't know diddly squat about assembly language programming. It all looks Greek to me. I would REALLY, REALLY prefer to use Telco, as it's the one I used in the past and after playing with it few a few minutes it all came back to me. I'll be happy to check ANYTHING that is assembled and ready to test! ---- THANKS! ** I tried to assemble it, but it comes back with one error, a syntax one on line 37. Edited February 8, 2014 by --- Ω --- Quote Link to comment Share on other sites More sharing options...
jacquesg Posted February 8, 2014 Share Posted February 8, 2014 Telco with a 9938/58 will use the extra memory for overlays and buffers (It's mentioned in the documentation). So a hack for the F18 would be tricky to do. Is Art Green still around?? If so maybe he can release Telco's source code. Art Green was not the author of Telco. Charles Earl was. Both were former members of the Ottawa TI Users Group. I have no idea if either one is still around. Jacques Quote Link to comment Share on other sites More sharing options...
Omega-TI Posted February 9, 2014 Author Share Posted February 9, 2014 Did I do something wrong here? I'm not familiar enough to see what the error is... Quote Link to comment Share on other sites More sharing options...
Asmusr Posted February 9, 2014 Share Posted February 9, 2014 You need to change: MOVB @*1+,@>8C00 To: MOVB *1+,@>8C00 2 Quote Link to comment Share on other sites More sharing options...
Omega-TI Posted February 9, 2014 Author Share Posted February 9, 2014 You need to change: MOVB @*1+,@>8C00 To: MOVB *1+,@>8C00 Thank you Rasmus, I did that. It compiled and ran. I got the same exact result on my F18A as I did in Classic99, here it is: The blank is just the .gif starting over. That's all I get. Quote Link to comment Share on other sites More sharing options...
+InsaneMultitasker Posted February 9, 2014 Share Posted February 9, 2014 Thank you Rasmus, I did that. It compiled and ran. I got the same exact result on my F18A as I did in Classic99, here it is: The blank is just the .gif starting over. That's all I get. A quick glance at the code shows what appears to be a typo here: MESSL1 MOVB @*1+,@>8C00 writes data to VRAM DEC 2 JNE 2 Change the above JNE 2 to "JNE MESSL1" then recompile and rerun. So the code looks like this: MESSL1 MOVB @*1+,@>8C00 writes data to VRAM DEC 2 JNE MESSL1 Quote Link to comment Share on other sites More sharing options...
+Torrax Posted February 9, 2014 Share Posted February 9, 2014 Art Green was not the author of Telco. Charles Earl was. Both were former members of the Ottawa TI Users Group. I have no idea if either one is still around. Jacques Oops... your right there, I just quoted the wrong name. The usage of memory is on page 7 under Hardware Requirements. Here is the section on overlay usage: On a basic system, up to 3 overlays will reside for use within memory. These will be the last 3 overlays used. If a minimem is used, 4 overlays are available. If a supercart or Super Space is used, 5 overlays are possible. With a 32K Super Space II, as many as 11 modules are available. A TI with an 80-column card will support 27 modules, and a Geneve will support 29. TELCO will automatically detect which type of cartridge is in use and configure the system accordingly. Quote Link to comment Share on other sites More sharing options...
Omega-TI Posted February 9, 2014 Author Share Posted February 9, 2014 A quick glance at the code shows what appears to be a typo here: MESSL1 MOVB @*1+,@>8C00 writes data to VRAM DEC 2 JNE 2 Change the above JNE 2 to "JNE MESSL1" then recompile and rerun. So the code looks like this: MESSL1 MOVB @*1+,@>8C00 writes data to VRAM DEC 2 JNE MESSL1 Adding the "MESSL1" resulted in no change. Having the @ before the *1+,@>8C00 results in a compile error. I basically have no clue what I'm doing... Quote Link to comment Share on other sites More sharing options...
+mizapf Posted February 9, 2014 Share Posted February 9, 2014 It's *1+ or *R1+, not @*1+. (If you prefix the register numbers with an R, do not forget to add the "R" option when assembling.) 1 Quote Link to comment Share on other sites More sharing options...
Omega-TI Posted February 9, 2014 Author Share Posted February 9, 2014 It's *1+ or *R1+, not @*1+. (If you prefix the register numbers with an R, do not forget to add the "R" option when assembling.) "*1+" worked, "*R1+" results in an INVALID REGISTER..... Quote Link to comment Share on other sites More sharing options...
+Lee Stewart Posted February 9, 2014 Share Posted February 9, 2014 "*1+" worked, "*R1+" results in an INVALID REGISTER..... As @mizapf said—to use *R1+, you must include the 'R' option when assembling. That's a good idea because it makes for much clearer code. All the 'R' option does is to include 16 EQUates for register mnemonics at the beginning of your program: R0 EQU 0 R1 EQU 1 . . . R15 EQU 15 ...lee 1 Quote Link to comment Share on other sites More sharing options...
+InsaneMultitasker Posted February 9, 2014 Share Posted February 9, 2014 Adding the "MESSL1" resulted in no change. Having the @ before the *1+,@>8C00 results in a compile error. I basically have no clue what I'm doing... Sorry, I saw that the "@" sign error was corrected earlier and didn't think of correcting it in my reply. Quote Link to comment Share on other sites More sharing options...
Omega-TI Posted February 9, 2014 Author Share Posted February 9, 2014 Sorry, I saw that the "@" sign error was corrected earlier and didn't think of correcting it in my reply. No problem, anyway it compiled and ran (I assume as intended). Quote Link to comment Share on other sites More sharing options...
Omega-TI Posted February 9, 2014 Author Share Posted February 9, 2014 I guess that answers the question of whether Telco would be able to display two colored text in 80 columns with the F18A. Yesssssss! I could easily live without the color and flashing text if I had to. On modern BBS's though, not having 80 columns is a major handicap. THANKS GUYS FOR ALL YOUR HELP! -- Now HOPE for a modified Telco can live on! 1 Quote Link to comment Share on other sites More sharing options...
+InsaneMultitasker Posted February 9, 2014 Share Posted February 9, 2014 I guess that answers the question of whether Telco would be able to display two colored text in 80 columns with the F18A. Yesssssss! I could easily live without the color and flashing text if I had to. On modern BBS's though, not having 80 columns is a major handicap. THANKS GUYS FOR ALL YOUR HELP! -- Now HOPE for a modified Telco can live on! One other option at least for the Hidden Reef and Heatwave - both have 40-column output modes. Turn on the ibm graphics, set to 40, and you'll be fine. The option is on the main menu. 1 Quote Link to comment Share on other sites More sharing options...
eck Posted February 11, 2014 Share Posted February 11, 2014 Oops! Sorry, --- Ω ---, for the trouble I made. Thanks to RasmusM and InsaneMultitasker for their help. Wow, Telco is a masterpiece according to what Torrax wrote. This auto detect features are super cool. After your system is scanned You have to modify the section where Telco is going into the 40 column mode but forcing the program to use the 80 col-setup with all these settings Lee mentioned in post #3 and return from there into the 40 col-section. You have to fool Telco here. If there is a way to separate the screen display routine from these overlay routines Torrax was referring to, than I can see a 'freeway' (to go). If not: somebody has to rewrite Telco for F18 users. And this should be a long road or so... Quote Link to comment Share on other sites More sharing options...
Omega-TI Posted May 11, 2014 Author Share Posted May 11, 2014 Telco has the ability to print it's manual from diskette, which was great "back in the day" if you had a compatible printer hooked up to your computer... Well, that day is long gone, but it would be cool to still have a manual, so I was wondering, has anyone ever scanned/copied a printed out manual into .PDF format? If so, do you know where it could be obtained? Quote Link to comment Share on other sites More sharing options...
slinkeey Posted May 11, 2014 Share Posted May 11, 2014 Telco has the ability to print it's manual from diskette, which was great "back in the day" if you had a compatible printer hooked up to your computer... Well, that day is long gone, but it would be cool to still have a manual, so I was wondering, has anyone ever scanned/copied a printed out manual into .PDF format? If so, do you know where it could be obtained? Can't you print it via HDX? Quote Link to comment Share on other sites More sharing options...
Omega-TI Posted May 11, 2014 Author Share Posted May 11, 2014 Can't you print it via HDX? Well, my copy of Telco no longer has the documentation, so I'm unable to do that. If I was to print it myself, I'd probably send it to "HDX1.TELCODOC" then import it into WORD, tweak the formatting and possibly even add photos, then save it as a PDF before printing and uploading it. But at the moment, I cannot do jack shhhhhhhhhhhhhhhhhh... 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.