Doors CS contains a powerful set of libraries for use in BASIC programs via the sum() token, centering around GUI features but also making other tasks impossible in pure BASIC or with other libraries possible. Doors CS also offers compatibility for all the major BASIC libraries, including Celtic III, XLib, PicArc, and (partially) Omnicalc.

To detect whether or not the DCSB Libs are available inside a basic program, use the sequence det([[42.

  • If it returns 42, no libraries are available.
  • If it returns 0, only Celtic III/Xlib/PicArc/Omnicalc is available.
  • If it returns 1337, all libraries are available, including the DCSB Libs.

Doors CS BASIC Libraries #

StringWidth - sum(0,“String of token(s)”)
ScanForPx - sum(1,X,Y,direction) dir: 1=up, 2=down, 3=left, 4=right
HomescreenToGraphscreen - sum(2,ULCD) ULCD: 0=no LCD update, 1=copy to LCD
EnumeratePicVars - sum(3)
ArcUnarcPic - sum(4,Pic#,desired) desired: 0=in RAM, 1=in Archive
DCSLibVersion - sum(5)
SimpleGUIMouse - sum(6,startX,startY)
PushGUIStack - sum(7,type,{args…})
PopGUIStacks - sum(8,numItems)
OpenGUIStack - sum(9)
CloseGUIStack - sum(10)
RenderGUI - sum(11[,ULCD])
GUIMouse - sum(12,startX,startY,dataStrN)
GUIMenu - sum(13,X,Y,“title”,“icon”,“itemlist”,“labellist”)
PushAnsStack - sum(14[,stackNumber])
PopAnsStack - sum(15[,stackNumber])
ClearAnsStack - sum(16[,stackNumber])
Cn2Send - sum(17,message)
Cn2Get - sum(18)
Cn2Ctrl - sum(19,Boolean)
Cn2Status - sum(20,Flag)\