atarionline.pl Display List w ATASM - Forum Atarum

Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.

  • :
  • :

Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.

    • 1: CommentAuthor_pepis
    • CommentTime31 Dec 2010 zmieniony
     
    Witajcie miłośnicy Atari.

    Usilnie staram się assemblerować. Używam platformy ATASM+ECLIPSE+Plugin. Studiując tony książek napotkałem na ten program... Wkleiłem go do edytora i uruchomiłem na EMU. Rozumiem każdy człon programu, każdy rozkaz i całość jest dla mnie logiczna. Ale program nie działa, ekran jest czarny i nic nie widać... Dlaczego?

    Dziękuje za pomoc i pozdrawiam, życząc Atarowego Nowego Roku!


    *=$600
    JMP INIT

    ;
    SDMCTL=$022F
    ;
    SDLSTL=$0230
    SDLSTH=$0231
    ;
    COLOR0=$02C4; OS COLOR REGISTERS
    COLOR1=$02C5
    COLOR2=$02C6
    COLOR3=$02C7
    COLOR4=$02C8
    ;
    ;DISPLAY LIST DATA
    ;
    START
    ;
    LINE1 .SBYTE " PRESENTING "
    LINE2 .SBYTE " the big program "
    LINE3 .SBYTE " By (your name) "
    ;
    LINE4 .SBYTE " PLEASE STAND BY "

    HLIST
    .BYTE $70,$70,$70; 3 BLANK LINES
    .BYTE $70, $70, $70, $70,$70; MORE BLANK LINES
    .BYTE $46; LSM, ANTIC MODE 6 (BASIC MODE 2)
    .WORD LINE1; (TEXT LINE: "PRESENTING...")
    .BYTE $70,$70,$70,$70,$47; LMS, ANTIC MODE 7
    .WORD LINE2; (TEXT LINE: "THE BIG PROGRAM")
    .BYTE $70,$42; (LMS, ANTIC MODE 2 [GR.0])
    .WORD LINE3;(TEXT LINE: "By [Your Name]")
    .BYTE $70,$70,$70,$70,$46;LMS, ANTIC MODE 6
    .WORD LINE4; (TEXT LINE: "PLEASE STAND BY")
    .BYTE $70,$70,$70,$70,$70; 5 BLANK LINES
    .BYTE $41; JVB INSTRUCTION
    .WORD HLIST; TO JUMP BACK TO START OF LIST

    INIT
    LDA COLOR3
    STA COLOR1
    LDA COLOR4
    STA COLOR2
    ; NOW WE'LL RUN THE PROGRAM


    LDA HLIST; WHILE WE STORE OUR NEW LIST'S ADDRESS
    STA SDLSTL; IN THE OS DISPLAY POINTER.
    LDA HLIST/256; NOW FOR THE HIGH BYTE.
    STA SDLSTH; NOW ANTIC WILL KNOW OUR NEW ADDRESS

    RTS
    • 2: CommentAuthorgorgh
    • CommentTime31 Dec 2010 zmieniony
     
    musisz jeszcze załadować adres programu do słowa $2e0 za pomocą *=$2e0/ .Word $600
    • 3: CommentAuthor_pepis
    • CommentTime31 Dec 2010
     
    A gdzie to dopisać i co dokładnie?
    • 4: CommentAuthorgorgh
    • CommentTime31 Dec 2010
     
    na początku lub na końcu programu wstaw to co dopisałem powyżej (post zmieniłem)
    • 5: CommentAuthor_pepis
    • CommentTime31 Dec 2010
     
    Nie przynosi do skutku. Program dalej nie działa... Uruchamiam z xexa prosto z eclipse-a pod emu...
    • 6: CommentAuthorgorgh
    • CommentTime31 Dec 2010
     
    LDA HLIST; WHILE WE STORE OUR NEW LIST'S ADDRESS
    STA SDLSTL; IN THE OS DISPLAY POINTER.
    LDA HLIST/256; NOW FOR THE HIGH BYTE.
    STA SDLSTH; NOW ANTIC WILL KNOW OUR NEW ADDRESS

    jakoś tego nie rozumiem, może spróbuj
    lda <hlist
    sta sdlstl
    lda >hlist
    sta sdlsth

    Przede wszystkim przestudiuj instrukcje do tego kompilatora i jakiś kurs asm, inaczej ciągle będziesz miał jakieś błędy.
    • 7: CommentAuthortebe
    • CommentTime31 Dec 2010
     
    w ATASM pewnie

    lda #<adres
    lda #>adres


    bo składnie bez hash-a wypromował szerzej Wiśniewski poprzez Quick Assembler
    • 8: CommentAuthor_pepis
    • CommentTime1 Jan 2011
     
    O właśnie w tym tkwił problem, tebe dzięki! Gorgh dzięki też, ale napisałem ci że jestem obładowany pdfami z różniastymi instrukcjami i książkami...
    • 9:
       
      CommentAuthorKaz
    • CommentTime27 Apr 2011
     
    No ja juz sie nie moge doczekac tej komnatowki Pepisa :)