Commit graph

1519 commits

Author SHA1 Message Date
crc
999a3e9a29 fix bug in s:get and listen allowing buffer underflow to corrupt memory
FossilOrigin-Name: 337c41eaf18589c1d8201be02574b477455023d3508a9657aa6e08129386dc2d
2021-07-03 16:40:41 +00:00
crc
8fcf6219ea nga-c: retro binary now exits with return code 1 if file is not found when using -f or -t
FossilOrigin-Name: c4e719b54c9dc8df37e35db5c4fbadb693b2a8fa23ac261182f93bd99f86e8cd
2021-06-28 11:48:13 +00:00
crc
31a6428fb2 add b:fetch and b:store
FossilOrigin-Name: 81d42683735f00af57af5c3686d6da72e38dcd9cb1db5aafbedb0a3c38da4348
2021-06-24 14:07:54 +00:00
crc
b6a81359e6 add pack and unpack
FossilOrigin-Name: 459d61941f93a2373c3ac1e18c9100cc17b4e724996723cdf0090c7605af5bb9
2021-06-24 13:38:10 +00:00
crc
54c16fc96f retro startup banner: fix reporting of used, free memory
FossilOrigin-Name: d8558d3fbd46f4ab4ce6f490215186331d75bc227451289274026cc92fab3a41
2021-06-24 13:36:14 +00:00
crc
2735d07f84 nga-c / repl: exit on EOF instead of segfaulting
FossilOrigin-Name: d07ff75ab1d7151dfc9ea6a446374547c8ab7420693073567d7964dac629a349
2021-06-24 12:07:27 +00:00
crc
4933863fb2 glossary: add example showing use of hook and a default action for the word
FossilOrigin-Name: 229f52b5899c5bfedb2e70a73759c39edb55a35aa3a1f045e9454943f71bf6b3
2021-06-23 16:35:32 +00:00
crc
3d5365b6ca retro-describe: fix text for example #2
FossilOrigin-Name: 91e38fcd8a77313f91760ce0d6bc03ab32db861de7a865e506951b055d5ec7d4
2021-06-23 16:34:14 +00:00
crc
67855948b9 add sub-stack comments for a couple of words
FossilOrigin-Name: d47690614c26e3515ab85f5d66ab3afd8da9ec6fa5debe1652d1cd6ae4a4c2e9
2021-06-22 12:35:19 +00:00
crc
84ef7119e8 book: mention sub-stack comments for words consuming quotes
FossilOrigin-Name: ad5f3c67563842c62a09c38a80da2737518ce254ad0a7c1f5b4bdb1892eb73ae
2021-06-22 10:58:56 +00:00
crc
4be717f578 core: add "bye"
FossilOrigin-Name: ea15f1bf0112b8756fb59e2dacd44559c972e50d6b460271365e15711689ae82
2021-06-21 16:10:34 +00:00
crc
e0340ea1d7 stdlib: remove if: and -if:, add forever
FossilOrigin-Name: ae01128ca82076ffe4fd74ddfa0499053d43e65b9d16c35f1edba537c7359288
2021-06-21 12:10:34 +00:00
crc
a75d0b21ac bin/retro - "bye" now uses halt instruction instead of unix:exit
FossilOrigin-Name: 44f755be1bb85e1a588aca9a5dfaaa1e652bc3fe56f3598cd7204cb84d3f2196
2021-06-21 12:09:55 +00:00
crc
5ec4cc202a a small cleanup in retro-describe
FossilOrigin-Name: 9db02bdfb9a4ba3a08bad22f3e5adb0eb33e95cb3926a631acf98006db7cabd7
2021-06-21 03:15:12 +00:00
crc
37c4486d4f nga-c (non-libc): openbsd & freebsd on amd64 use same assembly portion now
FossilOrigin-Name: 5e9cb1051c37c681364157959dbe69f6c1bbc7e2e84cb21071242d7deb75fff0
2021-06-19 14:41:06 +00:00
crc
18f5d9b2e4 nga-c (non-libc): start work to consolidate openbsd/freebsd support
FossilOrigin-Name: 1a962b21e7db385286a69ab78e6da393f22a7559acd2076b81f810ed57a880b6
2021-06-19 14:36:41 +00:00
crc
bb838c3aac update release notes
FossilOrigin-Name: 6211b341969606ef77640555b1482ba7ee42a717aa19a8aaa7c45ad71665a3f0
2021-06-19 06:00:10 +00:00
crc
0d1b43a7a9 nga-c: non-libc on openbsd no longer needs nasm
FossilOrigin-Name: cf9d25aca548dfd5ec8b17ca4eb845ce414e19169358b6d6deeaa4b65e2eb50b
2021-06-19 05:47:10 +00:00
crc
139b322f79 retro-document: fix detection of sigils used
FossilOrigin-Name: 22babfb155716d1834a20d3356ee8f94dd73430386f0a6296209cc2da85fce91
2021-06-18 18:49:23 +00:00
crc
4b03ef2d28 work on clarifications to terminology around devices
FossilOrigin-Name: 4b1c67484912e3bbee24b637e947e3649c1b08367534c61cb00c5612ab10a341
2021-06-18 18:04:03 +00:00
crc
d027bf6f41 work on clarifications to terminology around devices
FossilOrigin-Name: adf08c8ec4aab7403fa807c1734d0ab4dd35822b035eec5df14656e23d8d89c7
2021-06-18 13:56:13 +00:00
crc
be7b1ad007 nga-c: add unix:execute
FossilOrigin-Name: d3e589e1fe696182ca97ddbd6065b693459781a074f34899eb3809ef9eedf62e
2021-06-18 13:39:57 +00:00
crc
2b311ceab7 nga-c: non-libc: openbsd-amd64 support, source cleanups
FossilOrigin-Name: f8712bb8ce359909a61a8d0ff917173da4e35b8586e34b6207e3604ae40f139e
2021-06-17 18:49:53 +00:00
crc
6f8bd3047f nga-c: non-libc version updated. closes #59
FossilOrigin-Name: e52d8d1976ce3be3dbdc10e92667e629602ae91a8619213a8ff8cc642524ddb0
2021-06-17 13:58:50 +00:00
crc
e8d09ec1ec nga-c-wip: start work on setting up a single struct to hold the system state (#67)
FossilOrigin-Name: ca0e3ee3d97c7188edbb9ef4a86ede7ae2cc141d5d8ed20c33c9ca7a0f400c02
2021-06-11 19:51:42 +00:00
crc
ac848b05f5 nga-c: add retro-wip.c for implementation changes from issue #66
FossilOrigin-Name: 6a36e1b939d5b12e9b5a7a40221a34302ea550abb879efc22460b42075a3dbcc
2021-06-11 19:36:38 +00:00
crc
752a312f88 casket: dont require specifying the index.html for directories
FossilOrigin-Name: d6cf6ded09795da5e31872bd9cbb6fe01d2078e436202d8a94988668384cdb20
2021-06-09 12:16:02 +00:00
crc
89570c12b2 nga-c: fix bug in ha instruction
FossilOrigin-Name: b832dc786f8f87be737d11f979d1646675b50d572c154a72d3422a3114160e09
2021-06-09 00:09:05 +00:00
crc
c8a5b047bd image: rename s:index-of, s:index-of-string, a:index-of, a:index-of-string
FossilOrigin-Name: 88416f7a177a6171739a75db5ad4d399735ecd29836424897629ca1787d776d2
2021-06-04 18:34:59 +00:00
crc
06ee9705a8 image: rename some words
s:contains-char?  to  s:contains/char?
s:contains-string? to s:contains/string?
a:contains-string? to a:contains/string?

old names are now deprecated and will be removed after 2021.7.

FossilOrigin-Name: 5a19d7aac514c5ba87963c5f0645f3daa8a8e3dc04546c0627fa046479ecd8dd
2021-06-04 13:54:21 +00:00
crc
ae55f1cd45 image: sigil:: is now a hook point
FossilOrigin-Name: 3f5f0a6728041ad5465a46269d358b64a98d1b4424b5a8376c9ff8e592e419dd
2021-06-04 13:37:42 +00:00
crc
db64b92476 image: use inline assembly for n:inc and n:dec
FossilOrigin-Name: 3e31ec7bcd7ae0c6c415a8dab10709d8525f9b1a369e7a6f7dd9157c18ca06d3
2021-06-04 12:20:10 +00:00
crc
41b3c18145 image: move hook related words to earlier in the image to allow more words to become hooks
FossilOrigin-Name: 15ce16aec360a493a709294e696af8d60fd32a1f36a215430d014dfc40a265f8
2021-06-04 12:07:06 +00:00
crc
5245935879 nga-cxx: add in initial image; formatting tweaks
FossilOrigin-Name: 35467c97aa2a9e99f8c84dafb3dc0887963977b266bcc964e8d3ba0ac081781b
2021-06-03 17:30:19 +00:00
crc
ec167abf4f nga-cxx: initial implementation from Arland Childers
tested and confirmed to run the test images and a basic listener.
still very early, not optimal, and non-idiomatic.

FossilOrigin-Name: 7d7fba940efdc621f63f9ac799addbecd1ddd473209e11fbe6901cbef2ae5934
2021-06-03 17:07:10 +00:00
crc
fb82418d88 nga-c: fix an issue with script:current-line
specifically, script:current-line was not working. this patch
isn't fully tested, but does fix issues in my test case. it
makes `script:current-line` immediate (so references inside a
definition will actually make sense) and fixes an issue that
was causing indented lines to be counted twice.

since this now skips indention, it should cut down on the
number of evaluations on empty tokens, which will save a little
time when running programs.

FossilOrigin-Name: 0393f609b505ec2a364831078f36ec44b633ea579e7bc0b74a9665c07f08d7ce
2021-06-03 14:07:29 +00:00
crc
ca23660abe docs: clarify that ---reveal--- can be left out and using it without public names will corrupt memory.
FossilOrigin-Name: ecf434a6642f69195a8637bd44bbdded5fde50e21638f23d576b282c1c079bec
2021-06-03 04:05:58 +00:00
crc
3af723f9fd docs: merge in words.tsv corrections from rick_carlino
FossilOrigin-Name: 32e12784fe431a854711acf2ec45795b3c69c2e77a9824281c21678925df671f
2021-06-02 12:16:21 +00:00
crc
edfa9d4a6a image: fix sigil:& to return 0 as expected if name not found (bug identified by rick)
FossilOrigin-Name: 1e0bc9ce4023e9ab03cf73446bcab27a4811571fc102ca14a35bfb5b8413aaed
2021-06-02 03:51:31 +00:00
crc
413ccb3ac8 glossary: clarify that sigil:& returns 0 if word not found
FossilOrigin-Name: e949baafbacd0f29c688b55207db750d5abf80293d35dc045b192e1dee1d9a41
2021-06-02 03:38:07 +00:00
crc
5d37b57745 image: fix buffer overflow in n:to-string
FossilOrigin-Name: 34b4036e1a1de88c059168442b122400e6623917ba44b01758ae59cda1d4b89d
2021-06-02 03:23:12 +00:00
crc
0913e90d7f bug reporting: remove freenode
FossilOrigin-Name: c9f800bd51650ad915d9679cdec239ba849ff6a110cbff659699d2553ca2ff56
2021-06-01 19:54:37 +00:00
crc
0307e57fdc add test images for each instruction excluding i/o
the tests now include a small muri assembly file for each
instruction. if your vm runs these successfully and supports
basic i/o, it should be sufficient to run a full retro system.

FossilOrigin-Name: b80eaeb75ee2b4476f5b5a4aa62adf76da3ed11ac3b2f493f77d9bd4366f8ea9
2021-06-01 19:00:48 +00:00
crc
91aa668160 retro-compiler: fix a duplicate #define
FossilOrigin-Name: 3a84e4797f2d2e039c029607ee2e39d09a1e16ec6622e6a931169444411e4603
2021-06-01 13:44:53 +00:00
crc
aa99e1b54a nga-c: -t now takes a command line argument for the file name
this closes #63. rick noted that -t is not consistent with -f,
the changes here address this. -f now loads code blocks from a
file, and -t will load both code and test blocks.

FossilOrigin-Name: b32065ff68714f4c6b86e17da44c4778a0ce9ceb7db81a3466edd3da312d47e0
2021-06-01 13:42:30 +00:00
crc
cfd4e9ea15 floating point: increase precision in f:E and f:PI
FossilOrigin-Name: bd213f06612c3c2c2a71cb1bce2fe55d991ef8801f81152e354981f407602c5b
2021-05-31 00:14:34 +00:00
crc
b2c21faca4 image: under 1024 cells again
FossilOrigin-Name: 06bfab86c32a1b9271c726667d79d8b985b5c4a106b21c630468699fe4f90f78
2021-05-30 22:01:54 +00:00
crc
0235d20ad5 image: correct a comment; reduce footprint by 1 cell
FossilOrigin-Name: 5494777637dca11853168e79222ffebf3d9e6c2022ec5978b154fa4fc74537c6
2021-05-30 21:49:28 +00:00
crc
449675fb8c toolchain: more small improvements to amalgamation
FossilOrigin-Name: 758b5410fab3b0db708bbf0c4f3d4e8eb3150a5a6fb05ce46302a318d1023aed
2021-05-28 19:39:11 +00:00
crc
c1f00b2458 nga-c: dump stack if execution returns to main after interactive or run image mode
FossilOrigin-Name: e9539243b7437f60d823ad012a3fea63a504203781f0ae4f1802375a883da8f6
2021-05-28 19:24:16 +00:00