Jump to content
IGNORED

After Hours BBS Program


9640News

Recommended Posts

6 minutes ago, arcadeshopper said:

i can't send messages btw, i assume by design..

 

Greg

No, that wasn't by design.  I need to change a flag somewhere.  Will be a tomorrow issue to address.  I'll have the board down for the night.

 

Beery

Edited by BeeryMiller
  • Like 1
Link to comment
Share on other sites

  • 4 weeks later...

Just wanted to post a note up on here that progress does continue.  Matt's latest update 1.55 (?) to the TIPI, seemed to suddenly resolved the PI losing its way with the TIPI even though Matt did not find anything to address with my issues.  I think I can best describe it as the PI at 1.2 GH+ can't keep up with the TI-99/4A's software demands.

 

I had the program running pretty solid for near to 5 days when it lost its way with the PI.  As I had some internet network failures (major issues with AT&T), something happened so the PI (not the TIPI) would not answer a network connection.  As far as the TI was concerned, it thought everything was fine just waiting for a caller.  This is not an acceptable response as the Sysop would not know whether he had no callers, or if there was a problem with the system.  Matt offered up some suggestions; now it will be a matter of figuring out the best implementation path.

 

I did get Xmodem uploading and downloading working in both directions.  I had to review some code and saw where I did not restore a register before exiting a routine which caused the upload hiccup.  I've got a core set of TIPI routines for socket connection communication in assembly language should anyone have a desire/need.

 

Most of what I want to address now are cosmetic issues outside the loss of the PI talking to the internet.  I also have a "dropped call" detection if there is no data being moved, then the BBS will reset after 3 minutes.

 

I'm going to say BBS speeds are probably around the rate of 2400 baud modem speeds.  The software can definitely be faster, however it would require major rewrites to the communication code as it was written for single character transmissions and not for "blocks" of text.  Tim did provide some suggestions on to increase speed if that becomes an issue. My first attempt to add the capability locked the software, so need to revisit later. As the software is mostly for reading messages anyways, few (if any) people are going to read faster than 2400 baud anyways.

 

Anyways, that is where she stands for the moment.

 

Beery

 

 

 

  • Like 4
Link to comment
Share on other sites

  • 2 weeks later...

OK, with Matt's latest updates, I believe the codebase is fairly stable under the AfterHours BBS code.  If individuals want to login to the BBS to give it a test run, the URL is 9640News.ddns.net:9918

 

I'm still encountering loss of internet issues as I am out in the country, so if you suddenly lose connection, it is likely from my internet services.  If you don't connect when calling in, it is either because another caller is online or internet is down.  Hopefully, it is not because of a program crash.

 

Feel free to give it a try and report here if you find issues. 

 

Beery

  • Like 3
Link to comment
Share on other sites

Hi Beery,

 

today I tested your new BBS version. I made a new user #9. And had always access to the board.

 

I tried to leave some messages in the message board. There are some blockades during writing a message.
Sometimes the system comes back after 1 to 2 minutes or it hangs. I always made a reset after 10 minutes.

 

The menu system seems to run stable. I had no blockades going through the main menu.

 

If I log in after a blockade the system is ready and OK. But take some time to log in (about 30 sec.)

 

I used the telnet program from the tipi system on my real TI. One time in 64 char mode and three times in 40 char mode.

 

If the informatin is scrolling on the screen, is there a key to stop the scrolling?
e.g. The Help display's a lot of information, that I couldn't read so fast.

CTRL+C doesn't stop scrolling from my TI.

 

Then I used my PC with putty. Login and menu is OK, but the same thing CTRL+S doesn't stop the scrolling.
Maybe its about the keyboard configuration?

Link to comment
Share on other sites

47 minutes ago, wolhess said:

Hi Beery,

 

today I tested your new BBS version. I made a new user #9. And had always access to the board.

 

I tried to leave some messages in the message board. There are some blockades during writing a message.
Sometimes the system comes back after 1 to 2 minutes or it hangs. I always made a reset after 10 minutes.

 

The menu system seems to run stable. I had no blockades going through the main menu.

 

If I log in after a blockade the system is ready and OK. But take some time to log in (about 30 sec.)

 

I used the telnet program from the tipi system on my real TI. One time in 64 char mode and three times in 40 char mode.

 

If the informatin is scrolling on the screen, is there a key to stop the scrolling?
e.g. The Help display's a lot of information, that I couldn't read so fast.

CTRL+C doesn't stop scrolling from my TI.

 

Then I used my PC with putty. Login and menu is OK, but the same thing CTRL+S doesn't stop the scrolling.
Maybe its about the keyboard configuration?

