TIP: Click on subject to list as thread! ANSI
echo: doorgames
to: TONY MASTER
from: OZZ NIXON
date: 2018-07-31 16:18:00
subject: Re: Any current BBS games

TM>ON> waiting for info on RLogin - then we will update Grubhub.
 
TM> you mean github? ;)
 
HAHAHA! Yeah, we own a restaurant and GrubHub is one of our delivery partners.
Wonder if I messed that up on my WikiPedia update yesterday...
 
 
TM> what language was this done?
 
This is done in layers ... the script(s) e.g. DOOR, BBS, TOSSER, MAILER all are
written in my script engine languages - called ModernPascal
(http://tutorial.modernpascal.com/)
 
The original DOORS were written in Turbo Pascal 7.0 and olders... thus why I
wrote my own compiler/script engine. I am 99% backward compatible with
Borland's Turbo Pascal 7.0 back to 3.2... excluding my variance on TextFile and
Binary File calls - everything that is applicable to 32bit and 64bit were
implemented. E.g. not MemB[Seg:Off] or FAR, etc.
 
These all run as either compiled Turbo Pascal 7.0 Binaries, or as scripts for
CodeRunner2 (my Node.JS type of solution, but more focused on Pascal and
BBS/Telnet solutions)... CodeRunner2 was written using Modern Pascal 2.0
Commercial Edition - which produces native 32/64bit binaries for Windows,
Linux, Mac, and Raspberry Pi.
 
And finally, Modern Pascal Interpreter was written using LA-PE (an AST
interpreter faster than PHP, Python, Ruby, etc to name a few) and FPC (Free
Pascal 2.6.4 up to 3.0.4).
 
So in short - PASCAL, but, its a hybrid of Pascal+C... so you can code:
 
Begin
   Write('What is your FIRST name: ');
   Ws:=Readln(36); // up to 36 characters, a variance from TP7
   Write('What is your LAST name: ');
   Ws:=Ws+#32+Readln(36-Succ(Length(Ws));
End;
 
or - full MPC syntax:
   Ws:=Ask('What is your FIRST name: ',Space(36), True, 120); // 2min, Blank is
ok, 36 spaces are reserved - nice when done with ANSI colors!
   Ws+=#32+Ask('What is your LAST name: ',Space(36-Succ(Length(Ws))), False,
120);
 
* To make that work both SOCKET and COMMAND LINE, you prefix it with:
{$IFDEF CODERUNNER}
   With Session do begin
{$ENDIF}
 
ending with:
{$IFDEF CODERUNNER}
   End;
{$ENDIF}
 
-- what that does is, if the code is running under CODERUNNER, then use the
Session Object, otherwise, uses the Display Unit. Both have Write, Writeln,
Colors (ANSI, VT*), Keyboard Routines etc. So, I can whip out command line code
- run it w/o compilation, fix bug, run again, then compile as closed source or
release as open source.
 
* I have been writing all of this since Feb 2000 in my spare time, and the last
2 years, almost full-time 7 days a week.
 
* Also (last sales pitch, it's FREE for open source projects!), I support PIPE
code - a little different than other BBS(es)... |1F is White on Blue. I used
PIPEs in both Session and Display as PIPE + Background (0..F) + Foreground
(0..F). And I am just weeks away from releasing a DELPHI and LAZARUS ANSI
Screen component that "looks like DOS" but supports ANSI for true color
Foreground on true color Background. (May port it to C# too). To get an idea
WTF can we do with CP437 and $RRGGBB colors goto:
   https://www.gridsagegames.com/rexpaint/  -- watch his animation of the
editor... note, his editor is a BITCH to learn... but WOW!
 
Oh, and supposedly Windows 10 CMD.EXE supports True Color ANSI also!!
 
Ozz 

--- dBridge & Rhenium
* Origin: RVA Fido Support - ExchangeBBS.com, ModernPascal.com (1:275/362)

SOURCE: echomail via QWK@docsplace.org

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.