MBBSEmu News - February 21st, 2021
Trivia All The Things!
In the month since the last update here to MBBSEmu.com, there has been a whirlwind of progress on The MajorBBS Emulation Project which has been reflected in the two releases we've tagged on GitHub in that time! Between those two releases has been over 35 Pull Requests from community members adding additional features and enhancements to MBBSEmu!
A primary focus over the past month has been getting Farwest Trivia properly supported within MBBSEmu so Sysops of any platform can offer a great Trivia experience to their BBS users. With as of the latest Stable Alpha, the Farwest Trivia module is now fully supported! Users can now easily enter the module and test their knowledge against other BBS users.
We're still working on adding support for the Farwest Trivia Question Server custom Full Screen display, which will enable Sysop's to add their own custom questions as well. Stay tuned for more updates!
If you'd like to test your knowledge in a Farwest Trivia-like environment, our community member @paladine has created Discord Trivia! Similar in play and functionality to Farwest Trivia, you can now join The MajorBBS Emulation Project Discord Server and test your knowledge! Pop on over to our Discord server and give it a try! If you loved Farwest Trivia, you're sure to love Discord Trivia. 😃
Text Variables System Wide!
To date, MBBSEmu has had limited Text Variable support within modules. Some Modules such as DialChat! make liberal use of Text Variables for display information and custom formatting. MBBSEmu didn't support using Text Variables (via BBSDRAW) outside of the context of a module, such as the main menu or the login screens -- until today!
As of the latest release, MBBSEmu now supports MajorBBS/Worldgroup style Text Variables throughout the system, not only within the modules but within screens such as the main menu, login screen, and more! We're very excited to give sysops using the Rlogin option to extend the look and feel of their BBS to the MBBSEmu menuing system in addition to giving access to dynamic content.
The MBBSEmu Wiki has been updated with the currently supported Text Variables and how to implement them. You can check out the article here: Text Variables
A core component of emulator development is Reverse Engineering. For MBBSEmu, this involves Reverse Engineering MajorBBS & Worldgroup Modules and learning how they work with the host environment. Our belief at The MajorBBS Emulation Project is the more people know about how MajorBBS & Worldgroup modules work, the better! A sad truth is that the source code for many popular modules is lost -- or kept closed source to this day, many decades later. Because of this Disassembly and Reverse Engineering is the only way to ensure these modules are kept alive.
To this end, The MajorBBS Emulation Project has setup a new GitHub repository: MBBSEmu.Disassemblies
Our goal for this repository is to collaborate as a community on the Disassembly and understanding of popular MajorBBS & Worldgroup Modules in an effort to preserve them and help educate a wider audience on not only the inner workings of The MajorBBS & Worldgroup, but also 16-bit and 32-bit x86 Assembly.
In the coming weeks, we'll be posting both IDA Database Files (.i64) and x86 Assembly Exports (.asm) for many MajorBBS & Worldgroup Modules. The IDA Database Files can be opened using IDA Freeware (available on Windows, Linux, and OSX), or if you prefer to use another IDE such as Visual Studio Code for your x86 Assembly development, the plain text ASM file is right for you!
If you have any questions or would like to learn more about 16/32-bit Assembly, head on over to the project Discord Server and get help from our #development channel! We have a friendly group of developers who are happy to help you learn more about Reverse Engineering, x86 Assembly, or how The MajorBBS/Worldgroup operates.
Latest MBBSEmu Alpha
There's so much happening with MBBSEmu that it's hard to constantly keep it summarized here! Follow/Star/Fork/Love/Admire the project on GitHub to keep up to date on the changes as they're pushed!
You can get the latest Alpha release on GitHub (Link)