I sure hope my internet connection isn't flaky after the service work yesterday.  There's always a chance it could be.  I did update the software last night, but mostly with cosmetic issues.  I will check it later to see what you are describing as a blockade and I will create a new user.

 

As far as CTRL-S and CTRL-Q, here is something everyone needs to know.  The Raspberry PI buffers a lot of data.  I know for sure it buffers for a telnet client, and I am pretty sure it buffers on sending out for a server as well.  Because it buffers, that is why the limits on the telnet client program are in the display routines.

 

It is up to the terminal program being used to determine how large of chunks to pull from that buffer.  I believe Matt's telnet client allows around 255 bytes to be moved into the buffer at each shot whereas with RS232 based programs, you were really only dealing with 1 character.  MyTerm I modified for the TIPI actually handles something like 4K or a bit larger chunk.  The only time it will "pause" is when there is no data at least for MyTerm.  I'm not sure if Matt had a CTRL-S/Q capability in his client.  What you are seeing and what I haven't dealt with in MyTerm, is how to pause the screen display even though there is more information already in the client program ready to display.

 

I noticed this situation being "significant" when during an xmodem attempt during an unsuccessful file upload when I was debugging some things.  The TIPI on the BBS end buffered all the data and was treating whatever it could as menu entries.  Imagine a few thousand menu entries.  The BBS ran wild with menu entries for close to 30 minutes as I watched things to see if anything would crash.

 

If you can confirm on another BBS Matt's Telnet client has a working CTRL-S capability with streaming text, I will see if there is someway I can tweak the send routines to address this in the AfterHours BBS source code.  The other thought here is to check out MXT for the TIPI and see if CTRL-S works on it since MXT works on a single byte transfer at a time. 

 

Beery

 

 

Link to comment
Share on other sites

When you are handling single byte transfers at a time which we did in the day of the RS232, that functionality was easy to implement.  Now, with internet transfer speeds and the capability to move bytes faster, you can still do a keycheck press, however it then slows down the display speed.  It's a tradeoff...……...

 

I'm not sure on when I can get to it, but I may be able to add a routine that counts <CR>'s when displaying a text file to prompt after every 23 or so lines displayed.

 

During an Xmodem file transfer, I think the speed is actually slower than 38,400 baud that I can achieve with a RS232 WiModem based system on the Geneve.  There is more overhead checking to see if a character has arrived than the RS232 routine with the system receiving the file.  As is, I have kept any of the Xmodem routines to be single byte driven versus string based driven.  There are several reasons here.  One, if you are calling a non-TI system, they are likely handling all the IAC character protocols.  That is a problem as our files have the byte >FF generally in the first record.  The >FF byte signals things it wants from the other computer so things need to be appropriately handled.  Second, if the sending computer is slower than the TIPI receiving system, it may only send a portion of the first 128 or 1024 byte block so you would need to concatenate the fragments while also dealing with the IAC protocols.  Add to it, then you have the CRC or Checksum bytes between each record.  Now, also add to that, now you also have the byte >FF if the file you are sending has 255 records.

 

I'm seeing there is so little use of Xmodem transfers to move files, the effort to code an efficient Xmodem routine has minimal benefit. Heatwave's File library is down and really, nobody has complained.  Fortunately before Tim had an issue with File Transfers, I had MXT coded.  Effort here was for a new user with a TI/Monitor/sidecar-32K/TIPI could download files to their system and get some basic utilities and programs going to then continue building their system.

 

Beery

 

  • Like 2
Link to comment
Share on other sites

1 hour ago, Mad Hatter said:

Just gave a call, looks good.  Didn’t notice any bugs, everything ran smooth.

 

There's one bug on the Last Caller's list that pops up only after the board handles a dropped caller.  After that, everything beyond is messed up when displaying the list of callers.  I need to figure that one out or remove the menu option until I do figure it out.  Hopefully, I will have enough time to figure that out this weekend.

 

 

  • Like 2
Link to comment
Share on other sites

  • 3 weeks later...

OK folks, I believe things are setup to run AfterHours BBS from a PI/TIPI setup with just the TI-99/4A console.  Hopefully, I got everything packaged up correctly.  Source code is included.  There is a source file LIB that contains the TIPI access routines I use.

 

Things are setup for Port 9918 as one can not use Port 23 as if you do, the BBS connects to the PI.  Docs are in the AfterHoursDocs folder with specific TIPI-DOCS information for properly setting up the PI and the TIPI.

 

Beery

 

AfterHours.zip

  • Like 5
  • Thanks 1
Link to comment
Share on other sites

7 hours ago, wolhess said:

Wow, I will try it in the next few day‘s.

 

Thank you for providing this peace of Software!

No problem.  It was a great exercise for me to begin to re-learn some of the assembly nuances for the TI-99/4A.

 

I'm hoping my TIPI code / routines inspires others to modify some programs.

 

