876

(259 odpowiedzi, napisanych Fabryka - 8bit)

xxl napisał/a:

estowo funkcja blittera - zapisanie calego ekranu gr.8 czyli 320x192 pixele stala wartoscia to 193 cykle 6502...

pixele czy całe bajty ?

193 cykle 6502 zajmuje bliterrowi postawienie 320x192 = 61440 pikseli czy postawienie 7680 bajtów odpowiadających tym pikselom ?

877

(259 odpowiedzi, napisanych Fabryka - 8bit)

co w takim razie daje takie przyspieszenie, bo jak wkładam np. kart AtariMax to nie mam przyspieszenia

standardowy kart z nie standardową zawartością ?

konkretniej, bo jak ma być to zgaduj zgadula to równie dobrze może to być kogel mogel

878

(125 odpowiedzi, napisanych Fabryka - 8bit)

bloki co $400 bajtów

 opt h+
 org $4000

 .pages $40

  .align $400

  kod.............

 .align $400

  kod .............

 ...
 ...
 ...

 .endpg

własny nagłówek $ffff,start,end-1+3   (3 bajty napisu 'XXL'), można dać dowolne informacje, należy prawidłowo podać nagłówek w stylu Atari DOS jeśli ma być to ładowane przez Atari DOS, jeśli mamy własny loader możemy postąpić wg uznania

    opt h-
    org $4000

.local    block0
    org [a($ffff, block0, block0+.len(block0)-1+3), c'XXL'],*
    
    lda #0
.endl

    org $4400

.local    block1
    org [a($ffff, block1, block1+.len(block1)-1+3), c'XXL'],*

    nop

.endl

879

(11 odpowiedzi, napisanych Software, Gry - 8bit)

masz na myśli te gry dla dzieci we flashu itp. na onecie, ubieranki są ulubionym zajęciem poza oglądaniem bajek

880

(125 odpowiedzi, napisanych Fabryka - 8bit)

wystarczy usunąć znak #

  lda <(LINES-1)*40

i będzie OK, jest to zgodne z konwencją QA

881

(644 odpowiedzi, napisanych Programowanie - 8 bit)

nazwy nielegali podpatrywałem w Atari800Win, stąd Mads ich używa, można wstawić dodatkowe nazwy mnemoników jako alternatywę

882

(22 odpowiedzi, napisanych Zloty)

prezentacja prac będzie w 3d czy 2d ? bo teraz 3d jest w modzie, może Pinek dokona konwersji do 3d :D

883

(24 odpowiedzi, napisanych Software, Gry - 8bit)

Super Packer też może pomóc

884

(4 odpowiedzi, napisanych Miejsca w sieci)

ostatnio coś podobnego udało mi się uzyskać w Notepad++ który jest lżejszy aniżeli Visual Studio czy WUDSN

plugin Explorer z lewej i plugin FunctionList z prawej

plugin Explorer można zassać przy pomocy wbudowanego menadżera, FunctionList nie jest na tej liście z powodu problematyczności, w załączniku ZIP z plikami i instrukcją instalacji, osobno DLL który jest stabilny

dodatkowo FunctionListRules.xml dla MADS-a, pokazuje listę dla .PROC, .LOCAL, .MACRO, .ENUM, .STRUCT

885

(125 odpowiedzi, napisanych Fabryka - 8bit)

nowy mads 1.9.4 już jest http://mads.atari8.info

najważniejsza zmiana to możliwość nazywania parametrów makr, czyli większa przejrzystość kodu, łatwiej zrozumieć co makro wyczynia z parametrami

.macro SetColor val,reg
 lda :val
 sta :reg
.endm

.macro SetColor2 (arg1, arg2)
 lda #:arg1
 sta arg2
.endm

p.s.
w planach napisanie nowego kodu obsługującego pętle .REPT tak aby można było je zagnieżdżać, aktualnie aby to obejść trzeba posiłkować się makrami

886

(73 odpowiedzi, napisanych Fabryka - 8bit)

a dlaczego nie działa z komputerem Pinokia ?

887

(125 odpowiedzi, napisanych Fabryka - 8bit)

może dodam jeszcze dla Tych którzy są oburzeni potrzebą użycia znaku $ dla oznaczenia wartości Hex jest alternatywa, mogą użyć 0x, Candle z lubością tego używa

dla Tych którzy są oburzeni potrzebą kończenia bloku .LOCAL czy innego podobnego tworu odpowiednią dyrektywą .ENDL mogą użyć uniwersalnej wersji i o jeden znak krótszej .END

mogą także użyć klamr znanych z C { }, byle tylko te klamry były w osobnych wierszach

.local name
{
 nop 
 nop
}

czyli dla każdego coś miłego ;)

888

(125 odpowiedzi, napisanych Fabryka - 8bit)

pajero napisał/a:

Oj, prze-kombi-nujecie zaraz.
Proszę wrócić do starych zasad, "LDX #0 cośtam"  bo mi wali błędami.


Inne:
Moja sugestia - plik *.lab generuje etykiety UPCASE - proszę zrobić jak w orginale *.ASM.

Czyli, piszę:

           ORG $1730
Etykieta LDX #

to plik LAB  robi
00    1730    ETYKIETA

a winien wypluć
00    1730    Etykieta

od tego jest przełącznik -c Label case sensitivity

