Bill Currie
aac8185e4e
Print some addresses in hex.
2011-01-10 12:25:31 +09:00
Bill Currie
6ebee4ad0e
Get the type of Method right.
...
It's a direct structure rather than a pointer.
2011-01-10 12:25:31 +09:00
Bill Currie
ba27db6b93
Use some math identities to eliminate operations on non-constants.
2011-01-10 12:25:31 +09:00
Bill Currie
75ec6bf244
Clean out some unnecessary types from the progs engine and clean up the mess.
...
This is a nasty commit, sorry, but 99% of the commit is interdependent.
2011-01-10 12:25:31 +09:00
Bill Currie
c69ac1f56f
Don't segfault when build_builtin_function detects an error.
2011-01-10 12:25:31 +09:00
Bill Currie
806d9110a2
Support both (* *) and // style comments.
2011-01-10 12:25:31 +09:00
Bill Currie
a17e73c863
Generate code.
...
It's now time to work on the revamp of the symbols, trees, etc.
2011-01-10 12:25:31 +09:00
Bill Currie
e34f7caeb0
Use op instead of integer_val for ADDOP etc.
2011-01-10 12:25:31 +09:00
Bill Currie
edaa6235e7
Get functions/procedures emitted.
...
No actual code is emitted, though.
2011-01-10 12:25:31 +09:00
Bill Currie
74016573b4
Need frame grabbing after all.
2011-01-10 12:25:31 +09:00
Bill Currie
129a36064f
Fix a typo that broke procedure declarations.
2011-01-10 12:25:31 +09:00
Bill Currie
7971b0868e
Break out the begin_function code into its own function.
2011-01-10 12:25:31 +09:00
Bill Currie
c5d0acf0fa
Allow arrays to have ranges (not fully implmented)
2011-01-10 12:25:31 +09:00
Bill Currie
25c36a51a8
-f and -F were reversed in the usage.
2011-01-10 12:25:31 +09:00
Bill Currie
fed82466cc
The first stages of Quake-Pascal.
...
At present, this parses a subset of the pascal language with a few type
extensions. There is already work on the type system.
2011-01-10 12:25:31 +09:00
Bill Currie
ae4ca52661
Make function.h more independent.
2011-01-10 12:25:31 +09:00
Bill Currie
66ac56063f
Break out the frame macro code from qc-lex.l
2011-01-10 12:25:31 +09:00
Bill Currie
a09f02db1a
Break out the debug and string functions from qc-lex.l.
2011-01-10 12:25:30 +09:00
Bill Currie
695f71eeb6
Get clost to the look I wanted for symtab_flat_copy's graph.
2011-01-10 12:25:30 +09:00
Bill Currie
782a4c9a8d
New symbol table code.
2011-01-10 12:25:30 +09:00
Jeff Teunissen
dfbbda37af
New tool: qflmp
...
Stupid little lump tool, converts from lmp to pcx and back.
qflmp -h for help.
2011-01-09 04:33:51 -05:00
Bill Currie
fbdbcfada4
Remove deprecated @argc and @argv
2011-01-05 13:10:57 +09:00
Bill Currie
a27ea057c4
Add a test for calling class methods.
2011-01-03 18:11:46 +09:00
Bill Currie
02f78e46f8
More expression docs.
2011-01-03 16:25:59 +09:00
Bill Currie
5627e43465
Use the method's selector rather than its def name in error messages.
2011-01-03 16:25:29 +09:00
Bill Currie
a1f36a9944
Make new_function take a def rather than a name.
...
Moves into new_function some code that should have been there in the first
place.
2011-01-03 16:25:29 +09:00
Bill Currie
4c69a97ac7
Allow normal declarations within a class implementation.
...
I had always been under the assumption that such was illegal in
Objective-C, but after working on Forge, I now know otherwise.
2011-01-03 16:25:29 +09:00
Bill Currie
dc5bafb8fb
Minimal error recovery.
...
No more bailing on the first syntax error. While the recovery is not
perfect (things can get right twisted), qfcc will now continue parsing
after a syntax error.
2011-01-03 16:25:29 +09:00
Bill Currie
a4635d79e8
Slightly more informative error locations.
...
Inside a class or protocol definition is not "at top level" ;)
2011-01-03 16:25:29 +09:00
Bill Currie
530e8fae34
Rework class_type_t to be more useful.
...
This allows current_class to refer to procols as well (for error
reporting).
2011-01-03 16:25:29 +09:00
Bill Currie
f738ef5dba
Remove redundant RETURN statement rule.
...
The same effect can be achieved with one rule using opt_expr.
2011-01-03 16:19:28 +09:00
Bill Currie
58042719e5
A little more documentation for expressions.
2011-01-03 16:19:28 +09:00
Bill Currie
7946fec523
More cString cleanups.
...
I don't know that fileSystemRepresentation is any better than cString for
general usage (due to wchar on windows).
2010-12-28 07:42:08 +09:00
Bill Currie
d29e8deb0a
Use Qprintf for writing maps, and fileSystemRepresentation to get the path.
2010-12-27 23:18:43 +09:00
Bill Currie
97e8ab7f3a
A bunch more NSString and NSFileManager usage.
...
It does make for cleaner could, though it would have been nice if NSData
was null terminated :P
2010-12-26 22:33:04 +09:00
Bill Currie
8e13a8327d
Use NSFileManager methods instead of access().
...
This even fixes a bug where an inaccessible bspSound was being opened.
2010-12-26 21:07:55 +09:00
Bill Currie
f105fbd6a0
Use NS* classes for QUAKED directory scanning.
...
The scanning of actual files is still done using normal C strings, but now
everything up to (but not including) opening the file is handled by *step.
2010-12-26 20:45:01 +09:00
Bill Currie
232c67640c
Get the QUAKED text for nullclass right.
...
? is not a character that's lexed out by the script class.
This fixes the segfault when loading a map when no entities are defined
(ie, the mod's source code could not be found for QUAKED).
2010-12-26 19:06:39 +09:00
Jeff Teunissen
8653f9d9a7
Add a man page for zpak
...
It's lame, but so is zpak :)
2010-12-24 16:23:52 -05:00
Bill Currie
526f132517
Minor tweaks.
2010-12-24 20:08:24 +09:00
Bill Currie
22072ee606
Update for the new qfcc headers/libs location.
2010-12-24 20:07:40 +09:00
Bill Currie
1a767849ab
Sort the options in the switch.
...
Should make finding them a little easier.
2010-12-24 17:35:33 +09:00
Bill Currie
d6b3d4891a
Finally, help output for qfprogs.
...
Nothing great, but better than nothing.
2010-12-24 17:33:57 +09:00
Bill Currie
f4d8b82115
Rearrange the options into alpha order.
2010-12-24 17:08:48 +09:00
Bill Currie
51b98ee758
Correct some errors.
2010-12-24 11:07:47 +09:00
Bill Currie
33e9fbba32
Win32 packaging improvements.
2010-12-24 10:41:09 +09:00
Bill Currie
a57717e2ab
Update my release script.
2010-12-24 09:51:07 +09:00
Bill Currie
28740bb57f
Add unsigned integer constant support.
2010-12-23 19:32:28 +09:00
Bill Currie
7934e29473
Fix up my big build script.
2010-12-23 16:51:02 +09:00
Bill Currie
32f7cd8b22
Get HTTP support (libcurl) working with mingw.
2010-12-23 13:18:43 +09:00