Jump to content
BeeryMiller

After Hours BBS Program

Recommended Posts

After I sent out that update last night, I have always had a bit of frustration with just 40 columns.  I have tried numerous approaches to implement an 80 column caller display to the BBS using some string handling display code that was in the original source.  Things would never display properly.

 

Last night, I got an idea of using some self modifying code and I now have text files displaying as they should for an 80 column display.  My intention here, unless Greg and Wolfgang have a problem, is to create 80 column text versions of the AFTER\TEXTxx files.   So, there will be both 40 column and 80 column versions of these files.  I will modify the code so that something like TEXTMM for 40 column will remain the same and create T8XTMM for 80 column.  I hope that makes sense.  At the point a connection is made, the caller will select between 40 or 80 column display.  After the caller disconnects or timeouts, the board will revert back to 40 column configuration.

 

That should also add to the display file for the TEXTUL for more easily readable text and file information.

 

Message base display also works with the existing code.  I need to make sure the message editor which is really the last piece, is functional in both 40 and 80 columns.

 

Anyways, now that all the BBS answering, disconnecting, and PI rebooting for bad connection issues have been resolved, I now have more time to address some other things I wanted.

 

Beery

 

 

  • Like 2

Share this post


Link to post
Share on other sites

I should also add that after the last update set of files posted last night, I am observing no Windows Telnet to BBS 2nd login attempts/timeouts.  This was about the same time I upgraded from 1.61 to 1.62 on the TIPI.  I did not see any commits on GitHub that explain this, so perhaps there may have been something triggered by a PI update unbeknownst by all.

 

Beery

 

  • Like 1

Share this post


Link to post
Share on other sites
2 hours ago, BeeryMiller said:

I should also add that after the last update set of files posted last night, I am observing no Windows Telnet to BBS 2nd login attempts/timeouts.  This was about the same time I upgraded from 1.61 to 1.62 on the TIPI.  I did not see any commits on GitHub that explain this, so perhaps there may have been something triggered by a PI update unbeknownst by all.

 

Beery

 

Hi Beery, I'm on tipi version 1.61 and since yesterday I discovered, the re-login problem has disappeared.

 

What I did, I've cleaned up all my text files, but I doubt it has anything to do with it.

Share this post


Link to post
Share on other sites

Today I modified some files for the BBS to translate to German texts and I made some minor corrections in the BBSTEXTSRC file.

 

The BBS works for me perfect and very fast. I does not know if I connect through the internet or my router redirect me direct to my BBS in the local network?

 

Anyway it is fast and I see no error right now.

 

My changed files are in the zip file:

AHG0529.zip

 

If you are working on some of these files don't worry, I can make my changes again in your sources. It's not a problem.

 

Wolfgang

 

 

Share this post


Link to post
Share on other sites

Hi Beery,

 

is there a assembly listing like in the E/A on the TI with the Option L and S?

 

I tried to enter a listfile, but the result is a short summary like I see on the Geneve screen.

 

In the manual GenASM.pdf I didn't find an option for a detailed listing.

Share this post


Link to post
Share on other sites

I don't think in all the years I have used the L or S options.  Have you tried using the X or Y options?

 

Beery

 

Share this post


Link to post
Share on other sites
56 minutes ago, wolhess said:

Hi Beery, I'm on tipi version 1.61 and since yesterday I discovered, the re-login problem has disappeared.

 

What I did, I've cleaned up all my text files, but I doubt it has anything to do with it.

I'm guessing there must have been something with the PI that was updated since it suddenly disappeared for you even before the upgrade.

Share this post


Link to post
Share on other sites
3 minutes ago, BeeryMiller said:

Have you tried using the X or Y options?

Not yet, but next time I will give it a try.

Share this post


Link to post
Share on other sites
50 minutes ago, wolhess said:

Today I modified some files for the BBS to translate to German texts and I made some minor corrections in the BBSTEXTSRC file.

 

The BBS works for me perfect and very fast. I does not know if I connect through the internet or my router redirect me direct to my BBS in the local network?

 

Anyway it is fast and I see no error right now.

 

My changed files are in the zip file:

AHG0529.zip 17.43 kB · 1 download

 

If you are working on some of these files don't worry, I can make my changes again in your sources. It's not a problem.

 

Wolfgang

 

 

Connection may be a bit quicker as I reduced the time on a delay loop around the keyscan routine which should make the L option for local login a bit quicker to respond.

 

I opened the zip file up and saw the files were rather small, so probably no issue getting your changes into the program.

 

If your changes use the IF TBOX ELSE FI like I used in the BBSTEXTSRC file, then I can pretty much just copy those files as is without doing any editing myself.  That would make things a bit easier on my end in the future.

 

