Skip to content

Comments

Refine tiny16se data forms and demo layout#4

Merged
rafael84 merged 1 commit intomainfrom
codex/simulate-rewrite-from-tiny16-asm-to-tiny16se
Jan 25, 2026
Merged

Refine tiny16se data forms and demo layout#4
rafael84 merged 1 commit intomainfrom
codex/simulate-rewrite-from-tiny16-asm-to-tiny16se

Conversation

@rafael84
Copy link
Owner

Motivation

  • Support richer and more ergonomic data emission in tiny16se by allowing named data regions, optional addresses (ORG), and multiple data blocks per program.
  • Clarify how strings and byte blobs are represented and how data labels can be referenced from code.
  • Make the demo source match the new data semantics and be easier to read and assemble.

Description

  • Bump language version to tiny16se v0.5 and add string as a token and atom variant in the lexical/syntax sections.
  • Introduce the top-level (data name [addr16] form...) form with semantics that emit a .data section, optional ORG, and an emitted label for name, plus add (db ...) and clarify that strings expand to bytes with no terminator and (repeat ...) support.
  • Document that data labels may be referenced from code and add compile-time helpers hi/lo and memory primitive notes to the spec.
  • Restructure examples/demo.se to use multiple labeled (data ...) blocks (initialized, last-frame, sprite-data, tile-smiley, oam-data, palette), replace bytes with db, use repeat for zeroed regions, and split the previous combined data region into separate named regions.

Testing

  • No automated tests were executed for these changes.

Codex Task

@rafael84 rafael84 merged commit 3c6c180 into main Jan 25, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant