changeset 24:8435bf0360f8

merge
author William Morgan <bill@mrgn.org>
date Sat, 14 Jul 2012 14:38:50 -0700
parents 75a005b210c5 (current diff) a90992bc7331 (diff)
children a224dc43877f
files maps/trampoline4.map src/sim.tp
diffstat 4 files changed, 38 insertions(+), 23 deletions(-) [+]
line wrap: on
line diff
--- a/Makefile	Sat Jul 14 14:38:21 2012 -0700
+++ b/Makefile	Sat Jul 14 14:38:50 2012 -0700
@@ -5,6 +5,11 @@
 OBJS := $(addprefix $(OBJDIR)/,sim.tp.c lifter.tp.c)
 TPDIR := ../tabletprog
 TPC := $(TPDIR)/tpc.js
+TPFLAGS := 
+
+ifdef compilerdebug
+	TPFLAGS += -compilerdebug 
+endif
 
 all : $(BINS) $(OBJS)
 
@@ -12,8 +17,13 @@
 	gcc -ggdb -I$(TPDIR) -o $@ $< $(TPDIR)/runtime/object.c 
 
 $(OBJDIR)/%.tp.c : $(SRCDIR)/%.tp
-	d8 $(TPC) -- -basedir $(TPDIR)/ $< > $@
+	d8 $(TPC) -- -basedir $(TPDIR)/ -i src $(TPFLAGS) $< > $@
 
 clean :
-	rm -f $(OBJS)
-	rm -f $(BINS)
+	rm -f $(OBJS) $(BINS)
+	
+cleansim :
+	rm -f bin/sim build/sim.tp.c
+	
+cleanlift :
+	rm -f bin/lifter build/lifter.tp.c
--- a/maps/trampoline4.map	Sat Jul 14 14:38:21 2012 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,16 +0,0 @@
-     ######
-     #....#
-     #.**.#
-     #.**.#
-     #.**.#
-######.\\.######
-#**....*.......#
-#\\....L\\\....#
-#A......*****..#
-######R.....###########
-     ###.....*.....\\\#
-       #\\\\#..1...\\\#
-       #\\\\#......\\\#
-       ################
-
-Trampoline A targets 1
--- a/src/lifter.tp	Sat Jul 14 14:38:21 2012 -0700
+++ b/src/lifter.tp	Sat Jul 14 14:38:50 2012 -0700
@@ -1,5 +1,21 @@
 #{
+	true <- #{
+	  if:else <- :self trueblock :elseblock {
+		trueblock:
+	  }
+	}
+
+	false <- #{
+	  if:else <- :self trueblock :elseblock {
+		elseblock:
+	  }
+	}
+	
 	main <- {
-		0
+		text <- sim readFd: 0
+		playfield <- (sim state) fromStr: text
+		os write: 2 text
+		os write: 2 "width: " . (string: (playfield width)) . "\n"
+		os write: 2 "height: " . (string: (playfield height)) . "\n"
 	}
 }
--- a/src/sim.tp	Sat Jul 14 14:38:21 2012 -0700
+++ b/src/sim.tp	Sat Jul 14 14:38:50 2012 -0700
@@ -196,8 +196,7 @@
 		}
 	}
 	
-	readFile <- :path {
-		fd <- os open: path (os O_RDONLY)
+	readFd <- :fd {
 		if: fd < 0 { "" } else: {
 			cur <- ""
 			part <- ""
@@ -207,11 +206,17 @@
 			} do: {
 				cur <- cur . part
 			}
-			os close: fd
 			cur
 		}
 	}
 	
+	readFile <- :path {
+		fd <- os open: path (os O_RDONLY)
+		out <- readFd: fd
+		os close: fd
+		out
+	}
+	
 	getMove <- {
 		os read: 0 1
 	}