In the BBSTEXTSRC file, the IF TBOX statement is near the begging of the file with the ELSE at the break point between the English and German, and finally the FI at the end of the source file if you need to see how the statement is used.  What happens, the TBOX is basically a TRUE/FALSE parameter based upon the TBOX EQU statement in the BBS-TBOX source file.  So, you need the IF ELSE FI usage so one set of code is used with the Labels, or the other set would be used.

 

If someone ends up wanting to run the program in another language other than English or German, then I am going to have to figure out another way.

 

One step at a time.


Beery

 

 

 

  • Like 2

Share this post


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

After I sent out that update last night, I have always had a bit of frustration with just 40 columns.  I have tried numerous approaches to implement an 80 column caller display to the BBS using some string handling display code that was in the original source.  Things would never display properly.

 

Last night, I got an idea of using some self modifying code and I now have text files displaying as they should for an 80 column display.  My intention here, unless Greg and Wolfgang have a problem, is to create 80 column text versions of the AFTER\TEXTxx files.   So, there will be both 40 column and 80 column versions of these files.  I will modify the code so that something like TEXTMM for 40 column will remain the same and create T8XTMM for 80 column.  I hope that makes sense.  At the point a connection is made, the caller will select between 40 or 80 column display.  After the caller disconnects or timeouts, the board will revert back to 40 column configuration.

 

That should also add to the display file for the TEXTUL for more easily readable text and file information.

 

Message base display also works with the existing code.  I need to make sure the message editor which is really the last piece, is functional in both 40 and 80 columns.

 

Anyways, now that all the BBS answering, disconnecting, and PI rebooting for bad connection issues have been resolved, I now have more time to address some other things I wanted.

 

Beery

 

 

Wolfgang suggested on his BBS that I also incorporate 64 columns since Matt's Telnet client supports 64 column mode.  I will look at 64 column as well.

 

Beery

  • Like 2

Share this post


Link to post
Share on other sites
2 hours ago, BeeryMiller said:

If your changes use the IF TBOX ELSE FI like I used in the BBSTEXTSRC file, then I can pretty much just copy those files as is without doing any editing myself.  That would make things a bit easier on my end in the future.

Yes, I used your IF TBOX ELSE FI with the comments too, so it‘s very easy to find and copy it.

  • Like 1

Share this post


Link to post
Share on other sites

Wolfgang,

 

I got your edits incorporated and started working on the 80 column modifications.  Your text edits are using more bytes and it is pushing the limits of the 24K memory space.

 

Do you have an Editor/Assembler cartridge with the 8K ram chip you can use?  If so, then no problem with the edits for you.  I am still going to be really crowded even for the no 8K version as I am not complete with my edits yet.  

 

Greg, do you have an E/A catridge with the 8K ram chip you would commit to the BBS?  If both of you do, I will just go ahead and make the change to make things easier all around.

Share this post


Link to post
Share on other sites
Wolfgang,
 
I got your edits incorporated and started working on the 80 column modifications.  Your text edits are using more bytes and it is pushing the limits of the 24K memory space.
 
Do you have an Editor/Assembler cartridge with the 8K ram chip you can use?  If so, then no problem with the edits for you.  I am still going to be really crowded even for the no 8K version as I am not complete with my edits yet.  
 
Greg, do you have an E/A catridge with the 8K ram chip you would commit to the BBS?  If both of you do, I will just go ahead and make the change to make things easier all around.
I can or my machine has a Sam's 1mb

Sent from my LM-G820 using Tapatalk

Share this post


Link to post
Share on other sites

I've got 40/64/80 columns working for the English version in the 24K ram space.  I think I have about 14 bytes of free space.  I need to do some evaluation to see how much larger the German version is to see if I can squeeze a few bytes out someplace.  Hopefully, Wolfgang has a EA cartridge with the 8K ram.

 

If I am not mistaken, the Sams card does not give ram in the >6000 to >8000 space, correct?  That's the easiest to implement as the Geneve does not have SAMS memory.  AfterHours can be run right now on either the minimal system consisting of a TI-99/4A, TIPI, and 32K (English version) or a Geneve system in Rompage mode.

 

Beery

Share this post


Link to post
Share on other sites
I've got 40/64/80 columns working for the English version in the 24K ram space.  I think I have about 14 bytes of free space.  I need to do some evaluation to see how much larger the German version is to see if I can squeeze a few bytes out someplace.  Hopefully, Wolfgang has a EA cartridge with the 8K ram.
 
