Skip to content

Commit 09b41b0

Browse files
authored
Merge pull request #75 from chrisws/0_12_14
0 12 14
2 parents 3a58d96 + b423a4e commit 09b41b0

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

69 files changed

+2061
-683
lines changed

ChangeLog

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,26 @@
1+
2018-11-11 (0.12.14)
2+
CONSOLE: added support for IMAGE command
3+
4+
2018-10-20 (0.12.14)
5+
UI: fix navigation when network access down then available
6+
UI: changed display of "BLACK" to be a slightly ligher onyx colour.
7+
ANDROID: update help tip in scratch window
8+
9+
2018-10-13 (0.12.14)
10+
COMMON: fix about page logo
11+
12+
2018-10-09 (0.12.14)
13+
COMMON: fix crash when passing zero as format argument to DATEFMT
14+
15+
2018-09-30 (0.12.14)
16+
COMMON: fix broken implementation to avoid appending multiple kwTYPE_EOCs (or kwTYPE_LINE)
17+
18+
2018-09-23 (0.12.14)
19+
COMMON: fix error message when command "LINE INPUT" attempts to read a non open file
20+
21+
2018-09-23 (0.12.14)
22+
COMMON: fix crash when attempting to load an image from a failed network connection
23+
124
2018-08-08 (0.12.13)
225
SDL: fix incorrect file loading with ALT+1-9 command
326

configure.ac

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ dnl This program is distributed under the terms of the GPL v2.0
77
dnl Download the GNU Public License (GPL) from www.gnu.org
88
dnl
99

10-
AC_INIT([smallbasic], [0.12.13])
10+
AC_INIT([smallbasic], [0.12.14])
1111
AC_CONFIG_SRCDIR([configure.ac])
1212

