I thought it was a good time to post an update on what's new in tiny-c/PC.

Overview:

1. the for statement has been implemented and debugged.

2. unary operators ! (logical negative), ++ and -- (pre increment/decrement only) have been added.

3. the interpreter has been changed to fix the way the + and - unary operators work.

4. a new user MC which lets you test what version of the interpreter you are running has been added.

5. when you run the interpreter, it announces its version and gives credit to the original author and the current revisers.

The interpreter may be found at http://primepuzzle.com/tc/tiny-c-pc.zip

If you prefer, the self-extracting archive is at http://primepuzzle.com/tc/tiny-c-pc.exe

The tiny-c web page is at http://primepuzzle.com/tiny-c/

Here's a program which shows the new features.


/* star.tc - 1/29/2008

star [
if (version()<4) [
  pl "tiny-c/PC version 4 or higher required";pl ""
  return
  ]
char ver(4);ver="0.1";pl "star.tc ";ps ver;pl "";pl ""
int n,points,skip,w,found,hit
found=0
while (!found) [
  ps "enter a number <= 101 for points on star " 
  points=gn
  if (points<=101) found=1
  ]
for (skip=1;skip<=points-3;++skip) [
  pl "skip ";pn skip;ps " : "
  hit=0 
  for (n=0;n<=points;++n) [
    w=n*(skip+1);w=w%points;pn w+1
    if ((w+1)==points) hit=1
    ]
  if (hit==1) ps " *"  
  ]
pl ""
]

c:\12-31-07>tinyc.exe

tiny-c/PC Interpreter  Version PC-01-04
Copyright (c) 1984 by Scott B. Guthery
Last revised on 1/28/2008 by Lee Bradley, Ed Davis

tiny-c Shell - 1/28/2008

tc>.r star.tc
 530
 0 28 530 11470
tc>.star

star.tc 0.1

enter a number <= 101 for points on star 7

skip  1 :  1 3 5 7 2 4 6 1 *
skip  2 :  1 4 7 3 6 2 5 1 *
skip  3 :  1 5 2 6 3 7 4 1 *
skip  4 :  1 6 4 2 7 5 3 1 *

tc>.x

c:\12-31-07>

I wrote star.tc while investigating how many different stars you can draw with a given number of points. Here are the two stars you can draw which have 7 points.

The software to generate these stars may be found at http://primepuzzle.com/blog/starps.zip

It is written in Turbo Pascal 2.0.

While we're in such a colorful mood, here's a "stargram" jigsaw puzzle made from a 19-point skip-5 star followed by the assembler's commentary.

Here are some images of your challenging but very interesting puzzle. As mentioned, it was the wood grain direction that was barely visible under the paint that was THE key factor for me in helping to speed up the assembly time (to 18:18). I also noticed how the pieces "slid" along each other on the "edge" pieces such that (in certain places) they would definitely FIT. Sometimes those FIT points would appear near the ends of the flat "edge" pieces. The large color groups were definitely helpful cuz (eventually) I began to see how those groups as a whole could fit together. Your comment about my also knowing there were 19 star points helped too. Cool puzzle!

Chas

http://primepuzzle.com/tc/tiny-c-latest.html