If I am not mistaken, the Sams card does not give ram in the >6000 to >8000 space, correct?  That's the easiest to implement as the Geneve does not have SAMS memory.  AfterHours can be run right now on either the minimal system consisting of a TI-99/4A, TIPI, and 32K (English version) or a Geneve system in Rompage mode.
 
Beery
Sam's pages in 4k at a time in the 32k range.. http://www.unige.ch/medecine/nouspikel/ti99/superams.htm

Sent from my LM-G820 using Tapatalk

Share this post


Link to post
Share on other sites
4 hours ago, BeeryMiller said:

 

Do you have an Editor/Assembler cartridge with the 8K ram chip you can use?

Yes I have an E/A cartridge with 8k ram. I can use it for the BBS.

Share this post


Link to post
Share on other sites

@BeeryMiller  The 8k RAM E/A cartridge is no problem for me, I have two of those.

 

But can you also use the lower RAM in the TI? I was reading yesterday in the GenLink manual the Linker

can use it with the BLOCK directive?

Share this post


Link to post
Share on other sites

Today I was testing filetransfer with MXT (tipi system 1) from the BBS (tipi system2)

 

 

I selected the phonebook "PHONE1" to use from DSK1.

Press "I" to toggle the IAC to IAC=OFF

With "A" the phonebook displays the available entries.

Select "E" for the TBOX99 BBS

 

Login to the BBS wit user # and password

On the main menu press "F" for file transfer

Then "D" for download

Enter the file name to download e.g. EDIT40 

** The BBS shows ready for transfer **

 

Press FCTN 7 for display MXT menu

Press "X" for xmodem filetransfer

Enter Filename: DSK1.EDIT40 

Chose "1" for CRC check

Choose R for receive 

 

The BBS shows the number of Records, Sectors and maybe retrieves

When complete the system make a beep and with ENTER You will go to the BBS main menu

 

Thats easy!

 

I tested Download and Upload with more than ten different files and even with the

235 sector file "SCR-ARK" and it was working without errors and without a retrieve.

 

For tipi users the combination of the AFTER HOURS BBS system and the MXT mass transfer

program is realy ideal.

 

Now I have to look how I can disable the IAC protocol in the Terra Term program on my PC.

If this is possible, anybody can access the BBS from a PC and make Downloads or Uploads.

 

Maybe there are other Terminal programs with the xmodem protokoll and they can handle the IAC?

 

 

 

 

 

Share this post


Link to post
Share on other sites
Posted (edited)
11 hours ago, arcadeshopper said:

Sam's pages in 4k at a time in the 32k range.. http://www.unige.ch/medecine/nouspikel/ti99/superams.htm

Sent from my LM-G820 using Tapatalk
 

That would mean a whole new mapping section of code, something I am not quite ready for at this point in time.  

 

Beery

Edited by BeeryMiller
  • Like 1

Share this post


Link to post
Share on other sites
8 hours ago, wolhess said:

@BeeryMiller  The 8k RAM E/A cartridge is no problem for me, I have two of those.

 

But can you also use the lower RAM in the TI? I was reading yesterday in the GenLink manual the Linker

can use it with the BLOCK directive?

Yes, it can.  Memory is already being used in that area for various buffers.  I haven't mapped it out completely to find where there are any blocks of free ram, however a bunch of it is already used.  I realized last night I have at least one routine in my LIB file I may be able to comment out, and I may be able to modify the LIB workspaces to free up some more memory as well.


Going to do some testing with that today.


Beery

  • Like 1

Share this post


Link to post
Share on other sites
14 minutes ago, wolhess said:

Today I was testing filetransfer with MXT (tipi system 1) from the BBS (tipi system2)

 

 

I selected the phonebook "PHONE1" to use from DSK1.

Press "I" to toggle the IAC to IAC=OFF

With "A" the phonebook displays the available entries.

Select "E" for the TBOX99 BBS

 

Login to the BBS wit user # and password

On the main menu press "F" for file transfer

Then "D" for download

Enter the file name to download e.g. EDIT40 

** The BBS shows ready for transfer **

 

Press FCTN 7 for display MXT menu

Press "X" for xmodem filetransfer

Enter Filename: DSK1.EDIT40 

Chose "1" for CRC check

Choose R for receive 

 

The BBS shows the number of Records, Sectors and maybe retrieves

When complete the system make a beep and with ENTER You will go to the BBS main menu

 

Thats easy!

 

I tested Download and Upload with more than ten different files and even with the

235 sector file "SCR-ARK" and it was working without errors and without a retrieve.

 

For tipi users the combination of the AFTER HOURS BBS system and the MXT mass transfer

program is realy ideal.

 

