Blame | Last modification | View Log | Download
# file opened: relocation_vs_disp.asm1 0000 ORG $10002 10003 1000 RELOCATE_START4 10005 1000 04 00 dw relocate_count6 1002 08 00 dw relocate_size7 10048 1004 label1:9 1004 CD 04 10 call label110 100711 1007 DISP $200012 2000 C3 04 10 jp label1 ; should relocate but at the $100x address ($1008)13 2003relocation_vs_disp.asm(14): error: End the current DISP block first14 2003 RELOCATE_END ; error (inner-DISP is still open)15 2003relocation_vs_disp.asm(16): warning: [DISP] displacement inside another displacement block, ignoring it.16 2003 DISP $3000 ; DISP inside DISP, will get ignored17 2003 ENT ; end the inner-DISP18 100A RELOCATE_END ; end first relocation block19 100A20 100A DISP $3000 ; outer-DISP21 3000 00 nop22 3001 label2:23 3001 CD 01 30 call label224 3004 RELOCATE_START25 3004 CD 14 10 call label3 ; should relocate at $300x address ($3005)relocation_vs_disp.asm(26): error: The DISP block did start outside of relocation block, can't end inside it26 3007 ENT ; error - trying to end outer-DISP inside relocation27 3007 RELOCATE_END ; end relocation block28 3007 ENT ; end outer-block29 101130 1011 RELOCATE_START31 1011 CD 01 30 call label232 1014 label3:33 1014 CD 14 10 call label3 ; classic relocation34 1017 RELOCATE_END35 101736 1017 05 10 08 10 RELOCATE_TABLE36 101B 05 30 15 1037 101F38 101F ASSERT 2*relocate_count == relocate_size39 101F ASSERT 4 == relocate_count40 101F ASSERT 2 == 241 101F ASSERT 1 == 142 101F# file closed: relocation_vs_disp.asmValue Label------ - -----------------------------------------------------------0x1004 label10x3001 label20x1014 label30x0004 relocate_count0x0008 relocate_size