1
1
Fork 0
mirror of https://github.com/QB64Official/qb64.git synced 2024-07-08 19:35:13 +00:00
Commit graph

9 commits

Author SHA1 Message Date
SMcNeill f0aea404f1 Patch to fix DO.LOOP of previous patch so it ONLY works for <,>,= comparisons. 2015-02-23 15:45:52 -05:00
SMcNeill d46ce94d2b Big fixes to <>, <=, >= to handle spaces between symbols. Fix to PRINT (X AND Y) = Y logic evaluation. 2015-02-19 11:14:30 -05:00
Galleon edb7ddc584 Swapped out old MP3 decoder for MINI-MP3
(see bugs/incompatibilities forum for more details)
2015-02-07 19:40:21 -08:00
Galleon 3928325615 Primarily implements gamepad support (via _DEVICES, STICK/STRIG)
Corrects dependency detection bug in prev update which rendered _SCREENIMAGE unusable
Implements new command _FPS which limits the maximum hardware fps (primarily for throttling SUB _GL) [default is 60]
Usage example:
        _FPS 100
2015-01-18 04:20:57 -08:00
Galleon 2af8c7399c Implements -g switch to compile with no graphical dependencies
(Can now generate stand-alone executables <1MB)
-g can be specified within code with:
$CONSOLE:ONLY
Note: Programs using this still need to call _DEST _CONSOLE or output will not be visible

Also added dependency rules to remove unrequired static system libs from being linked:
[X] lws2_32 as DEPENDENCY_SOCKETS
	_OPENHOST
	_OPENCLIENT
[X] -lwinspool as DEPENDENCY_PRINTER
	LPRINT
	_PRINTIMAGE
[X] -lwinmm & mmsystem.h
	Required by:
		FreeGlut (GUI)
		Audio Out
[X] -lksguid (From the DirectX SDK, Required for Audio)
	Required by:
		Audio Out
[X] -ldxguid (From the DirectX SDK, Required for Audio)
	Required by:
		Audio Out
[X] -lole32
	Required by:
		Audio Out (dsound.c)
[X] -lgdi32
	Required by:
		void sub__icon(int32 handle_icon, int32 handle_window_icon, int32 passed){
		int32 func__screenimage(int32 x1,int32 y1,int32 x2,int32 y2,int32 passed)
		Printer
Some code has been moved from inside libqb.cpp into subfolder internal\c\libqb

Added dummy config.h file so libsamplerate could compile in Linux (Need to establish when it was removed)
2015-01-06 03:55:55 -08:00
SMcNeill 5158950119 Fix to integer comparison so that (0 > -2147483648) evaluates as a True condition. 2014-10-06 03:21:57 -04:00
Luke Ceddia b9a52e9600 Incorporated the User Mods into the parts system.
This way, we only include that code if its commands are called upon.
In order to do this, some other areas had to be changed as well:
  - There is now a libqb.h file, which declares some routines in libqb.cpp,
    in order to allow them to be called from a separately compiled unit, i.e,
    the user mods part.
  - common.cpp now has an #include guard, just to be on the safe side.
  - The library purge routines know about the new part.
  - qb64.bas is modified to handle the new part; this area is just modeled
    off the code for the other parts.
  - Appropriate flags were set in the hash table entires for the commands.
  - The user mods, now being a separate compilation unit, #include common.cpp
    and libqb.h. The former is required for important type declarations and
    access to glut commmands, the latter for access to libqb routines.
  - qbx.cpp #includes the src.cpp file in the user mods part, which declares the
    routines.
Something to ponder: libqb does not include or rely on any of the user mod routines,
so it's probably not necessary to rebuild it like with the other parts. That exploration
is for another day, however.
2014-10-02 17:54:52 +10:00
Luke Ceddia 801ae6ae60 Added a _KEYCLEAR [buffer&] command to clear any characters in input buffers.
Without a parameter, it clears all buffers. A numeric parameter will
clear only a specific buffer: 1 = INKEY$ buffer (and other traditional
QB input commands), 2 = _KEYHIT buffer, 3 = INP(&H60) buffer. The last
one is not actually cleared, but we pretend we've read all the data from
it.

To ensure no stray characters, use this command immediately before the
code you wish to sanitise. You never know when the user might bang on
the keyboard, and this also helps to avoid stray key release values
persisting in the _KEYHIT buffer.
2014-09-27 03:12:54 +10:00
SMcNeill 6e01fc8dce Altered string compare routines (<,<=,>,>=) so they don't give false results with CHR$(0).
Added new _STRCMP and _STRICMP commands for quick string comparisons.
Cleaned up QB64 to finish removing the QUI (quick user insert) code and folders.
Altered UCASE and LCASE routines to be faster in some situations for us.
2014-09-22 08:19:03 -04:00