1,626

(7 odpowiedzi, napisanych Sprzęt - 16/32bit)

Nie zwracaj uwagi na artik-wroc'a wynalazek rodem prosto z NASA :) Wg tego co tam widzę to są tam dwie stacje, zasilacz i tony jakichś gniazdek, więc to pewnie dlatego tak to przerażająco wygląda. Wydaje ( słownie: wydaje :D ) mi się że to co opisałeś, czyli zwykły przełącznik na taśmie powinien dać radę. Jedyne co mnie tylko zastanawia, to czy system przechowuje gdzieś dane odnośnie jakichś parametrów dyskietki wsuniętej do stacji, bo wtedy jeśli w drugiej stacji będziesz miał trochę "inną" dyskietkę to ta opcja może ( ale nie musi ) nie zadziałać. Trzeba by wymusić zmianę dyskietki, co chyba nawet jakaś funkcja TOSowa robi jednym wywołaniem. Ale moje ostatnie dwa zdania to tylko coś co mi się wydaje :D Jakoś tak mi się kojarzy że o czymś takim czytałem kilkanaście lat temu, a jak wiadomo czas i wóda mają duży wpływ na pamięć ;)

1,627

(60 odpowiedzi, napisanych Programowanie - 16/32bit)

To nie tutorial periheliona :) On jest dobry, akurat backup i odzyskanie ( w złym miejscu ) adresu vbl'a dodałem ja :D
Dziękiiiiiiiii za pomoc miszczu, działaaaa :)
No i oczywiście nie trzeba dodawać swojej procedurę do defaultowej kolejki vbl. Wczoraj w Intern ST wyczytałem co w tej kolejce jest i tak naprawdę przydatne jest wyświetlanie kursora ( reszta to tak jak wcześniej pisałem, "bzdury" ), czyli tak naprawdę przydaje się to jak się pisze coś GEMowego :P

Raczej mu miłość do Atari ST minęłą :D

http://allegro.pl/2-uklady-scalone-syst … 71907.html

YERZMYEY/HOOY-PROGRAM napisał/a:

Dysosnans poznawczy następuje jedynie w wyniku długiej przerwy w rozwoju urządzenia

Pięknie to ująłeś :)

1,630

(9 odpowiedzi, napisanych Scena - 16/32bit)

YERZMYEY/HOOY-PROGRAM napisał/a:

Podpisane jest STE, ale dla ciekawości sprawdzę to, jak mi Pan Zaxon wrzuci 4Mb do STków.

Nie masz co sprawdzać, napisane jest wyraźnie: "heavy use of blitter" :P
Albo w sumie sprawdź, będziesz kolejnym który potrafi uruchamiać dema STE na ST :D

1,631

(9 odpowiedzi, napisanych Scena - 16/32bit)

Bo saulot umie uruchamiać dema z STE na ST :]]]]]]

1,632

(60 odpowiedzi, napisanych Programowanie - 16/32bit)

sqward napisał/a:

J
Pozatym problemów może być masa w innych miejscach. Taka zgadywanka jest trochę bezpłodna. Może poprostu zamieść cały kod...

To jest właśnie cały kod :) Uszczupliłem go do minimum, tak aby było wyświetlenie obrazka i podmiana vbl'a
Tzn, brakuje jeszcze init'a. Ale jak pisałem wcześniej. Jest z tutoriala perihelion'a + moje ze cztery linijki.
Wygląda tak:

init    
* set supervisor
    clr.l    -(a7)            clear stack
    move.w    #32,-(a7)        prepare for user mode
    trap    #1            call gemdos
    addq.l    #6,a7            clean up stack
    move.l    d0,old_stack        backup old stack pointer
* end set supervisor

* save the old palette; old_palette
    move.l    #old_palette,a0        put backup address in a0
    movem.l    $ffff8240,d0-d7        all palettes in d0-d7
    movem.l    d0-d7,(a0)        move data into old_palette
* end palette save

* saves the old screen adress
    move.w    #2,-(a7)        get physbase
    trap    #14
    addq.l    #2,a7
    move.l    d0,old_screen        save old screen address
