1 Ostatnio edytowany przez Iron (2015-03-23 14:03:11)

Zmajstrowałem coś takiego, obecna wersja to 0.99 czyli wymaga testów, będę wdzięczny za zgłoszone błędy.

Działanie następujące, po odpaleniu pojawia się karta z aktualnym rokiem i miesiącem, aktualny dzień sobie mruga, strzałki lewo/prawo (bez control) zmieniają miesiąc, strzałki + shift zmieniają rok, esc nie trzeba tłumaczyć.

Testowane pod SDX 4.45 z zegarkiem SIDE1 i SDX 4.47 z zegarkiem Ultimate1MB, pod MyDosem i innymi też to powinno działać aczkolwiek nie sprawdzałem, pod emulatorem Atari800Win jaja wychodzą (np. startuje jako rok 2115), ogólnie z braku czasu mało testowałem, jeszcze zamierzam dorzucić wykrywanie braku zegarka i ręczne wklepywanie daty.

Czekam na komentarze, uwagi, opinie, ble ble ble...

Post's attachments

CALENDAR.XEX 14.51 kb, liczba pobrań: 18 (od 2015-03-23) 

Tylko zalogowani mogą pobierać załączniki.

2

Pierwszy, tzn. fajne ! :)

STYMulator JIL ST YM2149 mjuz:k @ gnu/linux
SIUP (SIo2Usb2Pc) - SIO2PC USB Edition
PIN ready logo
3M / InD: ... na kasetach były zabezpieczenia w postaci tzw. "mikropierdnięcie" ...

3 Ostatnio edytowany przez mono (2015-03-23 18:11:35)

Fajne!
Testowałem co prawda tylko pod emulatorem atari800 i u mnie wystartował ze styczniem 2236. Za to data bieżąca jest poprawna - 23-03-2015. Tak więc rok jest przesunięty o 221. $15 w BCD zinterpretowane jako liczba hex to właśnie 21 dec, choć $20 żadną miarą nie wychodzi mi na 200 :) Takie luźne skojarzenie.

Edit: No chyba, że $20 przesunięte w BCD na następną cyfrę, skonwertowane do hex po czym zsumowane z $15 :)

Edit 2: Na Altirrze 2.70 test2 to samo - czyżby gdzieś tam brakowało CLD? :>

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

4

Ja bym to widział raczej jako rozwinięcie TD. To znaczy, pasek TD nadal wyświetlałby prawidłową godzinę i datę, ale po wciśnięciu jakiegoś wybranego klawisza w shellu SDX, "wysuwałby się" aktualny kalendarz. Tylko pytanie, czy to jest "rabialne"

.: miejsce na twoją reklamę :.

5

Myśle ze wpisanie CALENDAR lub CAL w shellu w dowolnym miejscu moglo by odpalac kalendarz ale za cieńki puki co na to jestem ;)

Co do emulacji nie daje głowy ale pod Win Xp Sp3 + Atari800Win chyba działało jak na real atari czyli jak należy, teraz nie sprawdze bo w końcu przesiadłem sie na Win 7, inna kwestia jest taka że skupiam sie aby na real atarce pokazywało prawidłowo date, najbliższe plany to skracanie kodu bo puki co całość reprezentuje "spaghetti code".

W początkowej fazie programowania była możliwość skoku o 10 lat w tył/przód (ctrl+strzałki) i o 100 lat (ctrl+shift+strzałki) ale zrezygnowałem z tego gdyż uznałem to za mało potrzebne, pytanie co ludziska o tym myślą, potrzebne czy nie?

Możliwe że kiedyś w programie pojawi sie funkcja organizera z przypominaniem ale to odległe plany, inna sprawa czy dołączać to do kalendarza czy może lepiej jako osobny programik.

6 Ostatnio edytowany przez Monsoft (2015-03-23 21:17:56)

@Iron: Jak chcesz potestowac pod Win XP majac Windows 7 to da sie to zrobic. Zainstaluj sobie Windows XP mode dla Windows 7 a pozniej albo Virtual PC Microsoftowe, albo vmware player i zaimportuja windows xp mode.

Ogolnie bedziesz mial legalna vm'ke z windows xp. Bez kluczy, aktywacji itp. Wszystko 100% legalne.

Pod wirtual box'em tez sie da ale jest troche wiecej kombinowania.

7

Och, jeju…
Po co kombinować ze starym i nieaktualizowanym już Atari800WinPlus, którego w dodatku psim obowiązkiem powinna być praca pod najnowszą wersją WinDOS? Generalnie wiodącym i najbardziej kompatybilnym Windowsowym emulatorem jest Altirra. I uważam, że skoro developerzy Atari800WinPlus olali rozwijanie projektu, to powinniśmy się skupić na tym, żeby rzeczy (poza, rzecz jasna, prawdziwym sprzętem) uruchamiały się pod Altirrą, zamiat przejmować się bugami Atari800Win.

.: miejsce na twoją reklamę :.

8

Może po to, że dla wielu atari800win jest wygodniejsze, jeśli już muszą używać emulatora ;)

