1
1
Fork 0
mirror of https://github.com/QB64-Phoenix-Edition/QB64pe.git synced 2024-07-03 18:11:20 +00:00
Commit graph

1403 commits

Author SHA1 Message Date
Roland Heyder 6b3842673f Fix return types and results
- return type is uint32_t in C/C++ and ULONGTYPE in QB64
- adler32 must return one (1) on an empty input
2024-02-03 11:25:48 +01:00
Roland Heyder a84e174b63 Add new _MD5$ fucntion
- exposing the implementations in freetype for public use
2024-02-02 10:37:32 +01:00
Roland Heyder 131009006e Add new _ADLER32 and _CRC32 function
- exposing the implementations in miniz for public use
2024-02-02 10:32:16 +01:00
Roland Heyder 0ce5a8e56e Refactor GetCRC32 function 2024-01-30 21:15:09 +01:00
Roland Heyder ba90208c27 Add external dependencies checks
- tracks required external files for changes and triggers a rebuild if needed
- $EXEICON file
- $MIDISOUNDFONT (incl. the DEFAULT one)
- $INCLUDE (incl. nested ones)
- $EMBED files
- internal includes as forced by $COLOR or $DEBUG
2024-01-30 13:04:03 +01:00
RainRat f65a74c22a fix typos 2024-01-28 10:37:47 -08:00
Roland Heyder 13b5d5672b Removed a unused variable
- this popped up as warning during my tests, it comes from @mkilgore its latest CONST changes
2024-01-26 00:56:44 +01:00
Roland Heyder d83b6d9557 Rename internal $CHECKING flag
- this completes the previous commit, but as it also swapped the true/false logic, it was made as extra commit
2024-01-26 00:51:29 +01:00
Roland Heyder f24cabd9ad Rename internal meta flags
- mainly done to avoid faulty highlighting, but also makes more sense IMO
2024-01-26 00:43:38 +01:00
Roland Heyder b8424f1336 Refactoring $ASSERTS:CONSOLE highlighting
- according to other multipart meta-commands, make the CONSOLE part a regular keyword
- grouping meta handling blocks (removed some blank lines)
2024-01-26 00:32:11 +01:00
Roland Heyder 9bbd125e45 Refactoring ExportAs function
- reduce memory impact
- fix $NOPREFIX issue
- improved checks to avoid faulty highligting of unquoted text in DATA lines and meta lines such as $VERSIONINFO or $ERROR
- fixed a wrong Wiki link (SHELL fucntion)
2024-01-26 00:15:41 +01:00
Matthew Kilgore 1a087609bf Add support for ASC() and CHR$() 2024-01-18 13:00:13 -05:00
Matthew Kilgore 90941fffa7 Replace CONSTs while we have the individual elements
This moves the CONST replacement up before we turn the elements into a
single string. The advantage is that we don't have to worry about
splitting the string properly to find the CONST names as the elements
are already split for us.t
2024-01-18 13:00:13 -05:00
Samuel Gomes 360a317481 Version 3.11.0 2024-01-03 16:18:06 +05:30
Samuel Gomes b32dedf3f0 Change _FQN$ to _FULLPATH$ 2023-12-30 23:35:06 +05:30
Samuel Gomes d518c9df02
Merge branch 'QB64-Phoenix-Edition:main' into filesystem-refactor-and-update 2023-12-30 22:49:37 +05:30
SteveMcNeill ef19a046be fix for CONST issues
Yet again, here's another patch to the patch which patches a patch....  /sigh
2023-12-29 01:12:01 -05:00
Samuel Gomes fa395b7c58 Implement func__FQN() 2023-12-29 02:09:02 +05:30
Samuel Gomes 28c9964d09 Add _FILES$ to syntax_highlighter_list.bas 2023-12-28 00:11:51 +05:30
Samuel Gomes 8c61cac457 Merge branch 'filesystem-refactor-and-update' of https://github.com/a740g/QB64pe into filesystem-refactor-and-update 2023-12-28 00:10:52 +05:30
Roland Heyder c3d12c7d22 Bump Version
- added embed info to docs
- finalizing the new release
2023-12-18 15:25:55 +01:00
Roland Heyder cf378672e0 Moved handle checks
into FUNCTION evaluatefunc, where we have access to tokenized arguments, which makes checking a lot easier
2023-12-17 10:17:31 +01:00
Roland Heyder b10a055d28 Finetuned handle checks
- better check if _EMBEDDED$ appears inside a string or after a REM or apostrophe
- make sure REM is a valid command and not just part of a variable name
- better enforcement for 'handle' being a single literal string, i.e. not allowing stuff before or after
2023-12-16 16:38:09 +01:00
Roland Heyder 84c9761d51 Fixed include path separators 2023-12-15 19:01:40 +01:00
Samuel Gomes 5d037775af Add support for _FILES$() 2023-12-15 20:54:11 +05:30
Roland Heyder 45ffc8c9e6 Minor flow changes
- As suggested by @mkilgore , moved the embed list array reset out of the $EMBED block
- Imposed a 20% least ratio for compression
- Moved the handle comparison into `func__embedded()` to avoid some unnecessary function calls
2023-12-15 00:22:28 +01:00
Roland Heyder 1358716115 Fixing tests
forget AddQuotes$(), rather make file.bas self-contained using CHR$(34)
2023-12-13 22:11:14 +01:00
Roland Heyder 38eed18fc4 Implement file embedding
$EMBED:'filename','handle' and _EMBEDDED$("handle")
2023-12-13 20:49:53 +01:00
SteveMcNeill 79d48113f2 IDE Module Error Fix
When loading a font, and that  font wasn't found, we were tossing an IDE Module Error at the users.  This corrects that glitch and even pops up a notification letting them know that the font wasn't found, before reverting back to the old font handle.
2023-12-08 12:48:47 -05:00
SteveMcNeill 442f620dbe Chance IDE save method as discussed on Discord
String manipulation has too much overhead for larger files to write all at once.   The best write speeds, from multiple testing experiments in various conditions, come from simply using PUT to place the data line by line to the drive.