* end screen save

* save the old resolution into old_resolution
* and change resolution to low (0)
    move.w    #4,-(a7)        get resolution
    trap    #14
    addq.l    #2,a7
    move.w    d0,old_resolution    save resolution
    
    move.w    #0,-(a7)        low resolution
    move.l    #-1,-(a7)        keep physbase
    move.l    #-1,-(a7)        keep logbase
    move.w    #5,-(a7)        change screen
    trap    #14
    add.l    #12,a7
* end resolution save    
    
    move.l    $70,old_vbl

    rts

init_nores    
* set supervisor
    clr.l    -(a7)            clear stack
    move.w    #32,-(a7)        prepare for user mode
    trap    #1            call gemdos
    addq.l    #6,a7            clean up stack
    move.l    d0,old_stack        backup old stack pointer
* end set supervisor

* save the old palette; old_palette
    move.l    #old_palette,a0        put backup address in a0
    movem.l    $ffff8240,d0-d7        all palettes in d0-d7
    movem.l    d0-d7,(a0)        move data into old_palette
* end palette save

* saves the old screen adress
    move.w    #2,-(a7)        get physbase
    trap    #14
    addq.l    #2,a7
    move.l    d0,old_screen        save old screen address
* end screen save

* save the old resolution into old_resolution
* and change resolution to low (0)
    move.w    #4,-(a7)        get resolution
    trap    #14
    addq.l    #2,a7
    move.w    d0,old_resolution    save resolution
    
;    move.w    #0,-(a7)        low resolution
;    move.l    #-1,-(a7)        keep physbase
;    move.l    #-1,-(a7)        keep logbase
;    move.w    #5,-(a7)        change screen
;    trap    #14
;    add.l    #12,a7
* end resolution save    
    
    move.l    $70,old_vbl

    rts


restore    
* restores the old resolution and screen adress
    move.w    old_resolution,d0    res in d0
    move.w    d0,-(a7)        push resolution
    move.l    old_screen,d0        screen in d0
    move.l    d0,-(a7)        push physbase
    move.l    d0,-(a7)        push logbase
    move.w    #5,-(a7)        change screen
    trap    #14
    add.l    #12,a7
* end resolution and screen adress restore

* restores the old palette
    move.l    #old_palette,a0        palette pointer in a0
    movem.l    (a0),d0-d7        move palette data
    movem.l    d0-d7,$ffff8240        smack palette in
* end palette restore

    move.l    old_vbl,$70

* set user mode again
    move.l    old_stack,-(a7)        restore old stack pointer
    move.w    #32,-(a7)        back to user mode
    trap    #1            call gemdos
    addq.l    #6,a7            clear stack
* end set user
    
    rts
    

old_resolution    dc.w    0

old_stack    dc.l    0

old_screen    dc.l    0

old_vbl    dc.l    0

    section bss

old_palette    ds.l    8
    
saulot napisał/a:

ale co to za filozofia?

Ablolutnie żadna. Ale jak się tego nie robiło, a tylko o tym czytało i to z 15 lat temu, to trzeba znaleźć gdzieś te wszystkie adresy. Ale skoro już podałeś to dzięki :)

1,633

(60 odpowiedzi, napisanych Programowanie - 16/32bit)

Ale coś tak przez mgłę kojarzę że z milion lat temu czytałem gdzieś o tym co tam się dzieje w kolejce VBLa, i jakoś tak mi się pamięta, że tam nic absolutnie ciekawego nie było. Do tego, nawet w trylionie tutoriali walających się, nigdy, ale to absolutnie nigdy nie widziałem przykładu podpinania się do kolejki. Wszyscy uwalali oryginalnego, a przywracali przy wyjściu. Cóż, jeszcze powalczę i jak nic nie zadziała, to będę szukał tutoriala jak się podpiąć do kolejki :D

1,634

(60 odpowiedzi, napisanych Programowanie - 16/32bit)