Sikor umarł...

9

Myśle że to kwestia gustu/przyzwyczajenia, nie mniej nie o tym wątek ;)

10 Ostatnio edytowany przez Pin (2015-03-26 00:12:23)

jedna sugestia. Czy dla trybu 40/80 znakowego nie można by kalendarza wyśrodkować?

EDIT:

z IDE+ (IDEPTIME.SYS) działa bez zastrzeżeń ;)

EDIT2:

Bug ;) - jeśli kalendarz uruchomimy na "koniec dnia", np. o 23:55 i zostawimy go do dnia następnego, to mając dzień "następny" wyróżnienie kursorem jest dla dnia wczorajszego. Nie wiem jak to prościej określić :D

Kontakt: pin@usdk.pl

11

1. W 40 znakowym trybie to zaden problem, w zasadzie pozycja moze byc dowolna, w 80 kolumnowym tez by nie bylo problemu tylko musze obczaic jak sie go wykrywa, nie mowie ze nie, do pomyslenia.

2. Bedzie czas to zagladne co sie da zrobic,nie powinno byc problemu.

12

1. W 40 znakowym trybie to zaden problem, w zasadzie pozycja moze byc dowolna, w 80 kolumnowym tez by nie bylo problemu tylko musze obczaic jak sie go wykrywa, nie mowie ze nie, do pomyslenia.

2. Bedzie czas to zagladne co sie da zrobic,nie powinno byc problemu.

13

A co tu wykrywać? Do wycentrowania i tak potrzebujesz wartości prawego i lewego marginesu.

KMK
? HEX$(6670358)

14

drac030 napisał/a:

A co tu wykrywać?

Czy wartość pozioma kursora może przekroczyć 39?

15

Oczywiście. W trybie 80-kolumnowym.
Bazuj po prostu na wskazaniach LMARGN i RMARGN, jak napisał już drac030.

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

16

czyli ja to u siebie zrobiłem od dupy strony, bo bazuję na próbie włączenia trybu i wykryciu błędu, jeśli jest niedostępny ;)

Kontakt: pin@usdk.pl

17

Iron napisał/a:

Czy wartość pozioma kursora może przekroczyć 39?

W trybie 80-kolumnowym może nie móc, jeśli prawy margines jest ustawiony na np. 32 :) Krótko mówiąc, ile kolumn ma tryb, nie obchodzi Cię. Obchodzą Cię tylko wartości lewego i prawego marginesu (prawy margines na pewno nie może być ustawiony na wartość >= liczbie kolumn ekranu, ale na mniejszą - jak najbardziej).

KMK
? HEX$(6670358)

18 Ostatnio edytowany przez Iron (2016-06-08 07:37:02)

Ogrzewam kotleta, projekt nie umarł, jedynie czasu brak, dzisiaj chwilę sobie usiadłem, oznaczam to jako 0,99b, poprawiony bug z drukowaniem w inversie, jak sugerował pinokio ramka poleciała na środek.

Jak sobie tylko przypomnę jak się wprowadzało spartę w tryb 60 - 80 i ilu tam jeszcze był to się zajmę środkowaniem dla tych trybów.

A więc testować, i przypominam, na emulcach głupieje ;)

Edyta: pliczek nie wskoczył, a że moja krwawica robi oblężenie grzyba to wklejam link:

http://atarionline.pl/forum/comments.ph … e=1#Item_1

Edyta 2: Kolejny mały update, kolejna poprawka z podświetleniem daty

Post's attachments

CAL_099B.XEX 14.54 kb, liczba pobrań: 1 (od 2016-06-08) 

Tylko zalogowani mogą pobierać załączniki.

19 Ostatnio edytowany przez Iron (2016-07-23 21:48:30)

Zbytnio nie miałem czasu się bawić ale metodą dedukcji doszedłem czemu w Altirze taki fajny rok jest, pod spartą wyskakuje RTC NOT PRESENT, nie wiem jak pod Atari800 (bez win). Dlatego jakby ktoś z real atarką bez zegara sprawdził co się dzieje byłbym rad, no chyba że da się jakoś wyłączyć zegarki w U1M i SIDE1?

Edyta: Teraz sprawdziłem na Atari800Win, wyłączyłem w ustawieniach RTC i wywala tak jak w Altirze rok 2236.

Teraz się zastanawiam jak zrobić detekcję czy jest RTC na pokładzie, wszystko wskazuje że goła ataryna wrzuca sobie jakieś tam śmieci w rejestry z których korzysta RTC, śmieci z tego co widzę zawsze są te same więc można by zrobić porównanie ;)

20 Ostatnio edytowany przez Iron (2016-10-02 19:44:01)

Wersja 0.99c

Działa w trybie 64 i 80 kolumnowym, dla wszystkich trybów wyśrodkowany, miłego testowanie i czeka na zgłaszanie bugów ;)

Post's attachments

CAL099C.XEX 15.02 kb, liczba pobrań: 8 (od 2016-10-02) 

Tylko zalogowani mogą pobierać załączniki.