Subj : PCBoard v16 (Pre-Alpha) To : All From : Ozz Nixon Date : Sun Apr 21 2019 12:01:38 See www.saltairbbs.com PCBoard v16 (currently) is online so people can see how far we are in the rewrite. Attempts were made to migrate from MSC to GCC without success. Stepping back and looking at the project, and our other efforts, the decision was made to port the code to a different language and framework. v16 is now written using Modern Pascal, and designed using the Modern Pascal Coderunner framework. Modern Pascal is available as a command line compiler and interpreter, along with an Apache Mod, allowing you to code web scripts. Coderunner is a socket server that processes your code. Coderunner is self-threading and manages memory allocation per thread. Allowing developers to focus on their code, somewhat like a modern DOOR-KIT. PCBoard v16 file structures are being revised also. v15 and older were limited in scope. For example, having an array in the USERS for LastRead means the larger your site the slower and bulkier your USERS file was and the memory requirement also increased. With this said, we have migrated v16 to using the JAM message base. It has a superior design from other message bases, while keeping the flexability introduced by PCBoards MSGS extended headers. Currently we have build a NNTP (Newsgroup Server) as part of PCBoard v16 Registered Suite. It allows the sysop and users to access the message areas using their logon credentials, from Desktop and Mobile devices. * It also allowed us to seriously stress test the JAMmb engine before swapping MSGS for JAM sturctures. JAM also tracks per user per message area the LAST READ - reducing the memory requirements that previous PCBoard USERS records introduced. PCBoard v16 is being released as Open Source. We are doing this as it is a complete rewrite from scratch. NO previous code is used for this new design. Opening the rights so we can release as Open Source. Note Open Source does not mean we wave the rights to the source in any way. PCBoard v16 is (c) Modern Pascal Solutions, LLC. PCBoard v16 is still marketed as a commercial product. The source is being offered to help third-party developers produce new PCBoard modifications. We have removed the kludge script engine PPE. Instead the whole produce is now a Coderunner script. So if, for example, you had written a replacement for the prompt... you can do it again replacing doPrompt.inc with your fancy/ANSI version. PCBoard v16 uses the built-in features of TStringList to extend PCBTEXT. A previous limitation was PCBTEXT allowed up to 60 characters per prompt. This meant fancy/ANSI animations or color sequences for prompts had to fit into 60 bytes. For some this was impossible, so they had to embed PPE links for prompt. In the modem age, the latency was not notable, in todays gigabit Internet age, it was noticable. So. v16's PCBTEXT is BYTE 1 = FG color (1 to 15) (0=last color or no color change), followed by as many characters you want and terminated with EOL (Carriage Return and/or Line Feed - depending upon your Operating System). This change in itself truly extends the capability of making an iCE or ACiD looking BBS... while reducing all of the overhead of PPE scripts as prompts. What if you want to replace a prompt with a script for even more control? You simply modify the associate *.inc file with your requirements. Coderunner uses a JIT (Just In Time) compiler, and will merge your code change on the next connection it handles. *** What if their is a bug in my new mod? *** Simply start Coderunner in a terminal - using a different terminal telnet to your BBS - the error will show on the previous terminal. We have tried to make sure all error messages include the line number (even relative to the *.inc file(s)), and character position on that line - with a description of what is wrong with said line. Example: * Invalid evaluation at line 133, column 1 in file "/var/www/BBS/pcboard/main.p" Usually that means you forgot to put a semicolon at the end of the previous line, or you have a stray character/invalid syntax at the start of this line. *** Uptime/Downtime Schedule *** SaltAirBBS.com is linking right to our in-house source code. So, there will be periods where you are unable to connect. Or you may be disconnected while we rollout a change. We work on the source code 7 days a week. Once we achieve Beta status, we will move pre-alpha to a different port on the servers. This way (like the old modem days) you can access the stable release, or the cutting edge release - depending where you connect on our servers. * IF YOU DO NOT HAVE ACCESS TO A TERMINAL - WWW.EXCHANGEBBS.COM DEFAULTS TO THE ALPHA CODE IN A BROWSER * -- ... Ozz Nixon .... Author ExchangeBBS (suite) ..... Since 1983 BBS Developer --- ExchangeBBS NNTP Server v3.1/Linux64 * Origin: (1:1/123) .