Widziałeś kiedykolwiek kawałek kodu który używając VBLa dopisuje się do listy procedur wywoływanych w "default"owym VBLu? Ja nigdy :) Ale cóż, spróbuję, tylko o matko, nigdy tak nie robiłem. Muszę przewalić trochę literatury jak to się robi.

1,635

(60 odpowiedzi, napisanych Programowanie - 16/32bit)

sqward: zwiecha, jedyny ratunek reset steem'a
adamk: pytanie już padło :)

1,636

(60 odpowiedzi, napisanych Programowanie - 16/32bit)

Tak, bo jakbym nie wszedł w supervisora to wybombił ( a nie zawiesił ) by mi się już w trzeciej linijce: movem.l    d0-d7,$ff8240
:P

1,637

(60 odpowiedzi, napisanych Programowanie - 16/32bit)

saulot napisał/a:

jury: to spróbuj wwalić tam jakiegoś nop'a, wrzucić słowo even przed VBL

Nie pomogło :(

saulot napisał/a:

odpal zamiast monsta np. adebug. monst daje ciała czasami.

To chyba i tak nie ma sensu, bo skoro mi się zawiesza, to będzie się zawieszać niezależnie od debuggera.  A swoją drogą i tak szukam jakiegoś ciekawszego debuggera więc obadam tego adebug'a :)

1,638

(60 odpowiedzi, napisanych Programowanie - 16/32bit)

OK, za mało danych dałem chyba :)
W init i restore mam oczywiscie zapamietanie i odzyskanie oryginalnego vbl'a.
Zawartość zaprzykładowego przezemnie vbl'a nie ma znaczenia. Tak dla jaj :) aby coś było wpisałem to move.l d0,d1 :)
To niech moja vbl'ka wygląda tak:
vbl
rte
A problem mam taki że jak debuguję to coś to już w momencie move.l #vbl,$70 emulator się zawiesza.

A co do tego:

Adam Klobukowski napisał/a:

Po pierwsze primo, dałbyś chyba radę z jednym incbinem.

Tak, wiem. Ale robię scroll'a poziomego i za chwilę pojawi się jeszcze 8 incbin'ow i kazdy będzie inny. To tylko przyklad. Skupmy się na tym ze się zawiesza w momencie move.l #vbl,$70 :)

1,639

(60 odpowiedzi, napisanych Programowanie - 16/32bit)

Bawię się tym scrollem dalej i coś mi się wykrzacza po wpisaniu mojego vbl'a pod $70. Ratunku, nie wiem o co mu chodzi, bo już zgłupłem.
Okroiłem wszystko tylko do wyświetlenia PI1 i wrzucenia mojej procedury vbl, która komplenie nic nie robi i nadal lipa.
Wstrętny kod:

           jsr    init

    movem.l    picture1+2,d0-d7
    movem.l    d0-d7,$ff8240

    move.w    #2,-(a7)
    trap    #14
    addq.l    #2,a7

    move.l    d0,a0
    move.l    #picture1+34,a1
    move.l    #picture2+34,a2

    move.l    #199,d0
l1
    move.l    #39,d1
l2    move.l    (a1)+,(a0)+
    dbf    d1,l2
    move.l    #39,d2
l3    move.l    (a2)+,(a0)+
    dbf    d2,l3
    dbf    d0,l1

    move.w    #7,-(a7)
    trap    #1
    addq.l    #2,a7

    move.l    #vbl,$70

    move.w    #7,-(a7)
    trap    #1
    addq.l    #2,a7

    move.b    #0,$ff820f

    move.w    #$777,$ff8240

    jsr    restore

    clr.l    -(a7)
    trap    #1

vbl    
    move.l    d0,d1
    rte

    include    init.s

    section    data

picture1    incbin    demon9.pi1
picture2    incbin    demon9.pi1

adr_ekr    ds.l    1

init.s jest rodem prosto z tutoriala perihelion'a

1,640

(28 odpowiedzi, napisanych Bałagan)