This change reflects that method of file saving.
2023-11-28 16:04:05 -05:00
SteveMcNeill f5800fe9a7 Move IF outside of loop for efficiency 2023-11-07 16:32:02 -05:00
SteveMcNeill 0ec0dd62f3 Update QB64PE for faster file saving
As per the discussion here: https://qb64phoenix.com/forum/showthread.php?tid=2144
2023-11-07 14:36:34 -05:00
SteveMcNeill 1be3e366ac Final fixes to math stuff (I hope)
Fix to CONST with the math evaluator to toss a message and error with values out of acceptable range for ARCSEC and ARCCSC.

Tweak to _PI to add constexpr for speedier execution.

Fix to the math tests for the new (and unbuggy) values for ARCSEC and ARCCSC.
2023-10-31 11:32:22 -04:00
SteveMcNeill 45bf68fad4 Error Report before REDIM, not after 2023-10-30 10:51:14 -04:00
SteveMcNeill d7498d173c Increase Sub/Function Id Limit
As per #362, this raises the limit in increments from 1,000 to a maximum of 25,000 subs and functions for a single QB64PE program.  If that number is exceeded, the IDE will give an error message. reporting the issue for the user.
2023-10-30 00:43:20 -04:00
SteveMcNeill 61e0ef72ee swap types to proper order 2023-10-18 19:18:31 -04:00
SteveMcNeill 2a6cc27ee1 rework CLS specialformat so 2nd comma is required if using the 3rd param. 2023-10-18 09:19:54 -04:00
SteveMcNeill 9854955d99 Add Support for optional paramter for an image handle to CLS 2023-10-18 08:01:12 -04:00
Steve McNeill 4138f0a09c
Merge branch 'main' into main 2023-10-15 10:54:10 -04:00
Samuel Gomes 5efe08153f
Merge branch 'main' into versioninfo-enhancement 2023-10-15 19:03:30 +05:30
SteveMcNeill f27a9129d0 Wait for key release before running
Issue #290
2023-10-15 08:26:16 -04:00
SteveMcNeill 669e20fdea Fix to IDE blowing up from last fix 2023-10-15 02:43:44 -04:00
Samuel Gomes f03efa2468
Merge branch 'main' into versioninfo-enhancement 2023-10-15 11:39:02 +05:30
SteveMcNeill 1a7e9dd959 Fix to Mod and \ in CONST
As per the sample code below:

Const a = 5 Mod 2.8
Const b = 5 \ 2.8
Print a; "="; 5 Mod 2.8
Print b; "="; 5 \ 2.8

Old output was wrong.  Patch should make the CONST values the same as what QB64 normally generates for us.
2023-10-15 01:24:34 -04:00
SteveMcNeill ca38a08ce7 Clean up previous patch 2023-10-15 00:04:32 -04:00
SteveMcNeill 3670825280 Patch to CONST
Should fix both of these issues:
https://github.com/QB64-Phoenix-Edition/QB64pe/issues/193
https://github.com/QB64-Phoenix-Edition/QB64pe/issues/224
2023-10-14 23:00:53 -04:00
Samuel Gomes 5db34487c9 Implement #20 with suggestions from #392 2023-10-14 07:07:11 +05:30
Samuel Gomes db0a96bd6b Prefix remaining math functions to use std:: 2023-10-08 09:05:26 +05:30
Samuel Gomes 087f02bb73 Version 3.9.1 2023-10-08 06:12:30 +05:30
Samuel Gomes bc8047563e Fix MENU ITEM [Run #Only (No EXE) NOT IMPLEMENTED! 2023-10-05 22:20:38 +05:30