<div class="oldstyle">&#10; &#10; <div class="header_notop">DarkBASIC Enhancement Pack</div>&#10; &#10; <p><strong>News: The DarkBASIC Enhancement Pack is included FREE when you purchase DarkBASIC Electronic from this web site.</strong></p>&#10; &#10; <p>This inexpensive upgrade adds many new and exciting advanced features to DarkBASIC. It is the same Enhancement Pack as originally sold with the old boxed version of <a href="/?m=view_product&id=2104">DarkMATTER</a>. This product is delivered electronically via a download link.</p>&#10; &#10; <div align="center"><img src="%%IMAGEPATH%%epfeatures.gif" width=400 height=47 alt="" border=0></div>&#10; &#10; <div class="header">Feature List:</div>&#10; &#10; <ul>&#10; <li><div class="LI_item">Multi-player support for LAN/Internet based games</div></li>&#10; <li><div class="LI_item">DLL support - extend DarkBASIC further than ever before</div></li>&#10; <li><div class="LI_item">Memblock Access - handle and access DarkBASICs memory structure</div></li>&#10; <li><div class="LI_item">Back Buffer support - get into the inner workings of DarkBASIC</div></li>&#10; <li><div class="LI_item">Registry support - write to and read from the Windows registry</div></li>&#10; <li><div class="LI_item">Environmental Audio - add EAX effects to your games now!</div></li>&#10; </ul>&#10; &#10; <div class="header">Over 190 New Commands</div>&#10; &#10; <p>The DarkBASIC Enhancement Pack will upgrade any full version of DarkBASIC * to v1.13, adding over 190 new commands to V1.08.</p>&#10; &#10; <b>SYSTEM COMMANDS</b>&#10; &#10; <pre>CALL DLL DLL Number, Function String, [Params]&#10; Return Data = CALL DLL(DLL Number, Function String, [Params])&#10; ALWAYS ACTIVE OFF&#10; Return Value = DLL CALL EXIST(DLL Number, Function String)&#10; DELETE DLL DLL Number&#10; Return Value = DLL EXIST(DLL Number)&#10; LOAD DLL Filename$, DLL Number&#10; ALWAYS ACTIVE ON&#10; EXIT PROMPT Title Name, Description Name&#10; </pre>&#10; &#10; <b>SOUND COMMANDS</b>&#10; &#10; <pre>SET EAX Effect Value</pre>&#10; &#10; <b>INPUT COMMANDS</b>&#10; &#10; <pre>CLEAR ENTRY BUFFER&#10; Return String = ENTYR$()&#10; MAKE MEMBLOCK FROM FILE File Number, Memblock Number&#10; READ MEMBLOCK File Number, Memblock Number&#10; Return Value = GET REGISTRY(Folder Name, Key Name)&#10; WRITE MEMBLOCK File Number, Memblock Number&#10; WRITE TO REGISTRY Folder Name, Key Name, Value&#10; </pre>&#10; &#10; <b>MULTIPLAYER COMMANDS</b>&#10; &#10; <pre>SEND NET MESSAGE FLOAT Player Number, Float Value&#10; SEND NET MESSAGE INTEGER Player Number, Integer Value&#10; SEND NET MESSAGE MEMBLOCK Player Number, Memblock Number<br>&#10; SEND NET MESSAGE MEMBLOCK Player Number, Memblock Number, Guarentee Packet&#10; SEND NET MESSAGE STRING Player Number, String&#10; Return Value = NET MESSAGE INTEGER()&#10; Return Value = NET MESSAGE FLOAT()&#10; Return Value = NET MESSAGE STRING$()&#10; NET MESSAGE MEMBLOCK Memblock Number&#10; PERFORM CHECKLIST FOR NET CONNECTIONS&#10; PERFORM CHECKLIST FOR NET SESSIONS&#10; CREATE NET GAME Gamename, Playername, Number Of Players<br>&#10; CREATE NET GAME Gamename, Playername, Number Of Players, Flag&#10; FREE NET GAME&#10; JOIN NET GAME Session Number, Playername&#10; SET NET CONNECTION Connection Number<br>&#10; SET NET CONNECTION Connection Number, Address Data&#10; PERFORM CHECKLIST FOR NET PLAYERS&#10; FREE NET PLAYER Player Number&#10; GET NET MESSAGE&#10; Return Value = NET GAME EXISTS()&#10; Return Value = NET GAME NOW HOSTING()&#10; Return Value = NET GAME LOST()&#10; CREATE NET PLAYER Playername&#10; Return Value = CREATE NET PLAYER(Playername)&#10; Return Value = NET MESSAGE EXISTS()&#10; Return Value = NET MESSAGE PLAYER FROM()&#10; Return Value = NET MESSAGE PLAYER TO()&#10; Return Value = NET MESSAGE TYPE()&#10; Return Value = NET PLAYER DESTROYED()&#10; Return Value = NET PLAYER CREATED()&#10; SEND NET MESSAGE BITMAP Player Number, Bitmap Number, Guarentee Packet&#10; SEND NET MESSAGE SOUND Player Number, Sound Number, Guarentee Packet&#10; SEND NET MESSAGE MESH Player Number, Mesh Number, Guarentee Packet&#10; NET MESSAGE SOUND Sound Number&#10; NET MESSAGE BITMAP Bitmap Number&#10; NET MESSAGE IMAGE Image Number&#10; NET MESSAGE MESH Mesh Number&#10; SEND NET MESSAGE IMAGE Player Number, Image Number, Guarentee Packet&#10; </pre>&#10; &#10; <b>MEMBLOCK COMMANDS</b>&#10; &#10; <pre>MAKE MEMBLOCK Memblock Number, Size in Bytes&#10; DELETE MEMBLOCK Memblock Number&#10; Return Value = GET BACKBUFFER DEPTH()&#10; Return Value = MEMBLOCK EXIST(Memblock Number)&#10; COPY MEMBLOCK From, To, PosFrom, PosTo, Bytes&#10; WRITE MEMBLOCK BYTE Memblock Number, Position, Byte&#10; WRITE MEMBLOCK WORD Memblock Number, Position, Word&#10; WRITE MEMBLOCK DWORD Memblock Number, Position, DWord&#10; Return Value = MEMBLOCK BYTE(Memblock Number, Position)&#10; WRITE MEMBLOCK FLOAT Memblock Number, Position, Float&#10; Return Value = MEMBLOCK WORD(Memblock Number, Position)&#10; Return Value = GET MEMBLOCK PTR(Memblock Number)&#10; Return Value = MEMBLOCK FLOAT(Memblock Number, Position)&#10; Return Value = MEMBLOCK DWORD(Memblock Number, Position)&#10; Return Value = GET MEMBLOCK SIZE(Memblock Number)&#10; CHANGE MESH FROM MEMBLOCK Mesh Number, Memblock Number&#10; MAKE BITMAP FROM MEMBLOCK Bitmap Number, Memblock Number&#10; MAKE MESH FROM MEMBLOCK Mesh Number, Memblock Number&#10; MAKE IMAGE FROM MEMBLOCK Image Number, Memblock Number&#10; MAKE MEMBLOCK FROM BITMAP Memblock Number, Bitmap Number&#10; MAKE MEMBLOCK FROM MESH Memblock Number, Mesh Number&#10; MAKE MEMBLOCK FROM IMAGE Memblock Number, Image Number&#10; MAKE MEMBLOCK FROM SOUND Memblock Number, Sound Number&#10; MAKE SOUND FROM MEMBLOCK Sound Number, Memblock Number&#10; Return Value = GET BACKBUFFER HEIGHT()&#10; Return Value = GET BACKBUFFER PITCH()&#10; Return Pointer = GET BACKBUFFER PTR()&#10; Return Value = GET BACKBUFFER WIDTH()&#10; LOCK BACKBUFFER&#10; UNLOCK BACKBUFFER&#10; </pre>&#10; &#10; * Please note that the enhancement pack will not upgrade free or trial versions of DarkBASIC&#10; &#10; <div class="header">Order Online</div>&#10; &#10; %%[2242]ORDERBOX%%&#10; &#10; </div>