shiny
Сообщения: 9834 Зарегистрирован: 22 дек 2016, 00:00
Откуда: в Шуе бал
Сообщение
shiny » 20 ноя 2020, 12:04
Короче, код такой:
Код: Выделить всё
device zxspectrum128
ORG #6000
begin
end
page 0
org $C000
page0b:
db "Dzhigurda",0
page0e:
display /d,end-begin
savesna "!void.sna",begin
IFUSED page0b
display page0b
ELSE
display "no page 0"
ENDIF
Версия 1.07 RC7, при компеляции выдает no page 0. Хотя по идее, должно казать адрес.
чо за фигня?
Ненависть- это подарок
krt17
Сообщения: 394 Зарегистрирован: 17 апр 2018, 23:45
Сообщение
krt17 » 20 ноя 2020, 13:10
дак ты ее и не юзед
shiny
Сообщения: 9834 Зарегистрирован: 22 дек 2016, 00:00
Откуда: в Шуе бал
Сообщение
shiny » 20 ноя 2020, 13:14
ну да, конечно
Код: Выделить всё
device zxspectrum128
ORG #6000
begin
;border
MACRO brd n
ld a,n
out ($FE),a
ENDM
;liney
;atrxy
jr $
call nbde
IFUSED nbde
nbde INC D:LD A,D:AND 7:RET NZ
LD A,E:ADD A,#20:LD E,A:RET C
LD A,D:SUB 8:LD D,A:RET
ENDIF
IFUSED nbhl
nbhl INC h:LD A,h:AND 7:RET NZ
LD A,L:ADD A,#20:LD L,A:RET C
LD A,H:SUB 8:LD H,A:RET
ENDIF
end
display /d,end-begin
savesna "!void.sna",begin
Ненависть- это подарок
krt17
Сообщения: 394 Зарегистрирован: 17 апр 2018, 23:45
Сообщение
krt17 » 20 ноя 2020, 13:15
Нипонел, ты разобрался?
shiny
Сообщения: 9834 Зарегистрирован: 22 дек 2016, 00:00
Откуда: в Шуе бал
Сообщение
shiny » 20 ноя 2020, 13:20
нед(
Ненависть- это подарок
krt17
Сообщения: 394 Зарегистрирован: 17 апр 2018, 23:45
Сообщение
krt17 » 20 ноя 2020, 13:42
Все заебись с твоим кодом
krt17
Сообщения: 394 Зарегистрирован: 17 апр 2018, 23:45
Сообщение
krt17 » 20 ноя 2020, 13:45
Если обьявлена это хуйня, надо к ней обратиться как во втором примере. А так все работало всегда
shiny
Сообщения: 9834 Зарегистрирован: 22 дек 2016, 00:00
Откуда: в Шуе бал
Сообщение
shiny » 20 ноя 2020, 13:56
Ну да, меня это и смутило - пример с nbde работает, а с page0 нет.
смысл в том, чтобы влегкую написать загрузчик. т.е., если объявлены page0,page1,page3,page4, то использовать директивы IFUSED и при загрузке и при создании TRD
Ненависть- это подарок
krt17
Сообщения: 394 Зарегистрирован: 17 апр 2018, 23:45
Сообщение
krt17 » 20 ноя 2020, 14:02
сделай display c ними тогда сработает, наверное ну или какую другую неважную хрень
А вообще такие штуки define делаются, посмотри мож тебе удобнее будет
shiny
Сообщения: 9834 Зарегистрирован: 22 дек 2016, 00:00
Откуда: в Шуе бал
Сообщение
shiny » 20 ноя 2020, 14:06
Кулибины, блядь - пилят ужасм до посинения.
huj equ page0b
теперь работает. Спасибо за подсказку
Ненависть- это подарок
shiny
Сообщения: 9834 Зарегистрирован: 22 дек 2016, 00:00
Откуда: в Шуе бал
Сообщение
shiny » 20 ноя 2020, 16:36
а хер там. если page0b не задана, то не катит.
Ненависть- это подарок
shiny
Сообщения: 9834 Зарегистрирован: 22 дек 2016, 00:00
Откуда: в Шуе бал
Сообщение
shiny » 20 ноя 2020, 17:00
Код: Выделить всё
device zxspectrum128
ORG #6000
begin
jr $
ld a,$10,bc,$7ffd:out (c),a
ld hl,$C000
end
page 0
org $C000
page0b:
db "Dzhigurda",0
page0e:
LUA
if sj.get_label("page0b")~=-1 then
sj.insert_label("nop0", 1)
else
sj.insert_label("nop0", 0)
end
ENDLUA
; display nop0
savesna "!void.sna",begin
IF nop0==1
display "p0 OK"
ELSE
display "no page 0"
ENDIF
Ненависть- это подарок
krt17
Сообщения: 394 Зарегистрирован: 17 апр 2018, 23:45
Сообщение
krt17 » 20 ноя 2020, 17:25
Код: Выделить всё
device zxspectrum128
ORG #6000
begin
jr $
define page0b
;----------------------
ifdef page0b
display "win"
else
display "failed"
endif
;----------------------
savesna "!void.sna",begin
так православно
shiny
Сообщения: 9834 Зарегистрирован: 22 дек 2016, 00:00
Откуда: в Шуе бал
Сообщение
shiny » 20 ноя 2020, 17:31
это глупо. page0b задана для страницы. Похоже, что удобнее использовать DEFINE.
Но, бля, критерий IFUSED ебанутый, если я правильно понял.
Ненависть- это подарок
krt17
Сообщения: 394 Зарегистрирован: 17 апр 2018, 23:45
Сообщение
krt17 » 20 ноя 2020, 17:32
не, ифузед заябись, просто не для этого, у тебя второй пример прям каноничный
shiny
Сообщения: 9834 Зарегистрирован: 22 дек 2016, 00:00
Откуда: в Шуе бал
Сообщение
shiny » 20 ноя 2020, 17:35
только с документаций не совпадает. IFUSED прринимает значение true, если к метке было обращение - CALL или LD A,()
неправильно это.
Ненависть- это подарок
krt17
Сообщения: 394 Зарегистрирован: 17 апр 2018, 23:45
Сообщение
krt17 » 20 ноя 2020, 17:39
Код: Выделить всё
device zxspectrum128
ORG #6000
begin
jr $
hui equ wtf
;----------------------
ifused wtf
wtf equ 1
display "win"
else
display "failed"
endif
;----------------------
savesna "!void.sna",begin
суяли, все работает и так
shiny
Сообщения: 9834 Зарегистрирован: 22 дек 2016, 00:00
Откуда: в Шуе бал
Сообщение
shiny » 20 ноя 2020, 17:52
если page0b не задано, то компеляция валится.
Ненависть- это подарок
krt17
Сообщения: 394 Зарегистрирован: 17 апр 2018, 23:45
Сообщение
krt17 » 20 ноя 2020, 18:04
Ясное дело, яж говорю, оно не совсем для этого. Но то что должно делать делает правильно
shiny
Сообщения: 9834 Зарегистрирован: 22 дек 2016, 00:00
Откуда: в Шуе бал
Сообщение
shiny » 20 ноя 2020, 18:13
Ага, теперь понел. Все же с DEFINE работает:
Код: Выделить всё
page 0
org $C000
page0b:
DEFINE pg0
f0: incbin "page0\0.bin.zx7"
f1: incbin "page0\1.bin.zx7"
page0e:
...
IFDEF pg0
di
ld de,(#5CF4)
ld hl, #C000
sectors page0b,page0e
call #3d13
ENDIF
Ненависть- это подарок
krt17
Сообщения: 394 Зарегистрирован: 17 апр 2018, 23:45
Сообщение
krt17 » 11 апр 2021, 16:41
Шыншыл писал(а): по тесту
какому тесту? в ней и так все работало
shiny
Сообщения: 9834 Зарегистрирован: 22 дек 2016, 00:00
Откуда: в Шуе бал
Сообщение
shiny » 11 апр 2021, 17:46
Код: Выделить всё
device zxspectrum128
ORG #6000
begin
jr $
ld a,"0"
rst 16
ld hl,bla
IFUSED bla
; ld a,-1
display "bla"
ENDIF
jr $
bla:
end
display /d,end-begin
savesna "!void.sna",begin
Ненависть- это подарок
krt17
Сообщения: 394 Зарегистрирован: 17 апр 2018, 23:45
Сообщение
krt17 » 11 апр 2021, 18:19
И чё? Нихуа не изменилось, работает как раньше.
krt17
Сообщения: 394 Зарегистрирован: 17 апр 2018, 23:45
Сообщение
krt17 » 11 апр 2021, 19:10
Добавили exist это да, раньше это только дефайнами делалось, но так себе костыль, имхо не нужный.
shiny
Сообщения: 9834 Зарегистрирован: 22 дек 2016, 00:00
Откуда: в Шуе бал
Сообщение
shiny » 11 апр 2021, 21:29
krt17 87115 писал(а): И чё? Нихуа не изменилось, работает как раньше.
работает по-другому. в прежней версии директива работала при использовании call r1 или ld a,(a1). Здесь, похоже, работает при определении метки.
Ненависть- это подарок
krt17
Сообщения: 394 Зарегистрирован: 17 апр 2018, 23:45
Сообщение
krt17 » 11 апр 2021, 22:45
А зачем тогда ты пример с использованием показал?
krt17
Сообщения: 394 Зарегистрирован: 17 апр 2018, 23:45
Сообщение
krt17 » 11 апр 2021, 22:46
И не должна при определении работать, если работает то это косяк
shiny
Сообщения: 9834 Зарегистрирован: 22 дек 2016, 00:00
Откуда: в Шуе бал
Сообщение
shiny » 12 апр 2021, 06:45
почему косяк то?
Ненависть- это подарок