Beery

 

  • Like 2
Link to comment
Share on other sites

Hi Beery,  EDITED: The problem in this message is solved!!!

 

I installed the BBS programs on my sidecar tipi and follow the install guide to install the cron job on the PI.

 

My install path ist tipi_disk/AH...

 

DSK1 is mapped to AH/UL and DSK2 to AH/DL

 

The program I started with CALL TIPI("TIPI.AH.AFTERHOURS")

 

Then I tried to connect from my PC using putty and the IP address of the tipi in my local network

protocol = TELNET

IP: 192.168.178.114 and the PORT no: 9918

 

The program on the TI increments the caller number but I get the following error in putty:

Oh crap...a fatal *DSR* error has
occured.  Aborting to top of
program...sorry...
 

image.thumb.png.0e3a52e915b4d376a98fdf222e242ad9.png

 

I think something I'm doing wrong. Do you have any idea?

 

I'm using a beige QI console with the normal 1981 title screen, no cartridges, only 32K and the tipi.

 

Link to comment
Share on other sites

Hi Beery,

 

I installed the BBS files in the root tipi directory and it works for local access from my PC!

 

After reading your instructen again, You wrote that the directory structure is hardcoded,

I changed the installation and now it is working.

 

So I will learn more about a sysop to make some minor individual changes.

 

Then I will install a domain service for acces from the internet. Currently I have no clue what I need for this.
I will search the internet for learning.

 

Very interesting stuff!

Link to comment
Share on other sites

I get the BBS greeting screen and followed the procedure to create a new user.

 

After the message "You have been accepted..." The TI and the program hang.


The TIPI LED lights up continuously and the TELNET client on the PC indicates a network error.

 

image.thumb.png.aa49fd82b50ad95ea4fb79ca2669d04f.png

 

image.thumb.png.f0f6a36c651080e49c171838dac847c5.png

image.thumb.png.ef2322a2b4c4d245832c984d4d41bd26.png

Link to comment
Share on other sites

My next test was to login from the windows telnet client.

 

The BBS knows my first registration and I got the message below:

 

image.thumb.png.c9bef7bd5fd9e3b68e09acf89367fdbf.png

 

The program on the TI is working, does not hang!

I can make a second connect and got the same response from the system.

 

Maybe there is something with "checking private mail..."

 

I have the user # 1

 

image.thumb.png.92467296cb0a0e3ce5e2998639e5e155.png

Link to comment
Share on other sites

I registered some more users and the user no. 3 got acces to the main menu after registration.

 

I could leave a message and I could show the last caller list with some hyroglyphs on the screen.
After logout, the system shows me the message below: 

     

image.png.52eb63b239ea12056b8c070e349ed667.png

 

I can register a new user but after the registration the  "Oh Crap..." message appiers and the connection is lost.

 

The BBS program shows waiting for caller... and  no status. I have to power cycle the TI.

 

Link to comment
Share on other sites

I thought I had the Private message base code removed.  I guess the new user registration didn't have something taken out.  Easy enough solution.

 

In the TIPI\MESG directory, copy BASEFILE0G and POINTFILEG to BASEFILE0Z and POINTFILEZ.  In BASEFILE(zero)G that is a "zero", and not an "oh".

 

As far as a domain name service, if you have a PC running on your home system with Windows, you can go to www.no-ip.com and get a free domain with some of their client software.  The address for the software is at https://www.noip.com/download?page=win . It will give you something like yourname.ddns.net.  The port address is in AFTERHOURU back about 3 to 5 sectors from the end.  Look for *.9918<space>.  Just change the 9918<space> spots.  Port 23 is not possible as the PI answers to it.  If you don't change the code, then to connect to your BBS would be yourname.ddns.net:9918 .  If you shorten the port to something less than 4 characters, then the spaces afterwards need to be the space character.

 

Beery

 

 

 

Edited by BeeryMiller
  • Like 1
Link to comment
Share on other sites

Disregard copying the files.  Looks like they were part of the archive.  I think you need a new/blank NEWMSG file in the MESG folder as I suspect the existing one is referencing a message in the BASEFILE0Z/POINTFILEZ that isn't there.

 

Drop this file into the TIPI.AFTER folder.  It has the TIFILES header already in place.

NEWMSG

  • Like 2
Link to comment
Share on other sites

I let the BBS machine work until this morning. (with the first BBS program package installed)

I was able to telnet to the BBS, but my PC had no access to the Pi.

I couldn't telnet from PC to Pi

The connection to the tipi does not work after resetting my TI.

I connected a monitor to the Pi but I didn't get an image.

After I have switched the Pi off and on again, the tipi works and I have access to the tipi folder from my PC.

Now I have read your messages and installed the new software package.

