1

Короче, код такой:

    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. Хотя по идее, должно казать адрес.
чо за фигня?

Ненависть- это подарок

2

дак ты ее и не юзед

3

ну да, конечно

    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
Ненависть- это подарок

4

Нипонел, ты разобрался?

5

нед(

Ненависть- это подарок

6

https://zxdemos.ru/uploads/images/1065/8d83f917daec2b466cc0c80825855c08.png

Все заебись с твоим кодом

7

Если обьявлена это хуйня, надо к ней обратиться как во втором примере. А так все работало всегда

8

Ну да, меня это и смутило - пример с nbde работает, а с page0 нет.
смысл в том, чтобы влегкую написать загрузчик. т.е., если объявлены page0,page1,page3,page4, то использовать директивы IFUSED и при загрузке и при создании TRD

Ненависть- это подарок

9

сделай display c ними тогда сработает, наверное ну или какую другую неважную хрень
А вообще такие штуки define делаются, посмотри мож тебе удобнее будет

10

Кулибины, блядь - пилят ужасм до посинения.

huj equ page0b

теперь работает. Спасибо за подсказку

Ненависть- это подарок

11

а хер там. если page0b не задана, то не катит.

Ненависть- это подарок

12

    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
    
Ненависть- это подарок

13

    device zxspectrum128
    ORG #6000
begin
    jr  $
    define page0b
;----------------------
    ifdef page0b
    display "win"
    else
    display "failed"
    endif
;----------------------
    savesna "!void.sna",begin

так православно

14

это глупо. page0b задана для страницы. Похоже, что удобнее использовать DEFINE.
Но, бля, критерий IFUSED ебанутый, если я правильно понял.

Ненависть- это подарок

15

не, ифузед заябись, просто не для этого, у тебя второй пример прям каноничный

16

только с документаций не совпадает. IFUSED прринимает значение true, если к метке было обращение - CALL или LD A,()

неправильно это.

Ненависть- это подарок

17

    device zxspectrum128
    ORG #6000
begin
    jr  $
hui equ wtf
;----------------------
    ifused wtf
wtf equ 1
    display "win"
    else
    display "failed"
    endif
;----------------------
    savesna "!void.sna",begin

суяли, все работает и так

18

если page0b не задано, то компеляция валится.

Ненависть- это подарок

19

Ясное дело, яж говорю, оно не совсем для этого. Но то что должно делать делает правильно

20

Ага, теперь понел. Все же с 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
Ненависть- это подарок

21

новый ужасм
http://www.pouet.net/prod.php?which=88704

по тесту пофиксили эту директиву

Ненависть- это подарок

22

Шыншыл сказал:

по тесту

какому тесту? в ней и так все работало

23

смотрю чейжлоги тут https://github.com/z00m128/sjasmplus/releases последний год не было никаких фиксов

24

    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
Ненависть- это подарок

25

И чё? Нихуа не изменилось, работает как раньше.

26

Добавили exist это да, раньше это только дефайнами делалось, но так себе костыль, имхо не нужный.

27

krt17 сказал:

И чё? Нихуа не изменилось, работает как раньше.

работает по-другому. в прежней версии директива работала при использовании call r1 или ld a,(a1). Здесь, похоже, работает при определении метки.

Ненависть- это подарок

28

А зачем тогда ты пример с использованием показал?

29

И не должна при определении работать, если работает то это косяк

30

почему косяк то?

Ненависть- это подарок