1313
AC_CANONICAL_TARGET
@@ -161,6 +161,9 @@ function buildSDL() {
161161
dnl avoid using MSCRT versions of printf for long double
162162
PACKAGE_CFLAGS="${PACKAGE_CFLAGS} -D__USE_MINGW_ANSI_STDIO"
163163

164+
AC_DEFINE(_USE_MATH_DEFINES, 1, [for M_PI in math.h])
165+
AC_DEFINE(realpath(F, R), _fullpath(R, F, PATH_MAX), [add missing realpath for system.cpp])
166+
164167
dnl do not depend on cygwin.dll under cygwin build
165168
PACKAGE_CFLAGS="${PACKAGE_CFLAGS} -mms-bitfields"
166169
PACKAGE_LIBS="${PACKAGE_LIBS} -lwsock32 -lws2_32 -static-libgcc -static-libstdc++"
@@ -198,6 +201,7 @@ function buildSDL() {
198201
esac
199202

200203
PACKAGE_CFLAGS="${PACKAGE_CFLAGS} `sdl2-config --cflags` `freetype-config --cflags` -fno-exceptions"
204+
CXXFLAGS="${CXXFLAGS} -fno-rtti -std=c++11"
201205

202206
dnl preconfigured values for SDL build
203207
AC_DEFINE(_SDL, 1, [Defined when building SDL version])
@@ -223,7 +227,6 @@ function buildAndroid() {
223227
AC_DEFINE(IMPL_DEV_READ, 1, [Implement dev_read()])
224228
AC_DEFINE(IMPL_DEV_DELAY, 1, [Driver implements dev_delay()])
225229
AC_DEFINE(IMPL_LOG_WRITE, 1, [Driver implements lwrite()])
226-
AC_DEFINE(CPU_BIGENDIAN, 1, [Android uses big-endian])
227230

228231
BUILD_SUBDIRS="src/platform/android"
229232
AC_SUBST(BUILD_SUBDIRS)
@@ -241,6 +244,13 @@ function buildConsole() {
241244
win32="yes"
242245
esac
243246

247+
AC_C_BIGENDIAN(
248+
AC_DEFINE(CPU_BIGENDIAN, 1, [machine is big-endian]),
249+
AC_DEFINE(CPU_LITTLE_ENDIAN, 1, [machine is little-endian]),
250+
AC_MSG_ERROR(unknown endianess),
251+
AC_MSG_ERROR(universial endianess not supported)
252+
)
253+
244254
AM_CONDITIONAL(WITH_CYGWIN_CONSOLE, test $win32 = yes)
245255
AC_DEFINE(BUILD_CONSOLE, 1, [Building a console based system.])
246256

debian/changelog

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
smallbasic (0.12.14) unstable; urgency=low
2+
* Various see web site
3+
4+
-- Chris Warren-Smith <cwarrensmith@gmail.com> Sat, 15 Sept 2018 09:45:25 +1000
5+
16
smallbasic (0.12.13) unstable; urgency=low
27
* Various see web site
38

samples/distro-examples/tests/all.bas

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,13 +134,12 @@ print "CREAL:" + CREAL (x)
134134
print "CSC:" + CSC (x)
135135
print "CSCH:" + CSCH (x)
136136
print "DATE:"' + DATE
137-
print "DATEFMT:" + DATEFMT("ddmmyy", 12345) + " " + DATEFMT("yyymmdd", d,m,y)
137+
print "DATEFMT:" + DATEFMT("ddmmyy", 12345) + " " + DATEFMT("yyymmdd", d,m,y): xx=datefmt(0,date)
138138
print "DEFINEKEY:"' + DEFINEKEY k,sub
139139
print "DEG:" + DEG (x)
140140
print "DETERM:"' + DETERM (A, 1)
141141
print "DISCLOSE:" + DISCLOSE("{debraceme}", "{}")
142142
print "ENCLOSE:" + ENCLOSE ("braceme", "{}")
143-
print "ENV:" + ENV("DISPLAY")
144143
print "EOF:"' + EOF (fileN)
145144
print "EXIST:"' + EXIST (file)
146145
print "EXP:" + EXP (x)

samples/distro-examples/tests/ongoto.bas

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
1+
rem test "OUT OF ADDRESS SPACE" error with incorrect kw optimisation
2+
goto 50
3+
a=b
4+
50 a=b
5+
6+
rem a terrible alternative to select/case
7+
a = 1
8+
100
9+
ON a GOTO 110,120,130
10+
110 a = 2:GOTO 100
11+
120 a = 3:GOTO 100
12+
130
113

214
for i=0 to 5
315
on i gosub 10,20, 30 , 40
@@ -12,6 +24,3 @@ return
1224
return
1325
40 ? "40"
1426
return
15-
16-
17-

samples/distro-examples/tests/output/all.out

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,6 @@ DEG:704.73808801091252
125125
DETERM:
126126
DISCLOSE:debraceme
127127
ENCLOSE:{braceme}
128-
ENV::0.0
129128
EOF:
130129
EXIST:
131130
EXP:219695.98867213790072
@@ -172,7 +171,7 @@ POINT:0
172171
POLYAREA:0
173172
POLYCENT:
174173
POW:12.3
175-
PROGLINE:190
174+
PROGLINE:189
176175
PTDISTLN:0
177176
PTDISTSEG:0
178177
PTSIGN:0

samples/distro-examples/tests/output/uds.out

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,4 @@ a.xfish.small=small
1010
a.xfish.big=big
1111
3
1212
2
13+
10

samples/distro-examples/tests/strings.bas

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -176,3 +176,8 @@ if expect != seq(0, 2*pi, 360/15+1) then throw "SEQ error"
176176

177177
s="Hello\033There"
178178
if (27 != asc(mid(s, 6, 1))) then throw "err"
179+
rem Non escaping '\' should appear verbatim
180+
s= "a\c\e"
181+
if mid(s, 2, 1) != "\\" then throw s
182+
if mid(s, 4, 1) != "\\" then throw s
183+

samples/distro-examples/tests/uds.bas

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,4 +141,27 @@ rem fill the var cache for testing in valgrind
141141
cache = {}
142142
for i = 0 to 8096
143143
cache[i] = "."
144-
next i
144+
next i
145+
146+
'
147+
' regression modifying kwTYPE_EOC
148+
'
149+
func GridClass()
150+
sub setCellValue(a)
151+
? a
152+
end
153+
local result = {}
154+
result.setCellValue = @setCellValue
155+
return result
156+
end
157+
func Game()
158+
sub start()
159+
self.grid.setCellValue(10)
160+
end
161+
local result = {}
162+
result.grid = GridClass()
163+
result.start = @start
164+
return result
165+
end
166+
g = Game()
167+
g.start()

samples/distro-examples/tests/unx_benchmarks.bas

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
'
44

55
st=ticks
6+
tickspersec=1000
67
for i=1 to 1000000:next
78
et=ticks
89
? "FOR speed: "; ((et-st)/tickspersec); "sec "; round(1000000/((et-st)/tickspersec));" l/s"

0 commit comments

Comments
 (0)