Now I have to look how I can disable the IAC protocol in the Terra Term program on my PC.

If this is possible, anybody can access the BBS from a PC and make Downloads or Uploads.

 

Maybe there are other Terminal programs with the xmodem protokoll and they can handle the IAC?

 

 

 

 

 

If you find a way to disable IAC from a non-TI Telnet client, please let me know.  I already have within the BBS program where I send out one particular string to disable some telnet stuff for non-TI telnet clients.  I have just never found a way to turn off IAC completely.


Beery

  • Like 2

Share this post


Link to post
Share on other sites

Well, good news Wolfgang.  I was able to comment out some unused code in LIB and I can fit everything you have modified into 3 x 8K program image files with about 20 bytes of free space for the German version.  The English version, I have something around 180 bytes free space.

 

Knowing you still have more to do AND the fact you have an 8K ram w/ Editor/Assembler cartridge, I am going to modify your link file to relocate the LIB code to >6000 freeing up more space for your translated text.  I'm going to keep Greg's compilation and mine within the upper 24K until such point in time I outgrow the memory space.

 

I would not further translate any code in the BBSSETUP, BBSSUBS, MESGEDITOR, MAINMENU, or BBSMESGBAS source files until after my next zip update on the code.  Elsewhere, you should be fine if you update anything.

 

I am also going to include in the next zip release a set of  64 and 80 column TEXTxx files with the filenames of T6XTxx and T8XTxx.  So, from your end, if you desire, you can begin the modifications/translations of those files for 64 and 80 column width.  I would hold the actual text length at 63 characters and 79 characters as each line must terminate in the C/R character.  So, as I count, there are 14 TEXTxx files, and there will be another 14 T6XTxx files, and another 14 T8XTxx files in the \AFTER directory.

 

I'm going to "take a break" right now as I need to mow the lawn and will come back and do more work this evening.

 

Beery

 

 

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites

Yes, I will edit the text files tomorrow. 
 

And I will post the files, I‘ve finished.

 

Have a nice weekend!

  • Like 1

Share this post


Link to post
Share on other sites

Updated code now with 40/64/80 column support.

 

Read the README text file (Windows txt file) in the ZIP file for all the latest update information.

 

File includes my stock 64 and 80 column AFTER\TEXT files for 40, 64, or 80 column display.  Edit/change to your BBS needs.

 

Beery

 

AfterHours20200530.zip

  • Like 2

Share this post


Link to post
Share on other sites

ok last zip, thekeep loads "9640 news BBS" on the screen.. and i cant connect 

 

