Skip to content

Commit f90922e

Browse files
committed
Merge pull request smallbasic#22 from chrisws/0_11_17b
COMMON: cleanup datatype, save image, screenshot menu
2 parents da0df12 + 4501af6 commit f90922e

Some content is hidden

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

49 files changed

+433
-361
lines changed

ide/android/proguard-project.txt

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# To enable ProGuard in your project, edit project.properties
2+
# to define the proguard.config property as described in that file.
3+
#
4+
# Add project specific ProGuard rules here.
5+
# By default, the flags in this file are appended to flags specified
6+
# in ${sdk.dir}/tools/proguard/proguard-android.txt
7+
# You can edit the include path and order by changing the ProGuard
8+
# include property in project.properties.
9+
#
10+
# For more details, see
11+
# http://developer.android.com/guide/developing/tools/proguard.html
12+
13+
# Add any project specific keep options here:
14+
15+
# If your project uses WebView with JS, uncomment the following
16+
# and specify the fully qualified class name to the JavaScript interface
17+
# class:
18+
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
19+
# public *;
20+
#}
21+
22+
-keep public class * {
23+
public *;
24+
}
25+

src/common/bc.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ void bc_add1(bc_t *bc, byte code) {
5656
/*
5757
* change one command
5858
*/
59-
void bc_store1(bc_t *bc, addr_t offset, byte code) {
59+
void bc_store1(bc_t *bc, bcip_t offset, byte code) {
6060
bc->ptr[offset] = code;
6161
}
6262

@@ -156,7 +156,7 @@ void bc_add_extpcode(bc_t *bc, int lib, long idx) {
156156
/*
157157
* add an address
158158
*/
159-
void bc_add_addr(bc_t *bc, addr_t idx) {
159+
void bc_add_addr(bc_t *bc, bcip_t idx) {
160160
if (bc->count >= bc->size - 4) {
161161
bc_resize(bc, bc->size + BC_ALLOC_INCR);
162162
}
@@ -167,9 +167,9 @@ void bc_add_addr(bc_t *bc, addr_t idx) {
167167
/*
168168
* add a control code
169169
*
170-
* Control codes are followed by 2 addr_t elements (jump on true, jump on false)
170+
* Control codes are followed by 2 bcip_t elements (jump on true, jump on false)
171171
*/
172-
void bc_add_ctrl(bc_t *bc, code_t code, addr_t true_ip, addr_t false_ip) {
172+
void bc_add_ctrl(bc_t *bc, code_t code, bcip_t true_ip, bcip_t false_ip) {
173173
bc_add1(bc, code);
174174
bc_add_addr(bc, true_ip);
175175
bc_add_addr(bc, false_ip);

src/common/bc.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@
2525
*/
2626
typedef struct {
2727
code_t *ptr; /**< pointer to byte-code */
28-
addr_t cp; /**< current position (used by readers not writers) */
29-
addr_t size; /**< allocation size (optimization) */
30-
addr_t count; /**< current size (used by writers as the current position) */
28+
bcip_t cp; /**< current position (used by readers not writers) */
29+
bcip_t size; /**< allocation size (optimization) */
30+
bcip_t count; /**< current size (used by writers as the current position) */
3131
} bc_t;
3232

3333
/**
@@ -86,7 +86,7 @@ void bc_add1(bc_t *bc, byte code);
8686
* @param bc the bc structure
8787
* @param code the byte
8888
*/
89-
void bc_store1(bc_t *bc, addr_t offset, byte code);
89+
void bc_store1(bc_t *bc, bcip_t offset, byte code);
9090

9191
/**
9292
* @ingroup scan
@@ -223,7 +223,7 @@ void bc_add_extpcode(bc_t *dest, int lib, long idx);
223223
* @param bc the bc segment
224224
* @param idx the address
225225
*/
226-
void bc_add_addr(bc_t *bc, addr_t idx);
226+
void bc_add_addr(bc_t *bc, bcip_t idx);
227227

228228
/**
229229
* @ingroup scan
@@ -235,7 +235,7 @@ void bc_add_addr(bc_t *bc, addr_t idx);
235235
* @param true_ip the jump-address when on true
236236
* @param false_ip the jump-address when on false
237237
*/
238-
void bc_add_ctrl(bc_t *bc, code_t code, addr_t true_ip, addr_t false_ip);
238+
void bc_add_ctrl(bc_t *bc, code_t code, bcip_t true_ip, bcip_t false_ip);
239239

240240
/**
241241
* @ingroup scan

src/common/blib.c

Lines changed: 36 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -847,22 +847,22 @@ void cmd_input(int input) {
847847
* ON x GOTO|GOSUB ...
848848
*/
849849
void cmd_on_go() {
850-
addr_t dest_ip;
850+
bcip_t dest_ip;
851851
var_t var;
852852
stknode_t node;
853853

854-
addr_t next_ip = code_getaddr();
854+
bcip_t next_ip = code_getaddr();
855855
code_skipaddr();
856856
code_t command = code_getnext();
857857
byte count = code_getnext();
858-
addr_t table_ip = prog_ip;
859-
addr_t expr_ip = prog_ip + (count * ADDRSZ);
858+
bcip_t table_ip = prog_ip;
859+
bcip_t expr_ip = prog_ip + (count * ADDRSZ);
860860

861861
v_init(&var);
862862
prog_ip = expr_ip;
863863
eval(&var);
864864

865-
addr_t index = (v_igetval(&var) - 1);
865+
bcip_t index = (v_igetval(&var) - 1);
866866
if (((int) index == -1) || ((int) index >= (int) count)) {
867867
// index == -1 (0 on BASIC) || index >= count do nothing
868868
command = kwNULL;
@@ -922,10 +922,10 @@ void cmd_gosub() {
922922
* @param target sub/func
923923
* @param return-variable ID
924924
*/
925-
addr_t cmd_push_args(int cmd, addr_t goto_addr, addr_t rvid) {
925+
bcip_t cmd_push_args(int cmd, bcip_t goto_addr, bcip_t rvid) {
926926
stknode_t param;
927-
addr_t ofs;
928-
addr_t pcount = 0;
927+
bcip_t ofs;
928+
bcip_t pcount = 0;
929929
var_t *arg = NULL;
930930

931931
if (code_peek() == kwTYPE_LEVEL_BEGIN) {
@@ -1017,8 +1017,8 @@ addr_t cmd_push_args(int cmd, addr_t goto_addr, addr_t rvid) {
10171017
}
10181018

10191019
void cmd_udp(int cmd) {
1020-
addr_t goto_addr = code_getaddr();
1021-
addr_t rvid = code_getaddr();
1020+
bcip_t goto_addr = code_getaddr();
1021+
bcip_t rvid = code_getaddr();
10221022
prog_ip = cmd_push_args(cmd, goto_addr, rvid);
10231023
}
10241024

@@ -1030,11 +1030,11 @@ void cmd_udp(int cmd) {
10301030
* @param goto_addr address of UDP
10311031
* @param rvid return-var-id on callers task (this task)
10321032
*/
1033-
void cmd_call_unit_udp(int cmd, int udp_tid, addr_t goto_addr, addr_t rvid) {
1033+
void cmd_call_unit_udp(int cmd, int udp_tid, bcip_t goto_addr, bcip_t rvid) {
10341034
stknode_t param;
1035-
addr_t ofs;
1035+
bcip_t ofs;
10361036
var_t *arg = NULL;
1037-
addr_t pcount = 0;
1037+
bcip_t pcount = 0;
10381038
int my_tid = ctask->tid;
10391039

10401040
if (code_peek() == kwTYPE_LEVEL_BEGIN) {
@@ -1134,7 +1134,7 @@ void cmd_crvar() {
11341134
int i;
11351135
int count = code_getnext(); // number of variables to create
11361136
for (i = 0; i < count; i++) {
1137-
addr_t vid = code_getaddr(); // an ID on global-variable-table is used
1137+
bcip_t vid = code_getaddr(); // an ID on global-variable-table is used
11381138
stknode_t node;
11391139

11401140
// store previous variable to stack
@@ -1269,7 +1269,7 @@ void cmd_udpret() {
12691269
int cmd_exit() {
12701270
stknode_t node;
12711271
int ready = 0, exit_from_udp = 0;
1272-
addr_t addr = INVALID_ADDR;
1272+
bcip_t addr = INVALID_ADDR;
12731273
code_t code;
12741274

12751275
code = code_getnext();
@@ -1373,7 +1373,7 @@ void cmd_return() {
13731373
* IF expr [THEN]
13741374
*/
13751375
void cmd_if() {
1376-
addr_t true_ip, false_ip;
1376+
bcip_t true_ip, false_ip;
13771377
var_t var;
13781378
stknode_t node;
13791379

@@ -1396,7 +1396,7 @@ void cmd_if() {
13961396
* ELSE
13971397
*/
13981398
void cmd_else() {
1399-
addr_t true_ip, false_ip;
1399+
bcip_t true_ip, false_ip;
14001400
stknode_t node;
14011401

14021402
true_ip = code_getaddr();
@@ -1426,7 +1426,7 @@ void cmd_else() {
14261426
* ELIF
14271427
*/
14281428
void cmd_elif() {
1429-
addr_t true_ip, false_ip;
1429+
bcip_t true_ip, false_ip;
14301430
var_t var;
14311431
stknode_t node;
14321432

@@ -1487,7 +1487,7 @@ void cmd_endif() {
14871487
*/
14881488
void cmd_for() {
14891489
byte code;
1490-
addr_t true_ip, false_ip;
1490+
bcip_t true_ip, false_ip;
14911491
stknode_t node;
14921492
var_t var, varstep;
14931493
var_p_t array_p, var_p;
@@ -1653,7 +1653,7 @@ void cmd_for() {
16531653
* WHILE expr
16541654
*/
16551655
void cmd_while() {
1656-
addr_t true_ip, false_ip;
1656+
bcip_t true_ip, false_ip;
16571657
var_t var;
16581658
stknode_t node;
16591659

@@ -1679,7 +1679,7 @@ void cmd_while() {
16791679
*/
16801680
void cmd_wend() {
16811681
stknode_t node;
1682-
addr_t jump_ip;
1682+
bcip_t jump_ip;
16831683

16841684
code_skipaddr();
16851685
jump_ip = code_getaddr();
@@ -1692,7 +1692,7 @@ void cmd_wend() {
16921692
*/
16931693
void cmd_repeat() {
16941694
stknode_t node;
1695-
addr_t next_ip;
1695+
bcip_t next_ip;
16961696

16971697
node.type = kwREPEAT;
16981698
code_skipaddr();
@@ -1705,7 +1705,7 @@ void cmd_repeat() {
17051705
* UNTIL expr
17061706
*/
17071707
void cmd_until() {
1708-
addr_t jump_ip;
1708+
bcip_t jump_ip;
17091709
var_t var;
17101710
stknode_t node;
17111711

@@ -1726,7 +1726,7 @@ void cmd_until() {
17261726
* NEXT
17271727
*/
17281728
void cmd_next() {
1729-
addr_t next_ip, jump_ip;
1729+
bcip_t next_ip, jump_ip;
17301730
var_t var_to, var_step, *var_p, *array_p;
17311731
var_t *var_elem_ptr;
17321732
int check = 0;
@@ -2112,7 +2112,7 @@ void cmd_wsplit() {
21122112
int count, i, wait_q;
21132113
char *p, *ps, *new_text, *buf, *z;
21142114
var_t *var_p, *elem_p;
2115-
addr_t use_ip, exit_ip = INVALID_ADDR;
2115+
bcip_t use_ip, exit_ip = INVALID_ADDR;
21162116
char *str = NULL, *del = NULL, *pairs = NULL;
21172117

21182118
par_massget("SSPs", &str, &del, &var_p, &pairs);
@@ -2403,7 +2403,7 @@ void cmd_timehms() {
24032403
/**
24042404
* SORT array [USE ...]
24052405
*/
2406-
int sb_qcmp(var_t *a, var_t *b, addr_t use_ip) {
2406+
int sb_qcmp(var_t *a, var_t *b, bcip_t use_ip) {
24072407
if (use_ip == INVALID_ADDR) {
24082408
return v_compare(a, b);
24092409
} else {
@@ -2423,7 +2423,7 @@ int sb_qcmp(var_t *a, var_t *b, addr_t use_ip) {
24232423
}
24242424

24252425
// using C's qsort()
2426-
static addr_t static_qsort_last_use_ip;
2426+
static bcip_t static_qsort_last_use_ip;
24272427

24282428
int qs_cmp(const void *a, const void *b) {
24292429
var_t *ea = (var_t *) a;
@@ -2432,7 +2432,7 @@ int qs_cmp(const void *a, const void *b) {
24322432
}
24332433

24342434
void cmd_sort() {
2435-
addr_t use_ip, exit_ip;
2435+
bcip_t use_ip, exit_ip;
24362436
var_t *var_p;
24372437
int errf = 0;
24382438

@@ -2472,7 +2472,7 @@ void cmd_sort() {
24722472
* SEARCH A(), key, BYREF ridx [USE ...]
24732473
*/
24742474
void cmd_search() {
2475-
addr_t use_ip, exit_ip;
2475+
bcip_t use_ip, exit_ip;
24762476
int i, bcmp;
24772477
var_t *var_p, *elem_p, *rv_p;
24782478
var_t vkey;
@@ -2586,7 +2586,7 @@ void cmd_swap(void) {
25862586
*/
25872587
void cmd_exprseq(void) {
25882588
var_t *var_p, *elem_p;
2589-
addr_t use_ip, exit_ip = INVALID_ADDR;
2589+
bcip_t use_ip, exit_ip = INVALID_ADDR;
25902590
var_num_t xmin, xmax, dx, x;
25912591
var_int_t count, i;
25922592

@@ -2657,8 +2657,8 @@ void cmd_select() {
26572657
*/
26582658
void cmd_case() {
26592659
var_t var_p;
2660-
addr_t true_ip = code_getaddr(); // matching case
2661-
addr_t false_ip = code_getaddr(); // non-matching case
2660+
bcip_t true_ip = code_getaddr(); // matching case
2661+
bcip_t false_ip = code_getaddr(); // non-matching case
26622662

26632663
v_init(&var_p);
26642664
eval(&var_p);
@@ -2686,8 +2686,8 @@ void cmd_case() {
26862686
* skip to cmd_end_select if a previous case was true
26872687
*/
26882688
void cmd_case_else() {
2689-
addr_t true_ip = code_getaddr(); // default block
2690-
addr_t false_ip = code_getaddr(); // end-select
2689+
bcip_t true_ip = code_getaddr(); // default block
2690+
bcip_t false_ip = code_getaddr(); // end-select
26912691
stknode_t *node = code_stackpeek();
26922692
code_jump(node->x.vcase.flags ? false_ip : true_ip);
26932693
}
@@ -2736,8 +2736,8 @@ void cmd_definekey(void) {
27362736
* Handler for unthrown/uncaught exceptions
27372737
*/
27382738
void cmd_catch() {
2739-
addr_t end_try_ip = code_getaddr();
2740-
addr_t outer_catch_ip = code_getaddr();
2739+
bcip_t end_try_ip = code_getaddr();
2740+
bcip_t outer_catch_ip = code_getaddr();
27412741

27422742
// skip level code
27432743
prog_ip += 1;

src/common/blib.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ void dump_stack(void);
2525

2626
// first class
2727
void cmd_udp(int);
28-
addr_t cmd_push_args(int cmd, addr_t goto_addr, addr_t rvid);
29-
void cmd_call_unit_udp(int cmd, int udp_tid, addr_t goto_addr, addr_t rvid);
28+
bcip_t cmd_push_args(int cmd, bcip_t goto_addr, bcip_t rvid);
29+
void cmd_call_unit_udp(int cmd, int udp_tid, bcip_t goto_addr, bcip_t rvid);
3030
void cmd_udpret(void);
3131
void cmd_crvar(void);
3232
void cmd_param(void);

src/common/blib_db.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -815,7 +815,7 @@ void cmd_chmod() {
815815
/*
816816
* walk on dirs
817817
*/
818-
void dirwalk(char *dir, char *wc, addr_t use_ip) {
818+
void dirwalk(char *dir, char *wc, bcip_t use_ip) {
819819
char name[OS_PATHNAME_SIZE];
820820
struct dirent *dp;
821821
DIR *dfd;
@@ -882,7 +882,7 @@ void dirwalk(char *dir, char *wc, addr_t use_ip) {
882882
* DIRWALK "/home" [, "*"] USE MYPRN(x)
883883
*/
884884
void cmd_dirwalk() {
885-
addr_t use_ip, exit_ip;
885+
bcip_t use_ip, exit_ip;
886886
char *dir = NULL, *wc = NULL;
887887

888888
par_massget("Ss", &dir, &wc);

0 commit comments

Comments
 (0)