Skip to content

Commit 7be661a

Browse files
committed
Merged in bugfix/data_missing_label (pull request #183)
Bugfix/data missing label Approved-by: Jose Rodriguez <boriel@gmail.com>
2 parents 65d9d27 + 2197142 commit 7be661a

5 files changed

Lines changed: 1343 additions & 3 deletions

File tree

arch/zx48k/backend/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -446,7 +446,7 @@ def _deflabel(ins):
446446

447447

448448
def _data(ins):
449-
""" Defines a data item (bynary).
449+
""" Defines a data item (binary).
450450
It's just a constant expression to be converted do binary data "as is"
451451
452452
1st parameter is the type-size (u8 or i8 for byte, u16 or i16 for word, etc)

arch/zx48k/translator.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -190,6 +190,9 @@ def emit_data_blocks(self):
190190
else:
191191
self.emit('data', self.TSUFFIX(d.value.type_), [self.traverse_const(d.value)])
192192

193+
if not gl.DATAS: # The above loop was not executed, because there's no data
194+
self.emit('label', '__DATA__0')
195+
193196
self.emit('vard', '__DATA__END', ['00'])
194197

195198
def emit_strings(self):

tests/functional/arrbase1.asm

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ __END_PROGRAM:
5656
ret
5757
__CALL_BACK__:
5858
DEFW 0
59+
__DATA__0:
5960
__DATA__END:
6061
DEFB 00h
6162
#line 1 "array.asm"
@@ -257,7 +258,7 @@ __FNMUL2:
257258

258259
ENDP
259260

260-
#line 47 "arrbase1.bas"
261+
#line 48 "arrbase1.bas"
261262
#line 1 "read_restore.asm"
262263

263264
;; This implements READ & RESTORE functions
@@ -1544,7 +1545,7 @@ __DATA_ADDR: ;; Stores current DATA ptr
15441545

15451546

15461547

1547-
#line 48 "arrbase1.bas"
1548+
#line 49 "arrbase1.bas"
15481549

15491550
ZXBASIC_USER_DATA:
15501551
_k:

0 commit comments

Comments
 (0)