1 Ostatnio edytowany przez Cyprian (2023-01-02 17:25:14)

może czegoś nie rozumiem ale w zależności czy pierwszy zagnieżdżony ".rept" ("Pasek 0") jest wykomentowany czy nie, to drugi ".rept" ("Pasek 1") ma inną ilość powtórzeń, a "#" zwraca inną wartość:


Po prawej "testAB", po lewej "testB"
http://www.atari.org.pl/forum/misc.php?action=pun_attachment&item=10064

Post's attachments

MAD_bug.png 9.69 kb, nikt jeszcze nie pobierał tego pliku. 

MAD_bug.zip 1.44 kb, liczba pobrań: 3 (od 2023-01-02) 

Tylko zalogowani mogą pobierać załączniki.
Atari: V4sa TT030 Falcon030 Mega ST Mega STe 1040 STe 520 STm 800XL 65XE Jaguar Lynx I/II 7800 Portfolio / VME: ATW800/2 Mach64 Mach32 ET4000 CrazyDots PAMNet / SM146 SC1435 SM124 / Antonia2 ATSpeedC16 TF536 PAK68/3
Megafile30 Atari1050 DDDHDD XCA12 SF314 / AVGCART SUBCART SidecarTridge ACSI2STM FujiNet LynxMultiCard SkunkBoard CosmosEx SatanDisk UltraSatan USBFloppyDriveEmulator SDrive SIO2PC Eiffel
http://260ste.atari.org

2 Ostatnio edytowany przez pajero (2023-01-02 21:03:12)

Nigdy nie testowałem .rept 1   :D

Jak przekazywać dane miedzy .rept w zagnieżdżeniach ?  Otóż:

***** ERROR

.rept 5,# ;licznik nr 1 i dana nr1

   .rept 3,# ;licznik nr 2, dana nr2

       lda #:1   ;to będzie dana nr1 czy nr2 ?    będzie to dana nr2  :(

    .endr   
.endr   


***** OK

.rept 5,# ;licznik nr 1 i dana nr1

?dana1 = :1

   .rept 3,?dana1,# ;licznik nr 2, dana nr1,dana nr2

       lda #:1   ;to będzie dana nr1
       ldx #:2   ;to będzie dana nr2

       .print :1," - ",:2  ;to mocno ułatwia debugowanie

    .endr   
.endr

3

o widzisz, fajny patent z przekazywaniem parametrów do ".rept".


Jeśli chodzi o mój problem z ".rept" to się rozwiązał. Okazało się że miałem wersję 2.1.0 która miała buga. Pobrałem 2.1.5 i jest ok.

W 2.1.0 drugi zagnieżdżony ".rept" był pomijany:

.rept 3

    .rept 2
        .print "1 ", #
    .endr   
    
    .rept 2
        .print "2 ", #
    .endr
.endr
* Mad-Assembler-2.1.0 ATARI XL *
********************************
1 $0000
1 $0001
1 $0000
1 $0001
1 $0000
1 $0001
1 $0000
1 $0001
1 $0000
1 $0001
1 $0000
1 $0001
Writing listing file...
* Mad Assembler 2.1.5 ATARI XL *
********************************
1 $0000
1 $0001
2 $0000
2 $0001
1 $0000
1 $0001
2 $0000
2 $0001
1 $0000
1 $0001
2 $0000
2 $0001
Atari: V4sa TT030 Falcon030 Mega ST Mega STe 1040 STe 520 STm 800XL 65XE Jaguar Lynx I/II 7800 Portfolio / VME: ATW800/2 Mach64 Mach32 ET4000 CrazyDots PAMNet / SM146 SC1435 SM124 / Antonia2 ATSpeedC16 TF536 PAK68/3
Megafile30 Atari1050 DDDHDD XCA12 SF314 / AVGCART SUBCART SidecarTridge ACSI2STM FujiNet LynxMultiCard SkunkBoard CosmosEx SatanDisk UltraSatan USBFloppyDriveEmulator SDrive SIO2PC Eiffel
http://260ste.atari.org