Releases: thecybermind/qvmops
Releases · thecybermind/qvmops
v2.1.0
- Can now load "version 2" QVM files from ioQuake3 + ioRTCW projects. Currently does not load or output any of the new JTRG segment.
Commits
- 3c2eb53: add link to stvoy_qagame.qvm.txt to readme (Kevin Masterson)
- b87da8d: include string.h for linux warning (Kevin Masterson)
- 10c289f: change include guards to remove __ (Kevin Masterson)
- 4c0ffa0: disable strncpy warning (Kevin Masterson)
- dbec9b6: update qvmops to handle qvm "version 2" header from ioquake3+iortcw. currently doesn't output or deal with the jrtg segment but can read it. some parsing code for it locked behind QVMOPS_VER2 define (Kevin Masterson)
- 60d7a1c: version bump to 2.1.0 (Kevin Masterson)
v2.0.0
Overhaul in how qvmops functions. It can read .map files (also created by q3asm) and provide symbol information while disassembling the .qvm file. It stores instructions as a sequential list of discrete objects, so that they can reference nearby instructions to output symbols/comments/etc.
Commits
- 2eedbb6: add example output (Kevin Masterson)
- bcdd1d9: add qagame.qvm.txt to package (Kevin Masterson)
- 6e1a937: add qvm/map (Kevin Masterson)
- 0254b77: updating to include symbol data from .map. splitting out instructions and symbols into separate storage arrays to make referencing nearby instructions easier. output symbol info for enter, leave, call, jump, load, etc (Kevin Masterson)
- 9c53daf: . (Kevin Masterson)
- 88df7e5: add data segment back to output file. current output is original qvmops plus the additional comments from symbol map file (Kevin Masterson)
- e2a1fc7: leave basic comments on most function/jump instructions if no symbols are present (Kevin Masterson)
- 371cf58: readme (Kevin Masterson)
- 938a3a2: readme (Kevin Masterson)
- c737d2f: add link to qagame.qvm.txt (Kevin Masterson)
- 1e717db: use raw github link for qagame.qvm.txt (Kevin Masterson)
- 5f76b76: remove LINE comments from symbol table for now. maybe store them in a separate line database that can't be looked up? (Kevin Masterson)
- bf71fd4: added > in front of target of conditional branch instructions. changed minimum param threshold for lone OP_CONST comment from 100 to 1024 (Kevin Masterson)
- b3cd9eb: line symbols are stored in a separate list and added to the end of any existing comment (Kevin Masterson)
- dd871f4: add hex index as well, add stvoy disassembly file to show LINE comments (Kevin Masterson)
- 9e746c2: remove readme.txt (Kevin Masterson)
- e1901f3: update readme (Kevin Masterson)
- 189db90: move version define into qvmops.h (Kevin Masterson)
- ed598a4: bump to v2.0.0 (Kevin Masterson) #2
- 2f21223: fix linux error (Kevin Masterson) #2
- 26102a3: add readme, remove output files from package (Kevin Masterson) #2
v1.1.2
- Each instruction is now labeled with instruction index AND instruction offset
- Add more header checks during file loading
- If a jump OP has a param that is an invalid instruction index, it will show "!" after
- A "|" character will appear between hex values at the split between the data and lit segments
qvmops.exe - windows
qvmops - linux
qagame.qvm.txt - example output from default Quake 3 baseq3 mod
Commits
- 66a7e6e: add some comments, and output a "|" in between bytes of the hex-editor view where the split between data segment and lit segment is (Kevin Masterson)
- 0158320: add output header and version (Kevin Masterson)
- 8d4e246: updated comments (Kevin Masterson)
- 6a927e4: added some more checks and output to disasm. added github actions (Kevin Masterson)
- 6ddf511: bump version (Kevin Masterson) #1
- e9bb32a: fix (Kevin Masterson) #1
- d9e8e66: fix (Kevin Masterson) #1
v1.1.0
Code segment is now labeled with instruction index rather than instruction offset. Since OP_CALL, OP_JUMP, and branching ops use indexes (generally loaded by OP_CONST if not a function pointer), it can be easier to trace branching and call flow.
- qvmops.exe - windows
- qvmops - linux
- qagame.qvm.txt - example output from default Quake 3 baseq3 mod
windows:
> qvmops.exe qagame.qvm
qagame.qvm.txt written
linux:
> ./qvmops qagame.qvm
qagame.qvm.txt written
v1.0.0
Initial GitHub release
- qvmops.exe - windows
- qvmops - linux
windows:
> qvmops.exe qagame.qvm
qagame.qvm.txt written
linux:
> ./qvmops qagame.qvm
qagame.qvm.txt written