PCBoard Programming Executable

From Wikipedia, the free encyclopedia

PCBoard Programming Executables (known as PPEs) were used to modify and enhance bulletin board systems running PCBoard. They were programmed in PCBoard Programming Language (PPL). PPL itself is a lot like the BASIC programming language, but variables need to be declared and no line numbers were needed. Access to PCBoard's own functions and settings was available by built-in library functions. PPEs were installed either by assigning them a command from the main menu or by calling them instead of displaying one of PCBoard's text messages of prompts.

PCBoard came with a so-called compiler (PPLC) that created .ppe files from their source code. These were not actually binary files containing machine code, but rather tokenized source code interpreted by PCBoard itself during runtime. Therefore, PPEs run very slow. For example, a PPE calculating prime numbers on a 500 MHz PC would run about as fast as on a Commodore 64.

PPEs were traded a lot in BBS'es as freeware, shareware or even cracked shareware during the heyday of BBS'es. Enthusiast coders created modifications for almost any screen on a BBS that were not always only cosmetic (prompt replacements) and even created new uses, such as "uploaded by:" signatures in the description of any file, MP3 ID3 tag handling, oneliner walls, votings and many games. ANSI graphics were heavily used.

[edit] Decompilation

Tools to "decompile" PPE files back into their source code were available freely, most notably the french group Aegis Corp's PPLX. Variable and function names got lost in the process. PPLC Version 3.40 (that came with PCBoard 15.4beta) used some means of encryption to prevent decompilation of PPE files, to prevent cracking of shareware PPEs. As PPEs were rather powerful and could alter user setting and delete files, sysops liked to decompile PPEs to check them for backdoors.

[edit] Notable PPEs

The most notable PPEs are:

  • EFlag to allow tagging of files for download by lightbars instead of having to type the filename
  • The Lemming Pager for paging the sysop, which would display a lemming countdown and his violent death, should the sysop not show up for chat.

Image:Pcboard-ppe-eflag.png

Image:Pcboard-ppe-lemmingpager.png