<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mike/sst/src, branch v0.8-BETA</title>
<subtitle>Source Speedrun Tools: practice tools and handy features for Source Engine games</subtitle>
<id>https://git.woz.blue/mike/sst/atom?h=v0.8-BETA</id>
<link rel='self' href='https://git.woz.blue/mike/sst/atom?h=v0.8-BETA'/>
<link rel='alternate' type='text/html' href='https://git.woz.blue/mike/sst/'/>
<updated>2024-08-26T20:41:24+00:00</updated>
<entry>
<title>Add the one update note to release again, already</title>
<updated>2024-08-26T20:41:24+00:00</updated>
<author>
<name>Michael Smith</name>
<email>mikesmiffy128@gmail.com</email>
</author>
<published>2024-08-26T20:41:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.woz.blue/mike/sst/commit/?id=add54d0e2b68e88f3f0b705cbf274b2d4426125b'/>
<id>urn:sha1:add54d0e2b68e88f3f0b705cbf274b2d4426125b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix broken mkentprops code generation</title>
<updated>2024-08-26T20:21:33+00:00</updated>
<author>
<name>Michael Smith</name>
<email>mikesmiffy128@gmail.com</email>
</author>
<published>2024-08-26T20:21:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.woz.blue/mike/sst/commit/?id=b60b92ec6d6fd3117bee3acd06877ea435367d3a'/>
<id>urn:sha1:b60b92ec6d6fd3117bee3acd06877ea435367d3a</id>
<content type='text'>
I screwed things up even more than I thought!
</content>
</entry>
<entry>
<title>Bump version to 0.8 for next release</title>
<updated>2024-08-26T13:15:11+00:00</updated>
<author>
<name>Michael Smith</name>
<email>mikesmiffy128@gmail.com</email>
</author>
<published>2024-08-26T13:15:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.woz.blue/mike/sst/commit/?id=a35365c3e8e291aa870d580cd64e8de807319c3e'/>
<id>urn:sha1:a35365c3e8e291aa870d580cd64e8de807319c3e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add update notes and bump zip version for release</title>
<updated>2024-08-26T00:52:43+00:00</updated>
<author>
<name>Michael Smith</name>
<email>mikesmiffy128@gmail.com</email>
</author>
<published>2024-08-26T00:52:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.woz.blue/mike/sst/commit/?id=33582641a9c01a6a3d62ae232f96c74299182885'/>
<id>urn:sha1:33582641a9c01a6a3d62ae232f96c74299182885</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add a quick hack fix for Portal 4104 demo playback</title>
<updated>2024-08-23T19:57:56+00:00</updated>
<author>
<name>Michael Smith</name>
<email>mikesmiffy128@gmail.com</email>
</author>
<published>2024-08-22T00:09:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.woz.blue/mike/sst/commit/?id=0ad204f21940745c35a665e3f367b9331322c3f4'/>
<id>urn:sha1:0ad204f21940745c35a665e3f367b9331322c3f4</id>
<content type='text'>
Thanks Evan Lin for doing the hard RE work to figure out the necessary
patch - I just reimplemented that here in about the dumbest way
possible.
</content>
</entry>
<entry>
<title>Rewrite the gamedata and entprops systems entirely</title>
<updated>2024-08-23T19:40:01+00:00</updated>
<author>
<name>Michael Smith</name>
<email>mikesmiffy128@gmail.com</email>
</author>
<published>2024-08-21T23:02:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.woz.blue/mike/sst/commit/?id=cf0354eb8e043fcd9c6c17756701972f948a16f1'/>
<id>urn:sha1:cf0354eb8e043fcd9c6c17756701972f948a16f1</id>
<content type='text'>
This removes the horrible janky old KeyValues parser and replaces it
with a couple of trivial ad-hoc text parsers. In doing so, make the
format of the actual gamedata files more human-friendly too.

We also gain support for nested SendTables in mkentprops, which are
required to get at various things like player velocity. And, the actual
string matching is made more efficient (or, at least, more scalable) by
way of a cool radix tree thing which generates a bunch of switch cases
on distinct characters.
</content>
</entry>
<entry>
<title>Fix an old and stupid woopsy in hud.h</title>
<updated>2024-08-23T19:37:37+00:00</updated>
<author>
<name>Michael Smith</name>
<email>mikesmiffy128@gmail.com</email>
</author>
<published>2024-08-04T16:56:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.woz.blue/mike/sst/commit/?id=78323e416f79ef9c26bbd742082627bc45e116c1'/>
<id>urn:sha1:78323e416f79ef9c26bbd742082627bc45e116c1</id>
<content type='text'>
This wasn't woz's fault - I did some wrangling of his code and
introduced this woopsy without noticing.

Thanks to aciidz also, for pointing it out recently.

Not touching the copyright years because it's such a stupidly trivial
thing - I can't really claim to have done anything substantial here.
</content>
</entry>
<entry>
<title>Revise syntax macros and add a ton of branch hints</title>
<updated>2024-08-23T19:37:37+00:00</updated>
<author>
<name>Michael Smith</name>
<email>mikesmiffy128@gmail.com</email>
</author>
<published>2024-08-03T22:40:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.woz.blue/mike/sst/commit/?id=83da606072ce272eb053d4e1497d77e647cfecae'/>
<id>urn:sha1:83da606072ce272eb053d4e1497d77e647cfecae</id>
<content type='text'>
My new programming style is branch hints. All non-confusing branches
must be hinted when I can be bothered. It's faster, sometimes, maybe.

Also, start trying to use more signed sizes in at least some of the
places where it makes sense. Unsigned sizes are surprisingly
error-prone!
</content>
</entry>
<entry>
<title>Rework OS abstractions</title>
<updated>2024-08-21T23:01:06+00:00</updated>
<author>
<name>Michael Smith</name>
<email>mikesmiffy128@gmail.com</email>
</author>
<published>2024-08-03T15:11:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.woz.blue/mike/sst/commit/?id=44902cb49cd51e2bb2f1cef05cb3c0e799b83434'/>
<id>urn:sha1:44902cb49cd51e2bb2f1cef05cb3c0e799b83434</id>
<content type='text'>
- As much as possible avoid dragging system headers into translation
  units. This should avoid namespace pollution and, hopefully, speed up
  builds a little bit.

- Avoid leaning on the UCRT so much on Windows - prefer native win32
  calls and native file handles except where doing so is inconvenient
  (in particular, for stat(), which we might try and replace later).

- Also, switch from SystemFunction036 to ProcessPrng on Windows. This
  requires us to generate a stub for bcryptprimitives.dll because
  Microsoft haven't bothered to provide a link library, but the function
  is better-documented and seems to be a more direct under-the-hood call
  as well. Apparently it's what's used by the major web browsers these
  days, which seems like a good indication it's stable and trusted.

- Lastly, remove a bunch of functions and macros and stuff that weren't
  actually being used. It seems good to try and keep the scope of
  OS-dependent stuff relatively contained and only add to it when
  actually required.
</content>
</entry>
<entry>
<title>Bump the version to 0.7, ahead of next release</title>
<updated>2024-08-05T20:03:27+00:00</updated>
<author>
<name>Michael Smith</name>
<email>mikesmiffy128@gmail.com</email>
</author>
<published>2024-08-05T20:00:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.woz.blue/mike/sst/commit/?id=01ec55edd9f767bebb1222c88f0e53e9cf8b2d59'/>
<id>urn:sha1:01ec55edd9f767bebb1222c88f0e53e9cf8b2d59</id>
<content type='text'>
</content>
</entry>
</feed>
