Request of a friend... (a prologue)

Per request of a personal friend (MaDDoG - sysop of Toxic BBS) - I have spent the past few months redesigning Impulse BBS - to Modernized Pascal Compilers.
This is the forum to talk all things for the newest Impulse build.
Post Reply
ONiX
Site Admin
Posts: 45
Joined: Tue Nov 18, 2025 1:27 am

Request of a friend... (a prologue)

Post by ONiX »

mD asked one day on Discord - if I could make this modernized.

He shared: Impulse BBS getting some love ... on Reddit

After watching the video, I jumped onto my LinkedIn account, and tracked down NivenH. Introduced myself (a programmer with the same roots, except I started BBSing in 1983). :shock:

So, I downloaded the 7.1 source from **Serial Port**. I had developed near 10+ different BBS packages ~ however, this was the first time I stopped and tried to decipher a "Forum BBS" source. I have worked on Vision/X, Oblivion2, and other Art-Scene BBS packages... even authored the original RiSC BBS package for couriers in 1996 (based upon QuickBBS 2.x source code). The first time view of a Forum BBS source is crazy, when you see they used like 3 file names with adding a sequential number to the filename each time new ideas were incorporated. So, you have MAIL1.PAS, MAIL2.PAS, etc. FILE1.PAS, SYSOP1.PAS, MENU1.PAS - A total of 115 source files for Impulse 7.1...

It took me a while to get over my "NIH" (Not invented Here) issue a friend said I have. (meaning, I do not like using other people's code ~ I would rather write it from scratch). But, I started like I always do when taking over someone else's code. I opened the main source file IMP.PAS ~ and a notepad (actual pencil and paper!), I write down the flow of the code first ~ so I can learn what units are doing what. So I end up with my "Cheat-Sheet Quick Reference" by the time I am finished.
ONiX
Site Admin
Posts: 45
Joined: Tue Nov 18, 2025 1:27 am

Cheat-Sheet Quick Reference

Post by ONiX »

Cheat-Sheet Quick Reference

Code: Select all

Area	        Primary Units	                        Responsibility / Notes
====            =============                           =================
Menu / WFC	sysop7, sysop7m, sysop9, wfcmenu	SysOp editors, menu editors, WFC console entry point. Display starts in wfcmenu.

Configuration	sysop2*, sysop21, conf	                Full SysOp control panel (modem, ACS, vars, files, Fido, strings, colors) and conference handling.

Mail Engine	mail0–mail7, mail9	                Message storage, indexing, posting, reading, AutoMsg, QWK/REP support, batch uploads, and menu interfaces.

File System	file0–file14, file3–file9, file12	File base access, downloads/uploads, batch queue, validation, sorting, GIF specs.

Utilities/Misc	doors, timeBank, rumors, misc1–misc5,   Door handling, time bank, rumor management, system/misc helpers, scrollback buffer, multi-node coordination.
                scrlbk, multinod
                        
User Management	cuser, blacklist, logon1/2              User profile edits, login flow, blacklist checking, prompts.
Supporting Infrastructure	records, common*,       Shared record definitions, path helpers, string and file utilities, command execution wrappers.
                strproc*, myio, execbat, tmpcom
                
WFC Menu Focus	sysop1, menus, menus2, wfcmenu          Bootstrapped around sysop units; compile and run these first for quick UI testing once dependencies are modernized.
* Sorry, that was a real PITA to format.
Post Reply