użyj go a będziesz miał w pliku LAB etykiety w takiej postaci jak zapisałeś, tylko miej na uwadze to że

Etykieta
etykieta

to dwie różne etykiety

889

(125 odpowiedzi, napisanych Fabryka - 8bit)

mono napisał/a:

Hmmm. A co myślicie o czymś takim:?

lda #
ldx #
ldy #

Co powinno się zdarzyć?

zdarzy się ZERO

lda #0
ldx #0
ldy #0

890

(125 odpowiedzi, napisanych Fabryka - 8bit)

w załączniku mads po poprawce, tzn.

jeśli użyjemy łączenia mnemoników poprzez znak ':' będzie po staremu czyli w stylu QA, XASM

jeśli nie będzie łączenia mnemoników znakiem ':' to pojawi się błąd "Extra character in line"

 ldx:dex $00   -> OK
 dex $00         -> ERROR

p.s.
a może tak nauczyć edytor kontroli składni

891

(125 odpowiedzi, napisanych Fabryka - 8bit)

nie można tego traktować jako błąd, jeśli zostanie to zablokowane przestanie działać kod typu

    ldx:dex $00

892

(161 odpowiedzi, napisanych Fabryka - 8bit)

bracia Wiśniewscy, Probe i spółka, przecież Probe wcześniej na konkurs Abbuca wystawiał już Rick-a  tyle że w wersji mocno okrojonej wizualnie

893

(161 odpowiedzi, napisanych Fabryka - 8bit)

Ja pomogę, w załączniku wszystko co mam na temat Rick-a, m.in. mapy leveli 1 i 2

894

(11 odpowiedzi, napisanych Scena - 8bit)

w paczce z mads-em jest mandelbrot

895

(4 odpowiedzi, napisanych Miejsca w sieci)

superaśna :)

896

(4 odpowiedzi, napisanych Programowanie - 8 bit)

zapisz w G2F GED-- i co 8 linię masz LMS-a (poniżej z etykietą LINE7)

dla ekranu 40byte:

line6    jsr wait54cycle
    inc byt2

line7    jsr wait54cycle
    cmp byt2

dla ekranu 32byte:

line6    jsr wait60cycle
    pha:pla

line7    jsr wait60cycle
    inc byt2

897

(69 odpowiedzi, napisanych Sprzęt - 8bit)

co oznacza wersja rdzenia 1.24 14Mhz (V1FX124R)

dla tego rdzenia mam dziwne zachowania, po RESECIE obraz przechodzi w tryb GTIA, tak jakby dla GRAPHICS 0 ktoś ustawiał $D01B na $80 czy coś

w QMEG jak i pod SDX

nie za każdym razem zdarza się taka sytuacja, ale zbyt często aby o niej zapomnieć

898

(1,754 odpowiedzi, napisanych Fabryka - 8bit)

ogólnie sprawa sprowadza się do tego jedynego przypadku kiedy loader pomyli się, bo zinterpretuje adres nowego bloku $FFFF jako nagłówek bloku, przez co pominie dwa bajty

 org $2000
 nop

 org $FFFF
 clc

FF FF 00 20 00 20 EA FF FF FF FF 18

żaden inny adres oprócz $FFFF nie spowoduje tego zamieszania

p.s.
QA, Xasm zapiszą w/w przykład tak samo

899

(1,754 odpowiedzi, napisanych Fabryka - 8bit)

nagłówek $FFFF jest tylko na początku pliku, aby można było stwierdzić czy to jest plik wykonywalny AtariDOS, kolejne bloki nie muszą ich posiadać ponieważ UWAGA !!!   pliki AtariDOS-a nie dysponują innymi blokami niż $FF $FF

SDX posiada bloki inne niż $FF $FF i dla plików SDX są generowane nagłówki

jeśli XXL uważasz że zapisywanie nadmiarowej informacji jest niezbędna będziesz musiał spędzić mnóstwo czasu nad poprawianiem tysięcy plików wygenerowanych od początku historii Atari-DOS

jeśli ktoś łączył pliki Atari-DOS przy pomocy jakiegoś APPEND-era to faktycznie nadmiarowe $FF $FF mogą się pojawić, dlatego loader plików DOS-a powinien uwzględniać taką sytuację

ktoś tu chce odkryć Amerykę po raz miliard sześćsetny ?

900

(1,754 odpowiedzi, napisanych Fabryka - 8bit)

dyskietke formatujecie DOS-em, nagrywacie pliki etc. potem odpalacie program który przy pomocy bibliotek xbios realizuje odczyt i zapis bez udziału DOS-u, dostajecie całą przestrzeń pamięci

np. SID ładuje się od adresu $700, nie ma sprawy bo loader umieścimy poza tym obszarem i ładujemy

odczyt/zapis to dwie operacje najczęściej potrzebne, reszta bajerów DOS zajmuje tylko pamięć

chciałbym dodać odczyt plików do Panga, odczyt leveli, tekstur, zapis hi-score (plik hi score ma stały rozmiar, np. 10 wpisów), obszar $0700-$2000 jest wykorzystywany przez grę, co mam zrobić

zapisać obszar pamięci DOS-a $0700-$2000 do dodatkowej pamięci, potem podmieniać ten obszar, włączać OS, inicjować pozostałe komórki?  ale jest XBIOS, więc będzie łatwiej i szybciej