Mam problem. Chciałem sobie poeksperymentować z paddlesami pod emulatorem.
Emulator Atari800MacX, 5.0.4, to taka trochę nakładka na atari800.
Podpinam analogowy joy usb,piszę progrmamik:

10 ? PTRIG(0),PTRIG(1),PADDLE(0),PADDLE(1):GOTO 10

i mam odczyty z analoga pion/poziom - paddle1/paddle0
ALE. PTRIG0 zwraca 0 jak wychylę w lewo dla PADDLE0>169
a PRTIG1 zwraca zero, jak wychylę w prawo o podobną wartość (centrum jest w 128) Nie umiem przyporządkować przycisków PTRIG do przycisków na padzie. Niby mogę wpisać mapowanie USBJoystickButton 1 -> Joystick Left i 2 dla right, ale to nie działa. (w real sprzęcie PRTIG(0) zwraca zero dla podpiętego joysticka w lewo a, PTRIG(1) zwraca 0 dla podpiętego joysticka przesuniętego w prawo)

Co zrobić aby zadziałało? Czy ktoś mógłby sprawdzić, jak to działa pod Altirrą np?

2

(8 odpowiedzi, napisanych Fabryka - 8bit)

>=$80 używają też bejziki, Actiony, inne takie. Jak są uruchomione.

@Fox, dzięki za głos.
Jak się pisze z głowy - to zamiast NMIEN wpada DMACTL smile

A mógłbyś tak w formie krótkiego artykułu opisać co i jak? Jak widzisz, jest z tym jakiś-tam problem, dużo procków, dużo wszystkiego.
To, że NMIST nie zależy od NMIEN to jest raczej oczywiste z istoty natury rzeczy.
Podejrzewam na 99%, że procka antrykota zadziała na wszystkim i zawsze chyba, że NMI się wstrzeli i skasuje te bity pomiędzy sta a bit. Ale to raz na tysiąc lat.

antrykot napisał/a:
  sta nmires
  bit nmist
  bvc *-3

Jeśli to działa zawsze, to jest to najlepsze rozwiązanie, bo do testu jest użyte to, co zostało zaprojektowane w tym celu.
@mono, co o tym myślisz?

Candle napisał/a:

vcount się zmniejsza?

No... chyba tak raz na vbl?

Chodzi o to, że są jeszcze komputery SECAM, NTSC, PAL, VBXE, z przyspieszeniami etc.
Czy to na wszystkim ma szanse zadziałać? Nie jestem altirowy.

Candle napisał/a:

co będzie dla vcount=0?

Zawiśnie na pierwszym beq, a następnie zaczeka na moment, gdy vcount się zmniejszy (carry się nie wyzeruje). Nie?

Przy każdej zmianie vcount w górę, bcc skoczy, bo carry się zeruje - odejmujemy większą od mniejszej.
Przy zmianie w dół w acc mamy coś dużego, odejmujemy coś małego, 0, 1 czy cuś, carry zostaje ustawione.

Jest procka by Fox:

w1
    lda $d40b
    bmi w1
w2
    lda $d40b
    bpl w2

Ma ona 10 bajtów i nie obsługuje NTSC, działa z DMACTL=0.

Napisałem inną 10 bajtów. Ona obsługuje NTSC (w teorii, bo nie testowałem). Czy jest tu jakiś haczyk? Czy zawsze zadziała?
Opiera się ona na monotoniczności vcount. Działa z DMACTL=0.

rep
    lda vcount
@
    cmp vcount
    beq @-
    bcc rep

8

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

To się przerwanie wyłącza i można bezkarnie wsadzać kartridż smile

9

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

xxl napisał/a:

dobrze zaprojektowany system tablice wektorow trzyma w ram, niestety XL OS do nich nie nalezy

nie przesadzaj, jest to chyba jeden z bardziej elastycznych systemów na 8-bitowce.

Ciekawa jest ta siłowa metoda z podmianką skoku do SIO. Odrzuciłem ją w pierwszej chwili, bo może przypadkowo coś graficznego zamienić, muzycznego i ogólnie jakieś dane. Na szczęście w kodzie takie sytuacje nie występują; tylko w danych.
Niestety, skok do DSKINT skutkuje skokiem do SIOINT w romie, ale można ją okroić i już. Jest już to gdzieś rozwiązane? Czy trzeba sobie napisać?

@mono - jest tak jak piszesz smile Czasem jest jakaś sprytna/niestandardowa metoda. O newdev też myślałem, ale to też rodzi problemy.

10

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

Da się podmienić procedurę SIO bez ruszania romu? Tak, jak można dodać handler urządzenia?

11

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

Ja mam, zobaczę, co się da zrobić.

