-
Notifications
You must be signed in to change notification settings - Fork 86
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Fixes #35 by guarding SCENE from initial I script Added an initialization flag to the scene state to denote when a scene is first loading. SCENE operator aborts if the flag is present. * Fixes #63 by overhauling data entry in tracker Buffered input Clear-on-new-entry Apply-on-Enter Abort-on-navigation Incrementers wrap around 16-bit limits Number entry blocks if it would exceed limits * New Op: MSPB (milliseconds per beat) * Fixes #14 by allowing code commenting with alt-/ * New Op: LAST - delta between script run times Now tracking script number in the execution state and script last run times in the script state. One line tap tempo (hit F1 twice): 1: M LAST M: TR.P 1 * Fixes #38 by making AVG round UP AVG -32767 -32768 == -32767 AVG 32767 32766 == 32767 * Fixes #38 by making Q.AVG round UP * New Op: BREAK (alias BRK): Terminates a script * New Op: W (while loop) Maximum depth set by WHILE_DEPTH (default 10000) * Bugfix for W op: while counter for each exec_depth SCRIPT was breaking W. Now it doesn't. * Added documentation for W op * Added docs for BREAK op * Added docs for LAST op * Updated keystroke documentation * Updated keystroke documentation * Updated SCENE documentation to reflect I behaviour * Fixes #94 by tracking execution states by depth If conditions and for loop iterators do not transcend their execution depth. Live mode now behaves like this: > L 1 4: A I > A => 4 > I => 0 I is 0 because it exists in a different context than the first command. * Bugfix: fixes recursion crash As a result, the code is cleaner and easier to read. Short story: only SCRIPT should call es_push and es_pop * Formatting mistake * Renamed MSPB to BPM * Fixes #2 by correcting fencepost error in P.RM * Teletype 2.1 beta 1 build * Poor merging discipline problems fixed PEBCAK / ID 10 T error * Added built zip. * Fixes M in beta1 * Changed LAST, added THIS, fixed behaviour * Added beta2 build * Code cleanup, commenting * Half-fixes operator table in documentation * Beta2 tag in Makefile * Forced L to respect BREAK's authority * Fixes #93 by clearing TRs in tele_kill * Added turtle structures and function prototypes * Added turtle function bodies, updated prototypes. * Added Turtle operators to turtle.c * Finished up operators, needs testing. * Fixed WRAP and BUMP turtle behaviour and various other things that needed fixing. * Preparing for beta3 release * Released beta3 * A turtle that works and is partially tested Fixed WRAP behaviour Changed UP to N, etc. Added FX1, FY1, FX2, FY2 individual get/set for fence Added HX, HY for home get/set Added tests for fence and WRAP behaviour (more to come) * Test revealed bug with new operator * Fixed test framework and some bugs with turtle * Test naming fix * Fixed bugs with WRAP mode * Prevent a crash with bounds checking * Fixed confusion between Q15 and Q12 in sin call * Updated makefile for beta4 release * Added beta4 build * Added some tests, fixed others * Fixed divide by zero in Q.AVG * Modified operators to match approved set * Fixed a test * Added es_push() after es_init() * Cleaned up test file. * Implemented @script * Updated to approved syntax and began testing * Moved turtle stuff out of state.h/c into new files * Committed to sin() logic for all calculations * Added release files for beta5 * Fixed various turtle bugs * Added final beta5 build * Trigger Travis build * Added turtle object files * Ninja patch to beta5 CTRL-F numbers now enable disable scripts CTRL-F9 toggles the metro KILL updated * Adjusted travis build to detect test errors * Updated changelog * Updated broken tests to reflect bounce behaviour Also to test travis-ci * Fixed travis-test Makefile deps * Added a few tests and squashed the sin() bug Should really have tested it this way sooner. * Removed hex file from repo. * Beta 6 prep * Removed hex file. * Implemented @show @show 1 now produces an @ sign beside the current turtle cell in pattern (tracker) mode. * Temp script no longer accessible via [ and ] * Changed THIS -> SCRIPT getter Now instead of SCRIPT THIS for recursion, SCRIPT SCRIPT. Per @tehn. * Fixes fix of [ and ] accessing temp script. A shameful commit. * Changed Turtle @show symbol to < * Changed COMMAND_MAX_LENGTH to 16 * Changed STACK_OP_SIZE to 16 * Changed Q_LENGTH to 64 * Updated CHANGELOG * Fixed [ still showing temp script The second such shameful commit. * SCRIPT now returns 0 in live mode * Added more 2.1 documentation - Turtle operator - Minor other fixes * Changed @Bounce and @bump behaviour at fence @bump won't actually change behaviour, but its internal fraction will remain at a 0.5 offset. * Fixed @Bounce where x2 = x1 + 1 * Fixed test case * Added Shift-2 = Toggle @show in TRACKER Plus a little refactor of access to turtle.shown * Reverted to git dirty flag for release * Initial implementation of EVERY * Fixed simulator Makefile for EVERY * Added SKIP, OTHER, and SYNC * Changed OTHER to reflect any last EVERY or SKIP OTHER now makes sense at the top of the script. * Cleared the every_last flag on SYNC * Tracker entry mode changes Enter no longer moves down a cell Increment and decrement no longer exceed int16 limits * Unified in/decrement between edit and nav modes Now wraps around limits instead of bumping * Updated CHANGELOG for 2.1.0-rc1 * Removed references to @accel and @frict * Fixed formatting for 2.1 release * Included EVERY in changelog * Removed old, commented-out code. * Updated help mode for 2.1 * Fixed line overflow in @f doc line * Fixed formatting One more pass at make format * Changed sin() to _sin() to avoid warning Not like we were linking against libmath but GCC won't shut up. * Changed documentation header for Turtle removed word 'operator'. * Added some missing documentation @step, BRK were missing TR.P alias was broken * Fixed ss_clear_script() I must have been out of it when I wrote that code!
- Loading branch information
Showing
55 changed files
with
2,339 additions
and
198 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
## Turtle | ||
|
||
A 2-dimensional, movable index into the pattern values as displayed on the TRACKER screen. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,81 @@ | ||
["@"] | ||
prototype = "@" | ||
prototype_set = "@ x" | ||
short = "get or set the current pattern value under the turtle" | ||
|
||
["@X"] | ||
prototype = "@X" | ||
prototype_set = "@X x" | ||
short = "get the turtle X coordinate, or set it to x" | ||
|
||
["@Y"] | ||
prototype = "@Y" | ||
prototype_set = "@Y x" | ||
short = "get the turtle Y coordinate, or set it to x" | ||
|
||
["@MOVE"] | ||
prototype = "@MOVE x y" | ||
short = "move the turtle x cells in the X axis and y cells in the Y axis" | ||
|
||
["@F"] | ||
prototype = "@F x1 y1 x2 y2" | ||
short = "set the turtle's fence to corners x1,y1 and x2,y2" | ||
|
||
["@FX1"] | ||
prototype = "@FX1" | ||
prototype_set = "@FX1 x" | ||
short = "get the left fence line or set it to x" | ||
|
||
["@FX2"] | ||
prototype = "@FX2" | ||
prototype_set = "@FX2 x" | ||
short = "get the right fence line or set it to x" | ||
|
||
["@FY1"] | ||
prototype = "@FY1" | ||
prototype_set = "@FY1 x" | ||
short = "get the top fence line or set it to x" | ||
|
||
["@FY2"] | ||
prototype = "@FY2" | ||
prototype_set = "@FY2 x" | ||
short = "get the bottom fence line or set it to x" | ||
|
||
["@SPEED"] | ||
prototype = "@SPEED" | ||
prototype_set = "@SPEED x" | ||
short = "get the speed of the turtle's @STEP in cells per step or set it to x" | ||
|
||
["@DIR"] | ||
prototype = "@DIR" | ||
prototype_set = "@DIR x" | ||
short = "get the direction of the turtle's @STEP in degrees or set it to x" | ||
|
||
["@STEP"] | ||
prototype = "@STEP" | ||
short = "move `@SPEED`/100 cells forward in `@DIR`, triggering `@SCRIPT` on cell change" | ||
|
||
["@BUMP"] | ||
prototype = "@BUMP" | ||
prototype_set = "@BUMP 1" | ||
short = "get whether the turtle fence mode is BUMP, or set it to BUMP with 1" | ||
|
||
["@WRAP"] | ||
prototype = "@WRAP" | ||
prototype_set = "@WRAP 1" | ||
short = "get whether the turtle fence mode is WRAP, or set it to WRAP with 1" | ||
|
||
["@BOUNCE"] | ||
prototype = "@BOUNCE" | ||
prototype_set = "@BOUNCE 1" | ||
short = "get whether the turtle fence mode is BOUNCE, or set it to BOUNCE with 1" | ||
|
||
["@SCRIPT"] | ||
prototype = "@SCRIPT" | ||
prototype_set = "@SCRIPT x" | ||
short = "get which script runs when the turtle changes cells, or set it to x" | ||
|
||
["@SHOW"] | ||
prototype = "@SHOW" | ||
prototype_set = "@SHOW 0/1" | ||
short = "get whether the turtle is displayed on the TRACKER screen, or turn it on or off" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.