2020-05-30 22:34:38,001 TipiDisk    : INFO     LOAD image size 8192
2020-05-30 22:34:39,371 TipiService : INFO     Request completed.
2020-05-30 22:34:39,592 TipiDisk    : INFO     Opcode 5 LOAD - TIPI.THEKEER
2020-05-30 22:34:39,592 Pab         : INFO     opcode: Load, fileType: Sequential, mode: Update, dataType: Display, recordType: Fixed, recordLength: 0, recordNumber: 8198
2020-05-30 22:34:39,594 TipiDisk    : INFO     LOAD image size 8192
2020-05-30 22:34:40,964 TipiService : INFO     Request completed.
2020-05-30 22:34:41,467 TipiDisk    : INFO     Opcode 5 LOAD - TIPI.AFTER.CHARA1
2020-05-30 22:34:41,468 Pab         : INFO     opcode: Load, fileType: Relative, mode: Input, dataType: Internal, recordType: Fixed, recordLength: 255, recordNumber: 2048
2020-05-30 22:34:41,469 TipiDisk    : INFO     LOAD image size 8064
2020-05-30 22:34:41,827 TipiService : INFO     Request completed.
2020-05-30 22:34:41,836 ClockFile   : INFO     clock mode:corcomp
2020-05-30 22:34:41,856 ClockFile   : INFO     close special? PI.CLOCK
2020-05-30 22:34:41,864 ClockFile   : INFO     clock mode:corcomp
2020-05-30 22:34:41,883 ClockFile   : INFO     close special? PI.CLOCK
2020-05-30 22:34:54,490 TiSocket    : INFO     bind socket(0) *:9995
2020-05-30 22:34:54,491 TiSocket    : INFO     bind success
2020-05-30 22:34:57,643 TiSocket    : INFO     handleAccept
2020-05-30 22:34:57,644 TiSocket    : INFO     new connection handle: 1
2020-05-30 22:34:57,644 TiSocket    : INFO     accepting...
2020-05-30 22:34:57,644 TiSocket    : INFO     no connection available
2020-05-30 22:35:00,847 TiSocket    : INFO     handleAccept
2020-05-30 22:35:00,847 TiSocket    : INFO     new connection handle: 1
2020-05-30 22:35:00,848 TiSocket    : INFO     accepting...
2020-05-30 22:35:00,848 TiSocket    : INFO     no connection available
2020-05-30 22:35:04,039 TiSocket    : INFO     handleAccept
2020-05-30 22:35:04,040 TiSocket    : INFO     new connection handle: 1
2020-05-30 22:35:04,040 TiSocket    : INFO     accepting...
2020-05-30 22:35:04,041 TiSocket    : INFO     no connection available
2020-05-30 22:35:07,233 TiSocket    : INFO     handleAccept
2020-05-30 22:35:07,234 TiSocket    : INFO     new connection handle: 1
2020-05-30 22:35:07,234 TiSocket    : INFO     accepting...
2020-05-30 22:35:07,235 TiSocket    : INFO     no connection available
2020-05-30 22:35:10,426 TiSocket    : INFO     handleAccept
2020-05-30 22:35:10,426 TiSocket    : INFO     new connection handle: 1
2020-05-30 22:35:10,426 TiSocket    : INFO     accepting...
2020-05-30 22:35:10,427 TiSocket    : INFO     no connection available
2020-05-30 22:35:13,613 TiSocket    : INFO     handleAccept
2020-05-30 22:35:13,614 TiSocket    : INFO     new connection handle: 1
2020-05-30 22:35:13,614 TiSocket    : INFO     accepting...
2020-05-30 22:35:13,615 TiSocket    : INFO     no connection available
2020-05-30 22:35:16,805 TiSocket    : INFO     handleAccept
2020-05-30 22:35:16,805 TiSocket    : INFO     new connection handle: 1
2020-05-30 22:35:16,806 TiSocket    : INFO     accepting...
2020-05-30 22:35:16,806 TiSocket    : INFO     no connection available
2020-05-30 22:35:19,998 TiSocket    : INFO     handleAccept
2020-05-30 22:35:19,999 TiSocket    : INFO     new connection handle: 1
2020-05-30 22:35:19,999 TiSocket    : INFO     accepting...
2020-05-30 22:35:19,999 TiSocket    : INFO     no connection available
2020-05-30 22:35:23,193 TiSocket    : INFO     handleAccept
2020-05-30 22:35:23,194 TiSocket    : INFO     new connection handle: 1
2020-05-30 22:35:23,194 TiSocket    : INFO     accepting...
2020-05-30 22:35:23,195 TiSocket    : INFO     no connection available
2020-05-30 22:35:26,384 TiSocket    : INFO     handleAccept
2020-05-30 22:35:26,385 TiSocket    : INFO     new connection handle: 1
2020-05-30 22:35:26,385 TiSocket    : INFO     accepting...
2020-05-30 22:35:26,386 TiSocket    : INFO     no connection available
2020-05-30 22:35:29,575 TiSocket    : INFO     handleAccept
2020-05-30 22:35:29,576 TiSocket    : INFO     new connection handle: 1
2020-05-30 22:35:29,576 TiSocket    : INFO     accepting...
2020-05-30 22:35:29,576 TiSocket    : INFO     no connection available
2020-05-30 22:35:32,762 TiSocket    : INFO     handleAccept
2020-05-30 22:35:32,763 TiSocket    : INFO     new connection handle: 1
2020-05-30 22:35:32,763 TiSocket    : INFO     accepting...
2020-05-30 22:35:32,763 TiSocket    : INFO     no connection available
2020-05-30 22:35:35,958 TiSocket    : INFO     handleAccept
2020-05-30 22:35:35,958 TiSocket    : INFO     new connection handle: 1
2020-05-30 22:35:35,959 TiSocket    : INFO     accepting...
2020-05-30 22:35:35,959 TiSocket    : INFO     no connection available
2020-05-30 22:35:39,149 TiSocket    : INFO     handleAccept
2020-05-30 22:35:39,150 TiSocket    : INFO     new connection handle: 1
2020-05-30 22:35:39,150 TiSocket    : INFO     accepting...
2020-05-30 22:35:39,151 TiSocket    : INFO     no connection available
2020-05-30 22:35:42,339 TiSocket    : INFO     handleAccept
2020-05-30 22:35:42,339 TiSocket    : INFO     new connection handle: 1
2020-05-30 22:35:42,340 TiSocket    : INFO     accepting...
2020-05-30 22:35:42,340 TiSocket    : INFO     no connection available

 

If I run  AFTERHOURS I can connect..and says the same name

 

Greg
 

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