12

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

Bardzo dzięki za wyczerpujące odpowiedzi. Nie znałem tych właściwości TTL-i, zasilanie prze piny zaobserwowałem w atmedze, więc i tu wypadało by się dopytać. Rozumiem, że w przypadku TTL (hct, act) mogę odciąć zasilanie i będzie działać, ale lepiej odciąć rd5, a zasilania nie, oraz przeanalizować schemat, czy coś się będzie działo, gdy S5 jest nieaktywny.

13

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

Pytanie do elektroników i tych co się znają bardziej ode mnie na kartridżach smile

Chcę zrobić wyłacznik do kartridża. Kiedyś zrobiłem taki do Action! - po prostu odcina VCC (wówczas linia RD5 zawsze jest w stanie niskim) Czy to jest dobre podejście?

Czy może lepiej odcinać RD5 nie odcinając zasilania? Czy oba RD5 i VCC odcinać na raz? Czy jeszcze jest jakiś inny dobry prosty sposób?

14

(6 odpowiedzi, napisanych Fabryka - 8bit)

Cóż, starzejemy się to i takie nazwy na programy... CutAs, MILF, coś jeszcze?

A za progamik dzięki, brakowało takiego.

15

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

1. Sikor x1 (wersja przedprodukcyjna jest ok dla mnie, potem pewnie jeszcze sztukę produkcyjną dobiorę), o ile się łapię wink
2. perinoid x1
3. Drakon x1
4. jhusak x1 - w sumie 1, bo się na aol też zapisałem wcześniej.

16

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

1. Cobol - 1 szt.
2. perinoid - 1 szt.
3. Mono - 2 szt.
4. Pablozp - 1 szt.
5. jhusak - 1 szt.

Patch mono aktualnie pod:
http://mono.i-demo.pl/franny/franny-201 … 12bps.diff

18

(77 odpowiedzi, napisanych Fabryka - 8bit)

tOri napisał/a:

Zamawiając kwarc 28,375152 MHz i o stabilności +/-10ppm a potem podzieliwszy przez 8 na przerzutnikach 74F74 byłoby w zasadzie bez większego pływania. Możliwe ze  +/- 2ppm.

Nie pisz takich rzeczy (najlepiej wyedytuj to), ppm (points per million) to takie procenty, tylko nie "centy", a "mikry" procent = "na sto" promil = "na tysiąc", ppm = "na milion". ppm pokazuje jak bardzo od nominalnej częstotliwości może odjechać częstotliwość rzeczywista abs((Fnom-Frzecz)/Fnom), czyli 10 ppm przed podziałem = 10 ppm po podziale. Zmniejsza się odpowiednio i częstotliwość, i błąd, więc ppm jest TEN SAM.

19

(5 odpowiedzi, napisanych Programowanie - 8 bit)

tooloudtoowide napisał/a:

Pytanie - czy da się to szybciej w Action?

Bez stosowania szczególnych rozwiązań - nie. Szczególne rozwiązanie to podmienić moveblock na to memcpy z cc65, i będzie tak samo szybko, lub napisać szybką procedurę "blit", która pobierze dodatkowe parametry i mieć możliwość kopiowania prostokąta za jednym wywołaniem.

Trzeba pamiętać, że protokół wywołania procedury w action różni się w zal. od liczby bajtów parametrów: do trzech bajtów parametrów - rejestry  axy. Powyżej - przez komórki pamięci na stronie zerowej (a już nie przez rejestry).

20

(52 odpowiedzi, napisanych Fabryka - 8bit)

A czy jest możliwość podmiany karta na żywo, bez resetu? Założenie - komputer ma wyłączoną procedurę resetu po zmianie kartridża.

21

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

Zasilacz niedomaga?

22

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

Żelazkiem. Ale takim ledwo ciepłym, 60 stopni. Może ciut więcej (na oko piszę). Przez kartki papieru, najlepiej takiego do pieczenia.

23

(52 odpowiedzi, napisanych Fabryka - 8bit)

Będziesz gdzieś umieszczał projekt, aby można było sobie samemu zrobić pcb? A może znalazłaby się jedna płytka dla mnie (wg obliczeń już zabrakło)

24

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

Ja też myślę, że problem jest nieco sztuczny. Masz 10 sekund na znalezienie pilota. To jest dużo czasu. Jak słyszysz pilota, to zostawiasz. A jak nie znajdziesz lub dane nastąpią zbyt szybko, to szukasz do skutku i po prostu jeszcze raz odpalasz/resetujesz komputer. Nigdy nie miałem z tym problemu, a w głowie sobie odliczałem sekundy.

25

(71 odpowiedzi, napisanych Bałagan)

Hm, mydelniczka?