A mi się tam podobają te loga :) Są inne od tych ślicznych, wypucowanych i idealnych  pod każdym względem tworów potentatów światowych.

1,641

(1 odpowiedzi, napisanych Software, Gry - 16/32bit)

Kurka, a mój sprzęt w rozsypce :( Mam nadzieję chwilowo.

No i prawidłowo, a jeszcze jakbyś się mocniej wczytał :) to byś odnalazł odpowiedź dlaczego nie ma. Podpowiedź: bo nie powstało :P

1,643

(60 odpowiedzi, napisanych Programowanie - 16/32bit)

sqward napisał/a:

jury: to zależy. ja w pracy widzę, że jest grupa koderów (manageró), którzy odwalają wszystko po najmniejszej linii oporu. I nawet nie mówie tutaj o stronie wizualnej projektów, tylko o np. nie hackowanie wszystkiego w taki sposób, że następny projekt trezeba pisać od zera. Ciekawe jest to, że to właśnie ludzie, którzy pisali gry na amigę i ST. Poprostu wtedy się tak pisało.


Z tym to nawet nie będę polemizował, bo to wszystko oczywiście zależy od poszczególnego egzemplarza kodera :)
Więc są i tacy ( niestety chyba nie w mniejszości ) którzy zawsze idą po najmniejszej linii oporu niezależnie od wszystkiego. Natomiast w momencie tworzenia projektu metodą "get the shit done FAST" wszyscy w zespole muszą zapierniczać jak odrzutowce przez co zazwyczaj projekt traci na wartości. A "get the shit done FAST" zawsze i wyłącznie narzuca manadżeria a nie ostatnie pionki które projekt wykonują, czyli w tym przypadku koderzy.

zaxon napisał/a:

Hmm? ja u siebie do netu ostatnio nawet zx48 podpialem, nie wiedzialem ze w PL dalej jest jak jest,

Bo nie jest :) Jak Kroll napisał, to zależy od dostawcy i chyba ci którzy tak robią są na wymarciu. Spokojnie, sieć w PL się powoli już ucywilizowała :)

Zgłosić adres MAC z NetUSBee do dostawcy internetu :]

1,646

(60 odpowiedzi, napisanych Programowanie - 16/32bit)

Jeśli faktycznie świat gamedev wyznaje zasadę "get the shit done FAST" to badziewne konwersje nie są winą koderów tylko kierowników projektów i manadżerii która zmusza do takiej pośpiechu. Wtedy nie ma czasu na dopieszczanie, tylko robi się po najmniejszej linii oporu, ale faktycznie, najlepiej zwalić wszystko na koderów :P

1,647

(13 odpowiedzi, napisanych Kupię / Sprzedam / Zamienię Atari)

artik-wroc napisał/a:

można podsumować trzema liczbami: 4 (dyski), 2 (przejściówki), 0(efektów)

:)
Jest szansa że właśnie 4GB mam, coś mi się takiego kojarzy. Tyle że przed weekend'em nic mnie nie zmusi do zejścia do katakumb by sprawdzić :D Jeśli do weekendu nikt się nie zgłosi to postaram się tam zejść i poszukać. W razie czego się przypominaj.

1,648

(60 odpowiedzi, napisanych Programowanie - 16/32bit)

Ha, pobawiłem się tym hardware scroll'em i przyznaję że jest cholernie prosty i efektowny. Ech, szkoda że w "tamtych" czasach góra 5 gier go wykorzystywała. Można było przeca robić gry które by wykrywały czy jest STE i jeśli tak to scrollowały płynnnie, a pozostałym STx'om zostałby dziadowski scroll procesorem :D

tralala :)

Kroll napisał/a:

Tak pytam sie na przyszlosc a jak pozniej w takim wypadku ustala sie adresy i itp to pozwoliloby takze poprzez siec ustawic ftp na pececie i sciagac z niego wszystko co sie da ?

Jak tak działam. Do routera mam wpięte PC i Falcona. Co się da to bezpośrednio drę z sieci przez highwire, a co się nie da to najpierw na PC i z PC FTPem na Falcona.