home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format 106
/
af106a.adf
/
archives
/
serious.lzx
/
ViNCEd
/
Include
/
vnc_lib.fd
< prev
next >
Wrap
Text File
|
1997-11-19
|
10KB
|
334 lines
*-----------------------------------------
*-- VNCLibrary --
*-- © 1990-97 THOR-Software inc --
*-- --
*-- Library header file Version 3.50 --
*-- --
*-- created 5/2/92 by THOR --
*-- updated to 2.06 3/28/93 --
*-- updated to 2.08 4/21/93 --
*-- updated to 2.12 6/18/93 --
*-- updated to 2.14 6/25/93 --
*-- updated to 2.16 9/30/93 --
*-- updated to 2.17 10/4/93 --
*-- updated to 2.21 11/28/93 --
*-- updated to 2.26 1/1/94 --
*-- updated to 2.32 2/21/94 --
*-- updated to 3.00 3/1/96 --
*-- updated to 3.12 10/13/96 --
*-- updated to 3.14 11/02/96 --
*-- updated to 3.19 2/8/97 --
*-- updated to 3.30 3/30/97 --
*-- updated to 3.40 5/8/97 --
*-- updated to 3.50 16/7/97 --
*-----------------------------------------
##base _VNCBase
##bias 42
*---- system entry points
##private
VNCInputHandler(events,vncbase)(a0/a1)
##public
VNCRawKeyConvert(event,buffer,length,keymap,mode)(a0/a1,d1/a2,d0)
*---- SnipMap Support
GetVNCSnip()()
SetVNCSnip(snip)(a0)
AddVNCSnipHook(hook)(a0)
RemVNCSnipHook(hook)(a0)
*---- 2 slots reserved here
##bias 90
*---- global patchable hook control. Don't call it, patch it
InstallGlobalHooks(cn)(a5)
*---- tabexpansion control
SwitchTabExpansion(cn,onoff)(a5,d0)
HandleTabExpansion(cn,len,pos,dir,buf,owner)(a5,d0,d1,d4,a0,a1)
AbortTabExpansion(cn)(a5)
*---- system entry points, continued
##private
ImVNCInputHandler(events,vncbase)(a0/a1)
VNCPost()()
SysCopySnip(cn)(a5)
SysPasteSnip(cn)(a5)
VNCPreAdd()()
VNCPostRemove()()
*---- CNWindow support
##public
AddWindow(cn)(a5)
RemWindow(cn)(a5)
LockWindow(cn)(a5)
UnLockWindow(cn)(a5)
AllocCNWindow(cn)(a5)
FreeCNWindow(cn)(a5)
OpenViNCWindow(cn,newwindow)(a5,a0)
CloseViNCWindow(cn)(a5)
##private
LockList()()
UnLockList()()
##public
FindCNWindow(filehandle)(d1)
UnFindCNWindow(filehandle)(d1)
*---- Preferences Support
LockPrefs()()
UnLockPrefs()()
SetVNCPrefs(buffer,len)(a0/d0)
GetVNCPrefs(buffer,len)(a0/d0)
GetVNCDefaultPrefs(buffer,len)(a0/d0)
LoadPrefs(buffer,max)(a0/d0)
SetWindowPrefs(cn,buffer,len)(a5,a0/d0)
GetWindowPrefs(cn,buffer,len)(a5,a0/d0)
*--- 2 slots reserved here
##bias 282
ReduceINPLines(cn,max)(a5,d0)
ReduceUpperLines(cn,max)(a5,d0)
ReduceLowerLines(cn,max)(a5,d0)
LoadPrefsFrom(buffer,max,file)(a0/d0,a1)
List2Prefs(mlist,blist,prefs,mlen,blen,mnum,bnum)(a0,a2,a1,d0,d2,d1,d3)
Prefs2List(mlist,blist,prefs,mlen,blen,mnum,bnum)(a0,a2,a1,d0,d2,d1,d3)
AllocPrefsBuffer()()
FreePrefsBuffer(buf)(a1)
*---- entry points for creating custom windows
DosInitPC()()
MainInitPC()()
MountHandler(name,path,segment,override)(a0/a1,d1,d0)
DisMountHandler(segment)(d1)
AddVNCHook(cn,hook)(a5,a0)
RemVNCHook(cn,hook)(a5,a0)
*---- patchable hooks for window open/close messaging. Don't call them, patch them
SendRequestPattern(cn,pat)(a5,a0)
SendWindowOpens(cn,window)(a5,a0)
SendWindowCloses(cn,window)(a5,a0)
SendWindowQuits(cn)(a5)
##bias 390
*---- obsolete device support functions, use the pooled functions below !
VNCCreateExtIO(port,size)(a1/d0)
VNCDeleteExtIO(ioreq)(a1)
VNCCreateStdIO(port)(a1)
VNCDeleteStdIO(ioreq)(a1)
VNCCreatePort(name,pri)(a1/d0)
VNCDeletePort(port)(a1)
VNCNewList(list)(a0)
##private
DelayAWhile(cn)(a5)
##public
*---- More support functions and hooks, added in 3.0
VNCRequestFile(cn,vncreq)(a5,a0)
*---- Patchable hooks (try if you can do better)
CtrlZSuspend(cn,owner)(a5,a4)
*---- Even more support functions
VNCUniqueID()()
GetNodeN(list,count)(a0,d0)
*---- pooled editor memory management (static and dynamic)
AllocEdMem(cn,bytesize,reqments)(a5,d0/d1)
FreeEdMem(cn,mem)(a5,a1)
AllocLine(cn,size)(a5,d0)
FreeLine(cn,line)(a5,a0)
GetYLine(cn,position)(a5,d0)
GetForcedYLine(cn,position)(a5,d0)
*---- line scrolling
LogicalScrollUp(cn,count)(a5,d0)
LogicalScrollDown(cn,count)(a5,d0)
LogicalRemoveNLines(cn,count,position)(a5,d0/d1)
LogicalInsertNBlankLines(cn,count,position)(a5,d0/d1)
*---- 1.3 callable allocvec functions
VNCAllocVec(bytesize,reqments)(d0,d1)
VNCFreeVec(vec)(a1)
*---- patchable job control hooks
NotifyChOwner(cn,old,new,cmd)(a5,a0,a1,d0)
NotifyClearScreen(cn)(a5)
*---- number conversion and strings
VNCAtoI(strsuccptrptr)(a0)
VNCHtoI(strsuccptrptr)(a0)
VNCStrToL(strsuccptrptr,base)(a0/d0)
##private
VNCReserved03()()
##public
VNCItoA(number,buffer)(d0/a0)
##private
VNCReserved04()()
VNCObsoleteStrLen(str)(a0)
##public
VNCStrCmp(str1,str2)(a0/a1)
VNCStrICmp(str1,str2,first)(a0/a1,d0)
VNCToUpper(char)(d0)
VNCSPrintf(buffer,strem,fmtstr)(a0/a1/a2)
FilterInput(cn,cursorxptr,buffer)(a5,a0/a1)
*---- 1 slot reserved here
##bias 624
*---- more support 3.0
ConvertWindowTitle(cn,owner,from,to)(a5,a4,a0,a1)
FindCloseMacro(cn,owner)(a5,a4)
PrintSuspend(cn,port,owner)(a5,a0,a4)
*---- scrolling, inserting and deleting
ScrollNLeft(cn,count)(a5,d0)
ScrollNRight(cn,count)(a5,d0)
ScrollNUp(cn,count)(a5,d0)
ScrollNDown(cn,count)(a5,d0)
RemoveNLines(cn,count,position)(a5,d0/d1)
InsertNLines(cn,count,position)(a5,d0/d1)
DeleteLinesDown(cn,position)(a5,d0)
SetTextRange(cn)(a5)
InsertBlock(cn,string,len,pos)(a5,a0/d0,d1)
InsertChar(cn,char,len,pos)(a5,a0/d0,d1)
DeleteChar(cn,size,pos)(a5,d1/d0)
PrintAll(cn)(a5)
RefreshAll(cn)(a5)
*---- 3 slots reserved here
##bias 738
*---- block functions
BlockStart(cn)(a5)
BlockChange(cn)(a5)
BlockEnd(cn)(a5)
##private
VNCReserved08()()
##public
CutBlock(cn)(a5)
CopyBlock(cn)(a5)
PasteBlock(cn)(a5)
PasteCommand(cn)(a5)
HideBlock(cn)(a5)
CopyBlockQuiet(cn)(a5)
VNCMICut(cn)(a5)
VNCMICopy(cn)(a5)
VNCMIPaste(cn)(a5)
VNCMISelectAll(cn)(a5)
CopyBufferToVec(cn)(a5)
RemoveBlock(cn,flags)(a5,d0)
*---- mask functions et al.
GetGlobalRasterMask(cn)(a5)
RemakeRasterLists(cn)(a5)
FlushCopyBuffer(cn)(a5)
*---- more block support 3.0
VNCMICopyQuiet(cn)(a5)
*---- gadget support
HandleGadgets(cn)(a5)
##private
VNCReserved18()()
VNCReserved19()()
##public
GetProp(cn,prop,visible,entries)(a5,a0,d0/d1)
SetProp(cn,prop,visible,entries,position)(a5,a0,d0/d1/d2)
GetXProp(cn)(a5)
GetYProp(cn)(a5)
SetXProp(cn)(a5)
SetYProp(cn)(a5)
##private
VNCObsoleteBuildPropGadget(cn,edprop,type)(a5,a0,d0)
VNCReserved11()()
##public
AllocMacro(cn,cmd,num,maxlen)(a5,a0,d0,d1)
AllocButton(cn,cmd,title,num,maxlen,maxtitle)(a5,a0/a1,d0,d1/d2)
*---- 2 slots reserved here
##bias 948
*---- DOS support functions
VNCReplyPacket(dp,res1,res2)(a0,d0/d1)
AllocAsyncPacket(stream,size)(d0,d1)
QueueOwnerLine(cn,owner,buffer,size)(a5/a4,a0/d0)
PushOwnerLine(cn,owner,buffer,size)(a5/a4,a0/d0)
GetLineData(cn,owner,buffer,size)(a5/a4,a0/d0)
PutLineData(cn,owner,buffer,size)(a5/a4,a0/d0)
VNCLockDeviceList(mode)(d0)
VNCUnLockDeviceList(mode)(d0)
SendAsyncPacket(stream,type,arg1,data,size)(d1,d2,a1,a0/d0)
VNCDoPacket(type,arg1,arg2,arg3,arg4,arg5,arg6,arg7,port)(d0,d1/d2/d3/d4/d5/d6/d7,a0)
*---- line controlling
SaveActual(cn)(a5)
LoadActual(cn)(a5)
ClearActualINP(cn)(a5)
ChangeActualINP(cn,line)(a5,a0)
*---- console hacks
DataToConsole(cn)(a5)
DataFromConsole(cn)(a5)
*---- support functions
SwitchToUser(cn)(a5)
SwitchToDOS(cn)(a5)
*---- job control functions
Foreground(flags,stream)(d0,d1)
Background(flags,stream)(d0,d1)
*---- cursor movement
MoveCursorXY(cn,x,y,flags)(a5,d0/d1,d2)
MoveCursorX(cn,x,flags)(a5,d0,d1)
CursorToLeft(cn)(a5)
CursorToRight(cn)(a5)
DeleteCursorLine(cn,from,to,mask,flags)(a5,d0/d1/d2,d3)
NewSizeWindow(cn)(a5)
SearchWordFWD(cn,flags)(a5,d0)
SearchWordBKWD(cn,flags)(a5,d0)
HandleKeys(cn)(a5)
EmptyWindowPort(cn)(a5)
*---- 4 slots reserved here
##bias 1152
*---- nenu support
##private
VNCReserved14()()
##public
HandleMenu(cn)(a5)
RemoveMenu(cn)(a5)
BuildMenu(cn)(a5)
##private
VNCReserved20()()
VNCReserved21()()
##public
RemoveMenuFromWindow(cn)(a5)
AddMenuToWindow(cn)(a5)
BuildMenuStructs(cn,menucommand)(a5,a0)
SetEditItems(cn)(a5)
ConvertString(cn,from,to)(a5,a0/a1)
##private
VNCReserved22()()
##public
DoAsciiData(cn,string,len)(a5,a0/d0)
##private
VNCReserved15()()
VNCReserved16()()
##public
FreeMacroList(cn,list)(a5,a0)
*---- 3 slots reserved here
##bias 1266
*---- miscellaneos
PredLine(cn,line)(a5,a2)
SuccLine(cn,line)(a5,a2)
##private
VNCReserved17()()
##public
ClearFrame(cn)(a5)
BuildIfNeed(cn)(a5)
DisplayCursor(cn)(a5)
RemoveCursor(cn)(a5)
CmpText(cn,template,pos,cmp)(a5,a0/d0,a1)
SearchToPast(cn)(a5)
SearchToFuture(cn)(a5)
##private
SearchObsolete1(cn)(a5)
SearchObsolete2(cn)(a5)
##public
PredStarter(cn,lineptr)(a5,a0)
SuccStarter(cn,lineptr)(a5,a0)
LinearToLine(cn,char,line)(a5,a0,a1)
LinearToAlloc(cn,char,flags)(a5,a0,d0)
LineToLinear(cn,char,line)(a5,a1,a0)
*---- 1 slot reserved here
*---- extended version 3.00 entries: pooled device support
##bias 1374
PoolCreateExtIO(cn,port,size)(a5,a1/d0)
PoolDeleteExtIO(cn,ioreq)(a5,a1)
PoolCreateStdIO(cn,port)(a5,a1)
PoolDeleteStdIO(cn,ioreq)(a5,a1)
PoolCreatePort(cn,name,pri)(a5,a1/d0)
PoolDeletePort(cn,port)(a5,a1)
*---- 4 slots reserved here
##bias 1434
*---- extended 3.50 entries: buffer io support
VNCFOpen(name,flags,bufsize)(a0,d0,d1)
VNCFClose(handle)(a0)
VNCFRead(handle,buffer,length)(a0,a1,d1)
VNCFWrite(handle,buffer,length)(a0,a1,d1)
VNCFSeek(handle,offset,mode)(a0,d0,d1)
VNCOneRequester(body)(a0)
VNCTwoRequester(body)(a0)
VNCBuildFailureString(error,dest,header,un)(d0,a1,a2,a0)
GetHistory(filename,flags)(a0,d0)
GetScreen(filename,flags)(a0,d0)
PutHistory(filename,flags)(a0,d0)
PutScreen(filename,flags)(a0,d0)
*---- 4 slots reserved here
##end