Commit 74b0ea51 authored by Rob Swindell's avatar Rob Swindell

Merge branch 'master' of gitlab.synchro.net:main/sbbs

parents b7522c38 a81f2baa
......@@ -15,8 +15,8 @@ gcc.*
*.lib
*.map
*.dcu
src/sbbs3/ctrl/*.drc
src/sbbs3/ctrl/*.tds
*.drc
*.tds
src/sbbs3/ctrl/sbbsctrl.mak
3rdp/src
localdefs.mk
......
......@@ -62,6 +62,10 @@ sbbs-windows:
- .\build.bat
- cd ../useredit
- .\build.bat
- cd ../../../xtrn/sbj
- make
- cd ../tbd
- make
artifacts:
name: sbbs-win32
paths:
......@@ -69,6 +73,7 @@ sbbs-windows:
- "src/sbbs3/*.dll.release/*.dll"
- "src/sbbs3/*/*.exe.release/*.exe"
- "src/sbbs3/*/*.exe"
- "xtrn/*/*.exe"
sexpots-windows:
tags: [Windows]
......
......@@ -29,6 +29,10 @@
# hostname, and that host must point to the IP address that the IRCd will be
# running on.
#
# To control the interfaces the ircd binds on when running as a service, they
# need to be configured in the services.ini file. When running as a stand-alone
# script, the ircd always binds to the wildcard address (ie: all addresses).
#
# M:hostname:ip(Unused):description:port
#
M:SYSTEM_QWKID.synchro.net:*:SYSTEM_NAME:6667
......@@ -261,6 +265,10 @@ H:*:*:rrx.synchro.net
# from jsexec) or inside the Synchronet services configuration. One port per
# line.
#
# To control the interfaces the ircd binds on when running as a service, they
# need to be configured in the services.ini file. When running as a stand-alone
# script, the ircd always binds to the wildcard address (ie: all addresses).
#
# P:*:*:*:port
#
#P:*:*:*:7000
......
......@@ -92,6 +92,10 @@
QUIET = @
!endif
!ifndef 3RDP_ROOT
3RDP_ROOT = $(SRC_ROOT)/../3rdp
!endif
# OS-specific
DIRSEP = \ # This comment is necessary
EXEFILE = .exe
......
......@@ -940,11 +940,11 @@ int ansi_writestr_cb(const unsigned char *str, size_t len)
int ansi_initio_cb(void)
{
#ifdef _WIN32
DWORD conmode = 0;
if(isatty(fileno(stdin))) {
if(!SetConsoleMode(GetStdHandle(STD_INPUT_HANDLE), ENABLE_VIRTUAL_TERMINAL_INPUT))
return(0);
DWORD conmode = 0;
GetConsoleMode(GetStdHandle(STD_OUTPUT_HANDLE), &conmode);
if(!SetConsoleMode(GetStdHandle(STD_OUTPUT_HANDLE), conmode | ENABLE_VIRTUAL_TERMINAL_PROCESSING))
return(0);
......
......@@ -39,7 +39,6 @@
#include <stdarg.h>
#include <stdlib.h> /* alloca */
#include <stdio.h>
#include <stdbool.h>
#if defined(_WIN32)
#include <malloc.h> /* alloca() on Win32 */
#endif
......@@ -1677,7 +1676,7 @@ CIOLIBEXPORT struct ciolib_screen * CIOLIBCALL ciolib_savescreen(void)
}
if (vmode != -1) {
ret->pixels = ciolib_getpixels(0, 0, vparams[vmode].charwidth * vparams[vmode].cols - 1, vparams[vmode].charheight * vparams[vmode].rows - 1, true);
ret->pixels = ciolib_getpixels(0, 0, vparams[vmode].charwidth * vparams[vmode].cols - 1, vparams[vmode].charheight * vparams[vmode].rows - 1, TRUE);
}
ciolib_vmem_gettext(1, 1, ret->text_info.screenwidth, ret->text_info.screenheight, ret->vmem);
ret->fg_colour = ciolib_fg;
......
Name: Adventure Door Game Toolkit
Desc: The Adventure Door Game Toolkit will allow you to use any of the many available normal size AGT(c) game modules as door games on your BBS.
By: Robert A. Dalton, Dalton Software
Cats: Games
Subs: Adventure
exe: play.exe
; To run other game modules, you will need to copy the game directory,
; as well as the external program entry and event
; In the new dir, change the last line of key.dat to which game you want:
; cave, crusade, or alice, and then remove gen.dat and player.dat
[md5:da063296e594c614a35c946487efdc94]
ver = 1.03
url = http://bbsfiles.com/ftp/Dalton/adgt103.zip
[prog:ADGT]
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
name = Adventure Door Game Toolkit
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
cmd = play /N%# /P%n
ars = DOS
execution_ars = NOT GUEST
settings = XTRN_ANSI | XTRN_SH | XTRN_MULTIUSER
type = XTRN_GAP
;clean_cmd =
[event:ADGTMAINT]
;prompt = true
cmd = maint.exe
name = Adventure Door Game Toolkit Daily Maintenance
; all days
days = 127
time = 00:00
Name: Camptown Races
Desc: Fun and easy to play door game of pony track racing
By: Robert A. Dalton, Dalton Software
Cats: Games
Subs: Sports, Racing
exe: campt.exe
[md5:819894c1cfed5c347ecb0089569d99ed]
ver = 2.0
url = http://bbsfiles.com/ftp/Dalton/campt200.zip
[prog:CAMPT]
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
name = Camptown Races
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
cmd = campt /N%# /P%n
ars = DOS
execution_ars = NOT GUEST
settings = XTRN_ANSI | XTRN_SH | XTRN_MULTIUSER
type = XTRN_GAP
;clean_cmd =
[event:CAMPTMAINT]
;prompt = true
cmd = maint.exe
name = Camptown Races Daily Maintenance
; all days
days = 127
time = 00:00
\ No newline at end of file
Name: Death by Trivia
Desc: A trivia door game with a difference!
By: Robert A. Dalton, Dalton Software
Cats: Games
Subs: Trivia
exe: dbt.exe
[md5:0d3cfaf621dab8f56709335bd3497b27]
ver = 1.00
url = http://bbsfiles.com/ftp/Dalton/dbt100.zip
[prog:DBT]
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
name = Death by Trivia
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
cmd = dbt /N%# /P%n
ars = DOS
execution_ars = NOT GUEST
settings = XTRN_ANSI | XTRN_SH | XTRN_MULTIUSER
type = XTRN_GAP
;clean_cmd =
Name: Escape
Desc: Fun and entertaining arcade door game like the old robotron game.
By: Robert A. Dalton, Dalton Software
Cats: Games
Subs: Arcade
exe: escape.exe
[md5:76c8cd06f4c3229509ca6c894bf122fc]
ver = 1.00
url = http://bbsfiles.com/ftp/Dalton/esc100.zip
[prog:ESC]
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
name = Escape
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
cmd = escape /N%# /P%n
ars = DOS
execution_ars = NOT GUEST
settings = XTRN_ANSI | XTRN_SH | XTRN_MULTIUSER
type = XTRN_GAP
;clean_cmd =
[event:ESCMAINT]
;prompt = true
cmd = maint.exe
name = Escape Daily Maintenance
; all days
days = 127
time = 00:00
\ No newline at end of file
Name: Godfather of Crime
Desc: A rip-roaring, knock-em-dead ANSI role playing game of the 1930s New York organized Crime Scene!
By: Robert A. Dalton, Dalton Software
Cats: Games
Subs: RPG
exe: goc.exe
[md5:e646bbe3890bbb469c3c7eabad2f289e]
ver = 2.11
url = http://bbsfiles.com/ftp/Dalton/goc211.zip
[md5:c77ce698bce2d4934fe36233160868ee]
ver = 1.00
[pre-eval:file_exists(startup_dir + 'gen.dat')]
prompt = false
required = true
fail = You must run the SETUP.EXE first.
[prog:GOC]
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
name = Godfather of Crime
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
cmd = goc /N%# /P%n
ars = DOS
execution_ars = NOT GUEST
settings = XTRN_ANSI | XTRN_SH | XTRN_MULTIUSER
type = XTRN_GAP
;clean_cmd =
[event:GOCMAINT]
;prompt = true
cmd = maint.exe
name = Godfather of Crime Daily Maintenance
; all days
days = 127
time = 00:00
Name: Grunt Fest
Desc: Mech combat door game
By: Robert A. Dalton, Dalton Software
Cats: Games
Subs: Combat, Mech, War, Card
exe: gfest.exe
[md5:8da2c573d76460e4a4eb23b7c1614320]
ver = 1.23
url = http://bbsfiles.com/ftp/Dalton/gfest123.zip
[prog:GFEST]
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
name = Grunt Fest
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
cmd = gfest /N%# /P%n
ars = DOS
execution_ars = NOT GUEST
settings = XTRN_ANSI | XTRN_SH | XTRN_MULTIUSER
type = XTRN_GAP
;clean_cmd =
Name: Rise to Power
Desc: Game of intrigue in 15th Century Germany. Can you fight and scheme your way to become kind and unite the 10 warring provinces of Germany?
By: Robert A. Dalton, Dalton Software
Cats: Games
Subs: Strategy
exe: rtp.exe
[md5:3b8e9ac42b7af711fbebc8d1a9b29f72]
ver = 2.0
url = http://bbsfiles.com/ftp/Dalton/rtp200.zip
[md5:8a385913a39e499561a4d1eb8defbed3]
ver = 1.30
[pre-eval:file_exists(startup_dir + 'gen.dat')]
prompt = false
required = true
fail = You must run the SETUP.EXE first.
[prog:RTP]
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
name = Rise to Power
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
cmd = rtp /N%# /P%n
ars = DOS
execution_ars = NOT GUEST
settings = XTRN_ANSI | XTRN_SH | XTRN_MULTIUSER
type = XTRN_GAP
;clean_cmd =
[event:RTPMAINT]
;prompt = true
cmd = maint.exe
name = Rise to Power Daily Maintenance
; all days
days = 127
time = 00:00
Name: Ship of the Line
Desc: Half war-game/half card game set in the period of great wooden sailing ships
By: Robert A. Dalton, Dalton Software
Cats: Games
Subs: Combat, Nautical, War, Card
exe: sotl.exe
[md5:cca391d37e4224e8433491c70ce8fd07]
ver = 1.13
url = http://bbsfiles.com/ftp/Dalton/sotl113.zip
[prog:SOTL]
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
name = Ship of the Line
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
cmd = sotl /N%# /P%n
ars = DOS
execution_ars = NOT GUEST
settings = XTRN_ANSI | XTRN_SH | XTRN_MULTIUSER
type = XTRN_GAP
;clean_cmd =
Name: Task Force Broadside
Desc: Pacific Naval War Game
By: Robert A. Dalton, Dalton Software
Cats: Games
Subs: Combat, Nautical, War, Card
exe: tfb.exe
[md5:32a5c301c765d16bb5b57bcf8f0051a9]
ver = 1.13
url = http://bbsfiles.com/ftp/Dalton/tfb113.zip
[prog:TFB]
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
name = Task Force Broadside
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
cmd = tfb /N%# /P%n
ars = DOS
execution_ars = NOT GUEST
settings = XTRN_ANSI | XTRN_SH | XTRN_MULTIUSER
type = XTRN_GAP
;clean_cmd =
Name: War Freight
Desc: Simulator of rail operations
By: Robert A. Dalton, Dalton Software
Cats: Games
Subs: Simulator, Railroad, Tycoon
exe: wfreight.exe
[md5:2e24a6d1d96829c9459f86d4d502156c]
ver = 1.13
url = http://bbsfiles.com/ftp/Dalton/wfrt113.zip
[prog:WFREIGHT]
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
name = War Freight
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
cmd = wfreight /N%# /P%n
ars = DOS
execution_ars = NOT GUEST
settings = XTRN_ANSI | XTRN_SH | XTRN_MULTIUSER
type = XTRN_GAP
;clean_cmd =
......@@ -52,7 +52,7 @@ prompt = false
[event:FFBULL]
prompt = false
cmd = ffbull FOODFITE.CFG
cmd = ffbull.exe FOODFITE.CFG
name = Food Fight Bulletin Generation
; all days
days = 127
......@@ -72,4 +72,4 @@ cmd = ffmaint LOG=24
name = Food Fight Maintenance Purge Daily Log
; all days
days = 127
time = 0:00
\ No newline at end of file
time = 0:00
Name: Operation: Overkill
Desc: Fantasy Role-Playing
By: Dustin Nulf, Michael Montique, Bryan Turner
Cats: Games
Subs: Multiplayer, RPG
exe: ooii.exe
;AKA Operation: Overkill II
;http://wiki.synchro.net/howto:door:ooii
; Defaults to the map vidland.map
[md5:8ab178e9ef668d0d8fe2efc125d98a32]
ver = 1.20
url = http://www.operationoverkill.com/files/ooii_120.zip
[md5:fb448a43d3da4e14bc61606320d33fd1]
ver = 1.11
url = https://www.ziskind.com/bbsdoorfiles/ooii/oo111.zip
[md5:26a91c349e08a4052129ee90b527309d]
ver = 1.10
url = https://www.ziskind.com/bbsdoorfiles/ooii/oo110-1.zip
[md5:75917bcbda6a7aa478e0968830219626]
ver = 1.00
[exec:../3rdp-install/overkill.js]
prompt = false
[prog:OVERKILL]
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
name = Operation: Overkill
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
cmd = ooiidoor.bat
ars = DOS
execution_ars = NOT GUEST
settings = XTRN_ANSI | XTRN_SH | XTRN_STARTUPDIR | XTRN_PAUSE
type = XTRN_GAP
"use strict";
var gamedir = fullpath(js.startup_dir);
if (file_exists(js.startup_dir + 'ooiidoor.bat')) {
file_rename(js.startup_dir + 'ooiidoor.bat', js.startup_dir + 'ooiidoor.bat.old');
}
var file = new File(js.startup_dir + 'ooiidoor.bat');
if (!file.open("w")) {
writeln("Error " + file.error + " writing to ooiidoor.bat");
exit(1)
}
file.writeln("OOINFO 2 " + gamedir);
file.writeln("MAINTOO");
file.writeln("OOII");
file.close();
if (file_exists(js.startup_dir + 'ooconfig.dat')) {
file_rename(js.startup_dir + 'ooconfig.dat', js.startup_dir + 'ooconfig.dat.old');
}
var file = new File(js.startup_dir + 'ooconfig.dat');
if (!file.open('w')) {
writeln("Error " + file.error + " writing to ooconfig.dat");
exit(1)
}
file.writeln("OVERKILL | Name of the BBS System |");
file.writeln("75777899 | OOII Registration Code |");
file.writeln("NONE | Obsolete Reg Code |");
file.writeln("GAP | BBS System |");
file.writeln(gamedir + " | Path to BBS Data Files |");
file.writeln(system.text_dir + " | Path to TOP10/FRONTIER Ansi Bulletins |");
file.writeln(system.text_dir + " | Path to TOP10/FRONTIER Ascii Bulletins |");
file.writeln("NONE | Pause String for Bulletins |");
file.writeln("YES | Multi-Node? |");
file.writeln("DIRECT | Video mode BIOS/DIRECT |");
file.writeln("FOSSIL | Comm Support FOSSIL/NORMAL |");
file.writeln("42 | Fight Delay |");
file.writeln("ZZEXLIA | Complex Name |");
file.writeln("VIDLAND.MAP | Map Files |");
file.writeln("60 | Minutes per Play |");
file.writeln("3 | Game Plays per Day |");
file.writeln("240 | Minutes Between Plays |");
file.writeln("16:00 | Starting Chat Hour |");
file.writeln("22:00 | Ending Chat Hour |");
file.writeln("4 | Player Level for Hydrite Kidnapping |");
file.writeln("21 | Days Until Inactive Player Deleted |");
file.writeln("30 | Oracle Threshold Point |");
file.writeln("150 | Frontier Log Length |");
file.writeln("10 | Bases per Player |");
file.writeln("10 | Game Plays in Gaming Room |");
file.writeln("90 | Hunger Moves |");
file.writeln("60 | Total Stats New Players |");
file.writeln("4000 | Crystals for New Players |");
file.writeln("NIL | LR Weapon for New Players |");
file.writeln("NIL | HTH Weapon for New Players |");
file.writeln("NIL | Armor for New Players |");
file.writeln(gamedir + " | Path to Game's Data Files |");
file.writeln(gamedir + " | Path to Game's Text Files |");
file.writeln("4 | Minimum Average Player Level |");
file.writeln("120 | Total Minutes per Day |");
file.writeln(gamedir + " | Path to Game's NEWS.ASC Text File |");
file.writeln(gamedir + " | Path to Game's BANNED.DAT Data File |");
file.close();
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment