Releases: Molorius/ulp-forth
Releases · Molorius/ulp-forth
v0.0.4
Changelog
- 3bb16e1 Add .( FILL words.
- 35078d5 Add M+ and SPACES words.
- 6382afe Add ROLL 2ROT words.
- 27bd22c Add VALUE 2VALUE TO FIND words.
- 478b8e7 Fix MOVE when the addresses overlap.
- 2ff953e Remember repl lines between errors. Properly close files.
- 919cd35 Split test suite up by word set.
- b3ae1e8 Start work on >NUMBER definition.
- 2a3ac75 Update readme formatting.
Released by GoReleaser.
v0.0.3
Changelog
- 22513c2 Add >BODY CHAR CREATE DOES> and tests.
- 0eb5da9 Add cli command to flash the test application.
- 6ec4040 Allocate new data space every time CREATE is called.
- af17f95 Change internal uses of STRING" to C"
- f8d2c2d Extend S" C" and ." so they can be interpreted.
- c2e6e9a Fix VM.INIT in subroutine threaded builds.
- cfdba80 Include license document.
- 0eefc73 Throw error when a word for cross compile doesn't have assembly.
Released by GoReleaser.
v0.0.2
v0.0.1
Changelog
- 4d51bad Add ." and TYPE. Fix test suite, make errors easier to debug.
- 39f8e3a Add /MOD word.
- dc824fe Add 2/
- 4ca3292 Add :NONAME and a few tests.
- a0c5621 Add ?DO.
- de5d043 Add AND OR * XOR ABS. Optimize CONSTANT.
- 44dcd3f Add BASE and more tests from the suite.
- 0a518d7 Add BEGIN AGAIN UNTIL. Properly wait for esp functions.
- dcf7e34 Add C@ C! CHAR+ ALIGNED COUNT S"
- ab8182b Add CASE OF ENDOF ENDCASE.
- b2574c9 Add CHARS. Change builtin assembly offsets to named addresses.
- 62ccefe Add D+ with test.
- 9c75fbb Add D-.
- 7a5b86f Add DEFER DEFER@ and DEFER!.
- 9500085 Add DEPTH.
- 390e3e8 Add DO LOOP +LOOP.
- d83fd72 Add DOCOL for later optimizations.
- a518586 Add DU< DU> D00= D>S 2@ 2!.
- 8d1ef2d Add GPIO input, pullups, and pulldowns with an example.
- e446692 Add J UNLOOP LEAVE.
- 1cd9ec3 Add PICK.
- fb86126 Add R> and >R.
- 5127a1a Add README to the examples.
- b051207 Add STATE and IS.
- 831c337 Add TUCK \ tests.
- 3751abd Add U. word.
- 6bb1eae Add U>D and explicilty print the number base in word .S
- 8d7e213 Add WAKE and HALT with examples.
- 4e6c1ec Add WHILE REPEAT
- dbf184c Add WORD and counted strings.
- a7928fb Add [CHAR].
- 89190e5 Add [COMPILE].
- 45c6007 Add a badge to the readme showing the test status.
- f32b212 Add a few core words that can run on ulp.
- 711ecd9 Add a few words related to compilation. Untested.
- d92d802 Add a few words, many test cases, and the remaining test case placeholders.
- bc9516b Add a release workflow.
- d4c64da Add a workflow to run unit tests.
- 176a5b8 Add an app to run the examples.
- 38e16fd Add comments.
- 87ead23 Add comparison words.
- 2af9bbf Add compilation words such as : ; and POSTPONE.
- 73b221d Add copyright notice.
- d5496a5 Add cross compiling.
- e1fe020 Add documentation.
- 4db1d29 Add double comparison words. Move hardware files to separate directory to speed up tests.
- d5baff2 Add flag to primitives that are pure and primitives that use the return stack.
- 494247b Add functions to attempt compiling subroutine threaded.
- bfec5ff Add primitives for a subroutine threaded forth.
- 4f4f9e4 Add serial output and a "hello world" example.
- 041c249 Add several double words. Add a clock delay.
- 150b4ba Add unit tests for ulp primitives.
- 8ae59fd Add unit tests.
- 9d92672 Add word ACTION-OF.
- d3fc4b8 Add word EXECUTE.
- 4eeb809 Add words IF ELSE THEN.
- d1b73c7 Add words to create assembly. Create GPIO output words. Include a minimal esp32 app.
- 15e75e9 Also run unit tests on host.
- 362fc31 Always run subroutine tests. Get the blink example working.
- 537598d Begin restructure of cross compile process.
- e0af85a Build assembly the same way for both token threaded and subroutine threaded.
- 9a3438d Calibrate the millisecond delay.
- 4583176 Change CellString uses to CellAddress.
- 7f1bfd9 Change parsing to accept a delimiter.
- f3affca Change parsing to prepare for compiling later.
- b296b46 Change token threaded assembly to allow for options. Fix compiling nonstandard token threaded assembly.
- 2fe3e3d Change token threaded primitive NEXT values to flags.
- 3060c99 Change uses of DEFER! to IS.
- dc1a2b9 Compile assembly words for subroutine threaded.
- c09fbea Create blink example and a busy delay.
- acc5dee Create build and run commands.
- f805ee8 Create data words ALLOCATE @ and !
- 3661f33 Create global memory which can be shared with the esp32.
- 6d3615d Create i2c library with an example.
- def85f6 Create map of literals for cross compile.
- 79ec40c Don't compile subroutine threaded docol if the word is never called.
- 40015f6 Don't print extra newlines.
- 3232a46 Finish compilation of subroutine threading. Tests broken.
- 178ef7d Fix C! and RPICK for subroutine threaded. All tests pass.
- 21e7a35 Fix DEFER for subroutine threading.
- 79483d8 Fix numbers usage and literals compilation.
- f87590d Fix skipped error messages. Print redefine statement.
- a207d39 Fix so allocated memory does not appear twice in out.
- d30134d Fix stack cleanup on DELAY_MS.
- 98c0544 Force EXIT to not be optimized.
- 02ad69a Further optimized /MOD.
- 50e31f2 Get the hello_world and i2c can example working under subroutine threading.
- 092c7c1 Implement basic compiling. Add builtin forth files.
- c606db7 Implement printing using EMIT. Add a few assorted words.
- c8a83e7 Implement signed division.
- fa13648 Implement tail calls.
- 75684bc Initial. The basic interpreter works, data structures are set up.
- 561982e Inline deferred words that cannot be altered in cross compiled output.
- 4518872 Make HALT begin at the next instruction for subroutine
- 503c0b3 Mild U/MOD optimization.
- 5fc4095 Mild U< optimization.
- c35e261 Move optimizations to a new file.
- d2e9426 Move primitive logic together.
- e8c260e Move test setup code to inside individual tests.
- e80f689 Optimize accessing the instruction pointer.
- 7300c5e Optimize division routine.
- e7badde Optimize jumps to vm entry.
- b126141 Precompute the lower case of words. Speeds up tests significantly.
- c95254a Put token threaded forth words in the .data section.
- 1290e69 Remove CellEntry type.
- e2346ef Remove DOCOL word as it is only part of subroutine threaded.
- 764a81f Remove STATE word for now.
- 0789370 Remove experimental warning for subroutine threaded. Update dependencies.
- f7d6efe Remove unused/unhelpful rtc_reg words.
- 8fbc5c5 Rename examples from *.forth to *.f.
- aa483f2 Run tests in parallel for a mild speedup.
- ee607c9 Set compile flags with existing hardware access assembly.
- 7ffecf6 Start adding double words.
- 952c042 Start writing the test suite.
- 22fafce Tag recursive words for optimizations.
- a00f0a6 Update copyright notices to 2025.
- 0061c81 Update readme with threading models and optimizations.
- d26bd36 Update to latest ulp-c.
- a1a9ad3 Update ulp-c dependency.
- a9e6152 Update ulp-c for better emulation errors.
- 876c217 Use CellAddress instead of CellMemory, remove CellMemory.
- 339a423 Use the word body ...