
Security News
minimatch Patches 3 High-Severity ReDoS Vulnerabilities
minimatch patched three high-severity ReDoS vulnerabilities that can stall the Node.js event loop, and Socket has released free certified patches.
gbasm is a JavaScript based compiler for Gameboy z80 assembly code.
gbasm is mainly being developed for and tested with Tuff.
gbasm by running npm install -g gbasmUsage: gbasm [options] [sources]
--outfile, -o <s>: The name of the output rom file (default: game.gb)
--optimize, -O: Enable instruction optimizations
--mapfile, -m <s>: Generates a ASCII overview of the mapped ROM space
--symfile, -s <s>: Generates a symbol map compatible with debuggers
--jsonfile, -j <s>: Generates a JSON data dump of all sections with their data, labels, instructions etc.
--silent, -S: Surpresses all logging
--debug, -d: Enable support for custom "msg" debug opcodes',
--verbose, -v: Surpresses all logging
--version: Displays version information
--help: Displays this help text
__ --outfile / -o __
Specifies the filename of the generated ROM image.
__ --optimize / -O __
Turns on assembly optimizations which are automatically performed during linkage.
__ --mapfile / -m__
Generates a ASCII overview of the mapped ROM areas.
__ --symfile / -s __
Generates a symbol map file for use with Debuggers (e.g. bgb)
__ --debug / -d __
Enables support for custom msg opcodes for use with Debuggers (e.g. bgb)
; This will log "Debug Message" when run in the debugger
msg "Debug Message"
Note: The
msgopcode will be ignored when compiling without the flag.
__ --jsonfile / -j __
Generates a json file that contains the fully linked ROM data serialized into a detailed format useable for further, custom processing.
gbasm is mostly compatible with rgbds but there are some deviations and additions:
hli and hld as their second operand[ and ] in their syntaxMost of the pre-defined macros from rgbds are available (e.g. COS, STRLWR etc.)
User defined macros come in two flavors:
These macros contain only a single expression statement and can be used as values everywhere a built-in macro could be used:
MACRO add(@a, @b)
@a + @b
ENDMACRO
DB add(2, 5) ; essentially DB 7
Expression Macros can take Numbers and Strings as their arguments.
These are macros in the classical sense which just expand into additional assembler code:
MACRO header()
DB $11,$22,$33,$44,$55
DW $1234,$4567
ENDMACRO
header(); expands into the DB and DW diretives above
In addition to Strings and Numbers, expansion macros can also take Registers as their arguments.
MACRO ld16(@number, @a, @b)
ld @a,@number >> 8
ld @b,@number & $ff
ENDMACRO
ld16($1234, b, c); turns into ld b,$12 and ld c,$34
Licensed under MIT.
FAQs
A GameBoy Assembler.
The npm package gbasm receives a total of 3 weekly downloads. As such, gbasm popularity was classified as not popular.
We found that gbasm demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
minimatch patched three high-severity ReDoS vulnerabilities that can stall the Node.js event loop, and Socket has released free certified patches.

Research
/Security News
Socket uncovered 26 malicious npm packages tied to North Korea's Contagious Interview campaign, retrieving a live 9-module infostealer and RAT from the adversary's C2.

Research
An impersonated golang.org/x/crypto clone exfiltrates passwords, executes a remote shell stager, and delivers a Rekoobe backdoor on Linux.