The BBS was started and I was able to log in to register the first new user.

After the dialogue, the TI hangs on the spot. Please wait until Calvin has found a place for your file.

image.thumb.png.62f780545119759bc5bd412c8c9fc01a.png

image.thumb.png.acbd99dc161eab1420dea0c694604677.png

At this time I could login to the pi from my PC and I can work on the pi with the attached monitor and keyboard.

 

I powercycled the TI and run the BBS program again.

 

Now I can login with the user #1 and get the main menu!  First time success!!!

 

So I registered a second user from the Telnet cliant on my PC but the connection was broken after input the password.
I could finished the registration on the TI screen and I can login from the telnet client on the PC.

I leave a first message in the TI group and logged off.

 

I registered a third user #3 named demo and password demo.

 

I use a external NOIP address to register or to login:

 

hostname: mytbox99.ddns.net

port:         61643                     This is the external port from my fritzbox (or from my provider) intern this port is mapped on 9918 (This shows the fritzbox configuration)

 

So currently I can register a new user only on the TI system because the connection to the telnet client is broken during the process.

I can use a telnet client to login a registered user and this user can work on the BBS.

 

So I have to do more learning about the network configuration and about the customizing the BBS system.

 

 

 

 

 

 

 

 

 

Link to comment
Share on other sites

It seems that I lost the network connection every time I register a new user!

 

If I login an existing user, so the BBS is answering and I can use the commands of the BBS menu.

 

If you have time, you can try it yourself with user #4 and password guest.

 

From the windows telnet client the command is: o mytbox99.ddns.net 61643

 

I have validated users 1 to 4 for full access (1). I don't know if it is necessary.

 

In the manual there are some key's defined. 

 

e.g. FCTN W should stop the program.

If I press any FCTN or CTRL key nothing happens. Are the key's disabled?

 

===========================================================

The message menue doesn't work correct.

 

I login with the user 4 (guest) then I choose M and on the message base T.
Then I got the "Oh crap..." message and the connection is lost.

 

Then I login with my user #2 . Here I can choose M and R and I read the one and only message in the system.

But after reading I cannot go to the main menu or read again or leave a message. 

The menu shows every time: Thats not on the menu! Try again.

 

Now I get some (more then 20) error messages from the PI monitor:

 

e.g. Message from syslogd&tipi at May 19 11:41:12 ...

           kernel:[B180.118305] and 8 times  XXXXXXXX

 

or

           kernel:[B180.118165] Internal error: Oops: 5 [#3] SMP AFM

 

The pi hangs and I have no access from the keyboard or from a telnet client on my PC

 

After power cycling the pi is working again and the BBS is also working again.

 

Link to comment
Share on other sites

3 hours ago, wolhess said:

It seems that I lost the network connection every time I register a new user!

 

If I login an existing user, so the BBS is answering and I can use the commands of the BBS menu.

 

If you have time, you can try it yourself with user #4 and password guest.

 

From the windows telnet client the command is: o mytbox99.ddns.net 61643

 

I have validated users 1 to 4 for full access (1). I don't know if it is necessary.

 

In the manual there are some key's defined. 

 

e.g. FCTN W should stop the program.

If I press any FCTN or CTRL key nothing happens. Are the key's disabled?

 

===========================================================

The message menue doesn't work correct.

 

I login with the user 4 (guest) then I choose M and on the message base T.
Then I got the "Oh crap..." message and the connection is lost.

 

Then I login with my user #2 . Here I can choose M and R and I read the one and only message in the system.

But after reading I cannot go to the main menu or read again or leave a message. 

The menu shows every time: Thats not on the menu! Try again.

 

Now I get some (more then 20) error messages from the PI monitor:

 

e.g. Message from syslogd&tipi at May 19 11:41:12 ...

           kernel:[B180.118305] and 8 times  XXXXXXXX

 

or

           kernel:[B180.118165] Internal error: Oops: 5 [#3] SMP AFM

 

The pi hangs and I have no access from the keyboard or from a telnet client on my PC

 

After power cycling the pi is working again and the BBS is also working again.

 

I noticed the main menu and the message base menu need to be updated.  It looks like I copied two text files from a backup that were not updated.  Login to my BBS at 9640news.ddns.net:9918.  On the main menu, you need to remove the [L] Last caller menu item (File TEXTMM).  On the Message Base menu, I pulled a few entries and you need to set it up as TEXTMB (I think that is the filename) to match my BBS.

 

I did just login, and was at the message base menu and it dropped the connection.  I will try again later this morning.  Have some business work to do.

 

Do you have the OLED on your PI?  CRU Address?

 

Beery

 

  • Like 1
Link to comment
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.
Note: Your post will require moderator approval before it will be visible.

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