atarionline.pl "Bajtek" - nowe wydania! - 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:
       
      CommentAuthorbocianu
    • CommentTime1 Mar 2021 zmieniony
     
    @mono: bo to tryb 10++, gdzie możemy regulować sobie wysokość piksela. Tutaj wysokość piksela ustawiłem na 3 linie ekranowe i tak jakoś mi sie 70 ładnie mieściło. Dałoby się upchać jeszcze z 8 w PAL, ale zostawiłem trochę ramki.

    Przy okazji znalazłem błąd w mojej bibliotece gr10pp, która się sypała przy przekraczaniu granicy 4kb. Załatałem i poprawka już dziś została zmergowana do mastera, czyli same plusy z tego offtopica ;)

    Zastanawiam się, kiedy Kaz to posprząta i przeniesie do osobnego wątku w dziale "Kartografia" :D
    • 2:
       
      CommentAuthorKaz
    • CommentTime1 Mar 2021
     
    Przeniósłbym i od razu, bo mnie korci, ale narzędzie, które to robi, kapryśne jest...
    • 3:
       
      CommentAuthorKaz
    • CommentTime2 Mar 2021 zmieniony
     
    No i się nie udało przenieść postów, niektóre się przeniosły, inne odmówiły :(. Jak ktoś dopracuje narzędzie przenoszenia to będziemy działać.

    A na razie mój pomysł z wczoraj (aby "Mapę" zrobić nie tylko w trybach graficznych, ale popróbować kombinacji z trybami znakowymi), który zrealizował niezmordowany Mono w trybie GR.0, GR.1, GR.2, GR.12, GR.13, oczywiście w Atari Basic. Dzięki Mono, bo wiadomo, że pomysły to każdy ma, a wykonać nie każdy umie:

    5 GRAPHICS 0:DIM C$(10):C$=".-+*:=#%&?":POKE 752,1:? CHR$(125);
    10 C=1:X=10:Y=10:K=1:W=39:H=23:N=10:S=PEEK(88)+256*PEEK(89)
    20 POKE S+X+40*Y,ASC(C$(C))-32:P=INT(RND(0)*4)+1:ON P GOTO 30,40,50,60
    30 X=X+K:IF X>W THEN X=INT(RND(0)*W)+1:C=INT(RND(0)*N)+1
    35 GOTO 20
    40 X=X-K:IF X<0 THEN X=INT(RND(0)*W)+1:C=INT(RND(0)*N)+1
    45 GOTO 20
    50 Y=Y+K:IF Y>H THEN Y=INT(RND(0)*H)+1:C=INT(RND(0)*N)+1
    55 GOTO 20
    60 Y=Y-K:IF Y<0 THEN Y=INT(RND(0)*H)+1:C=INT(RND(0)*N)+1
    65 GOTO 20


    5 GRAPHICS 1+16:DIM C$(40):C$=".-+*:=#%&?.-+*:=#%&?.-+*:=#%&?.-+*:=#%&?"
    6 FOR I=11 TO 20:C$(I,I)=CHR$(64+ASC(C$(I,I))):NEXT I
    7 FOR I=21 TO 30:C$(I,I)=CHR$(128+ASC(C$(I,I))):NEXT I
    8 FOR I=31 TO 40:C$(I,I)=CHR$(192+ASC(C$(I,I))):NEXT I
    10 C=1:X=5:Y=5:K=1:W=19:H=23:N=40:S=PEEK(88)+256*PEEK(89)
    20 POKE S+X+20*Y,ASC(C$(C,C))-32:P=INT(RND(0)*4)+1:ON P GOTO 30,40,50,60
    30 X=X+K:IF X>W THEN X=INT(RND(0)*W)+1:C=INT(RND(0)*N)+1
    35 GOTO 20
    40 X=X-K:IF X<0 THEN X=INT(RND(0)*W)+1:C=INT(RND(0)*N)+1
    45 GOTO 20
    50 Y=Y+K:IF Y>H THEN Y=INT(RND(0)*H)+1:C=INT(RND(0)*N)+1
    55 GOTO 20
    60 Y=Y-K:IF Y<0 THEN Y=INT(RND(0)*H)+1:C=INT(RND(0)*N)+1
    65 GOTO 20


    5 GRAPHICS 2+16:DIM C$(40):C$=".-+*:=#%&?.-+*:=#%&?.-+*:=#%&?.-+*:=#%&?"
    6 FOR I=11 TO 20:C$(I,I)=CHR$(64+ASC(C$(I,I))):NEXT I
    7 FOR I=21 TO 30:C$(I,I)=CHR$(128+ASC(C$(I,I))):NEXT I
    8 FOR I=31 TO 40:C$(I,I)=CHR$(192+ASC(C$(I,I))):NEXT I
    10 C=1:X=5:Y=5:K=1:W=19:H=11:N=40:S=PEEK(88)+256*PEEK(89)
    20 POKE S+X+20*Y,ASC(C$(C,C))-32:P=INT(RND(0)*4)+1:ON P GOTO 30,40,50,60
    30 X=X+K:IF X>W THEN X=INT(RND(0)*W)+1:C=INT(RND(0)*N)+1
    35 GOTO 20
    40 X=X-K:IF X<0 THEN X=INT(RND(0)*W)+1:C=INT(RND(0)*N)+1
    45 GOTO 20
    50 Y=Y+K:IF Y>H THEN Y=INT(RND(0)*H)+1:C=INT(RND(0)*N)+1
    55 GOTO 20
    60 Y=Y-K:IF Y<0 THEN Y=INT(RND(0)*H)+1:C=INT(RND(0)*N)+1
    65 GOTO 20


    5 GRAPHICS 12+16:DIM C$(20):C$=".-+*:=#%&?.-+*:=#%&?"
    7 FOR I=11 TO 20:C$(I,I)=CHR$(128+ASC(C$(I,I))):NEXT I
    10 C=1:X=5:Y=5:K=1:W=39:H=23:N=20:S=PEEK(88)+256*PEEK(89)
    20 POKE S+X+40*Y,ASC(C$(C,C))-32:P=INT(RND(0)*4)+1:ON P GOTO 30,40,50,60
    30 X=X+K:IF X>W THEN X=INT(RND(0)*W)+1:C=INT(RND(0)*N)+1
    35 GOTO 20
    40 X=X-K:IF X<0 THEN X=INT(RND(0)*W)+1:C=INT(RND(0)*N)+1
    45 GOTO 20
    50 Y=Y+K:IF Y>H THEN Y=INT(RND(0)*H)+1:C=INT(RND(0)*N)+1
    55 GOTO 20
    60 Y=Y-K:IF Y<0 THEN Y=INT(RND(0)*H)+1:C=INT(RND(0)*N)+1
    65 GOTO 20


    5 GRAPHICS 13+16:DIM C$(20):C$=".-+*:=#%&?.-+*:=#%&?"
    7 FOR I=11 TO 20:C$(I,I)=CHR$(128+ASC(C$(I,I))):NEXT I
    10 C=1:X=5:Y=5:K=1:W=39:H=11:N=20:S=PEEK(88)+256*PEEK(89)
    20 POKE S+X+40*Y,ASC(C$(C,C))-32:P=INT(RND(0)*4)+1:ON P GOTO 30,40,50,60
    30 X=X+K:IF X>W THEN X=INT(RND(0)*W)+1:C=INT(RND(0)*N)+1
    35 GOTO 20
    40 X=X-K:IF X<0 THEN X=INT(RND(0)*W)+1:C=INT(RND(0)*N)+1
    45 GOTO 20
    50 Y=Y+K:IF Y>H THEN Y=INT(RND(0)*H)+1:C=INT(RND(0)*N)+1
    55 GOTO 20
    60 Y=Y-K:IF Y<0 THEN Y=INT(RND(0)*H)+1:C=INT(RND(0)*N)+1
    65 GOTO 20