realtime
-hostside-old
+adhoc-test
hostside
topology-dump
t
CLIENT_TARGETS= gui-plan-bot topology-dump evdev-manip
-TARGETS= hostside-old realtime \
+TARGETS= adhoc-test realtime \
$(CLIENT_TARGETS) \
$(addsuffix .speeds.ps, $(TRAINS)) \
$(addsuffix .speeds.record, $(TRAINS))
#---------- executables ----------
-hostside-old: serialio.o nmra.o main.o encode.o utils.o
+adhoc-test: serialio.o nmra.o adhoc-test.o encode.o utils.o
$(LINK)
topology-dump: topology-dump.o utils.o $(LAYOUT_DATA).o
-./hostside-old [<options>] <nmra-command> <nmra-args...> see nmra-packets.h
-./hostside-old [<options>] nmra_bytes <nmra-command-hex-no-csum>
-./hostside-old [<options>] nmra_raw <nmra-command-hex-with-csum>
-./hostside-old [<options>] command <literal-data-for-pic>
+./adhoc-test [<options>] <nmra-command> <nmra-args...> see nmra-packets.h
+./adhoc-test [<options>] nmra_bytes <nmra-command-hex-no-csum>
+./adhoc-test [<options>] nmra_raw <nmra-command-hex-with-csum>
+./adhoc-test [<options>] command <literal-data-for-pic>
options
-s<serialport> eg -s/dev/ttyS0 normally necessary
-w<repeatdelay> usleep; 0 = no usleep; default is -1 = don't repeat at all
-f<fudgedelay> usleep; each character; default is 0 = no usleep
Eg,
- ./hostside-old -s/dev/ttyS0 -w10000 -i1000 nmra_bytes 0348
+ ./adhoc-test -s/dev/ttyS0 -w10000 -i1000 nmra_bytes 0348
to tell decoder 3 to go speed 13 backwards every 10ms for 1000 times, ie 10s
(on norway this means it actually happens every 20ms, ie for 20s,
which makes it a bit of a fudge really)
03 (+) 48 = 4b ok
To test:
- ./hostside-old -st nmra_bytes 0348 && binview t
+ ./adhoc-test -st nmra_bytes 0348 && binview t
/*
* simple test harness for now
* asserts on usage errors
- * see README for usage info
+ * see README.adhoc-test for usage info
*/
#include <stdio.h>
#include "common.h"
-const char *progname= "hostside-old";
+const char *progname= "adhoc-test";
static FILE *dump_stream= 0;
static int repeat_delay= -1, iterations= -1;
port="$1"; shift
-ho () { ./hostside-old -s"$port" -w20000 -i0 -d "$@"; }
+ho () { ./adhoc-test -s"$port" -w20000 -i0 -d "$@"; }
# Packet Sequence for Command Stations/Programmers using
# Physical Register Addressing
b2=$(hexdump </dev/urandom -n1 -e '"%d"')
dirn=$(($b2 / 128))
echo which=$which b1=$b1 speed=$speed b2=$b2 dirn=$dirn
- ./hostside-old -s$s speed126 2 $speed $dirn
+ ./adhoc-test -s$s speed126 2 $speed $dirn
fi
if [ $which -lt 128 ]; then
value=$(( $which * 16 ))
printf "which=%s value=%s value=0x%x\n" $which $value $value
- ./hostside-old -s$s funcs5to8 2 $value
+ ./adhoc-test -s$s funcs5to8 2 $value
fi
delay=$(hexdump </dev/urandom -n1 -e '"%d"')
delayv=$(( $delay / 2 + 10 ))
b2=$(hexdump </dev/urandom -n1 -e '"%d"')
dirn=$(($b2 / 128))
echo b1=$b1 speed=$speed b2=$b2 dirn=$dirn
- ./hostside-old -s$s speed126 2 $speed $dirn
+ ./adhoc-test -s$s speed126 2 $speed $dirn
sleep 30
done
for f in `seq $x`; do
sleep 20; g=$(($f*$f));
echo $f $g;
- ./hostside-old -s$s speed126 2 $g 0
+ ./adhoc-test -s$s speed126 2 $g 0
done
done
done
# foreach f {funcs0to4 funcs5to8} {
# }
foreach f {funcs5to8} {
- set m [exec ./hostside-old -s/dev/stdout $f $loco 0x1fff]
+ set m [exec ./adhoc-test -s/dev/stdout $f $loco 0x1fff]
set m [hbytes raw2h $m]
lappend funcs_msgs ffff$m {}
}
}
proc xmit {nmral} {
global xmit_msg xmit_after detend settle_detend settle_time funcs_msgs
- set msg [eval [list exec ./hostside-old -s/dev/stdout] $nmral]
+ set msg [eval [list exec ./adhoc-test -s/dev/stdout] $nmral]
set xmit_msg [hbytes raw2h $msg]
debug "> $xmit_msg $nmral (E $detend $settle_detend $settle_time) \[$funcs_msgs]"
catch { after cancel $xmit_after }
cv="$1"; shift
value="$1"; shift
-./hostside-old "$@" -s"$port" command 11
-./hostside-old "$@" -s"$port" -i100 -w10000 cvwrite "$addr" "$cv" "$value"
+./adhoc-test "$@" -s"$port" command 11
+./adhoc-test "$@" -s"$port" -i100 -w10000 cvwrite "$addr" "$cv" "$value"
cv="$1"; shift
value="$1"; shift
-ho () { ./hostside-old -s"$port" -w20000 -i0 -d "$@"; }
+ho () { ./adhoc-test -s"$port" -w20000 -i0 -d "$@"; }
# Packet Sequence for Command Stations/Programmers using Direct Mode
# RP 9.2.3 E l.100-
proc nmrachange {thing argstring} {
global $thing
- set bin [eval exec ./hostside-old -s/dev/stdout $argstring]
+ set bin [eval exec ./adhoc-test -s/dev/stdout $argstring]
binary scan $bin H* x
debug "changed $thing=$x ($argstring)"
set $thing ff$x