1

Temat: Niepublikowane entrypoint do procedur OS

konkretnie: Atari XL OS Revision 2. Może ktoś ma ciekawe przykłady innych procedur?

Graphics
========

przykładowo: GRAPHICS 8


os_graphics equ $ef9c

lda #8
jsr os_graphics



PLOT, PRINT
===========

przykladowo: COLOR 1: PLOT 5,10

rowcrs equ $54 ; y
colcrs equ $55 ; x - 2 bajty
atachr equ $2fb; kolor

os_plot equ $f1d8

lda #1
sta atachr
lda #5
sta colcrs
lda #10
sta rowcrs
jsr os_plot


przykladowo: PRINT "A";

os_print equ $f1a4

lda #'A'
jsr os_print


przykladowo: ? CHR$(125) - kasowanie ekranu

lda #125
jsr os_print


DRAWTO
======

przykladowo: COLOR 1: DRAWTO 10,20

os_drawto equ $f9c2

lda #1
sta atachr
lda #10
sta colcrs
lda #20
sta rowcrs
jsr os_drawto

http://atari.pl/hsc/ad.php?i=1.

2

Odp: Niepublikowane entrypoint do procedur OS

Very bad practice and makes your application unusable with drivers (for example, drivers which intercept the screen handler and draw lines twice as quickly as the OS line drawing code). The entry points are unpublished because they are not entry points.

Ostatnio edytowany przez flashjazzcat (2018-04-30 13:21:35)

3

Odp: Niepublikowane entrypoint do procedur OS

I know it is unusable with drivers which intercept the screen handler and draw lines twice as quickly as the OS line drawing code...

---

INPUT A$
======

EGETCH equ $F24A


jsr EGETCH


znak znajduje sie w "akumulatorze" i w ATACHR

http://atari.pl/hsc/ad.php?i=1.

4

Odp: Niepublikowane entrypoint do procedur OS

Instead of assuming the content of the OS ROM, it would be safer to simply look up the address via HATABS, whose "E:" entry points to $E400. In turn, the GET vector in the table at $E400 is $F249 (EGETCH-1). Same result.

5

Odp: Niepublikowane entrypoint do procedur OS

FJC - spokojnie, kolega uczy się dopiero programować ;)

ADRES: pin@atari.pl - konto zlikwidowane. Aktualny adres: pin(at)atari8.info

6

Odp: Niepublikowane entrypoint do procedur OS

@flashjazzcat: and if you install the E driver: which will be faster and better, both methods will be useless, but the direct jump is faster and shorter ;-)



LOCATE 10,20,A
==========

GETPLT equ $F18F

lda #10
sta colcrs
lda #20
sta rowcrs
jsr GETPLT

wynik w Akumulatorze

http://atari.pl/hsc/ad.php?i=1.

7

Odp: Niepublikowane entrypoint do procedur OS

xxl napisał/a:

but the direct jump is faster and shorter

But jump into the jump table ALWAYS works, direct jump does not.

Czy możecie wyjaśnić, Stirlitz, dlaczego wasz służbowy adres stirlitz@rsha.gov.de ma aliasa justas@gru.su?
Nie czytam PM. Proszę używać e-mail.

8

Odp: Niepublikowane entrypoint do procedur OS

xxl napisał/a:

konkretnie: Atari XL OS Revision 2.

nie dziala?

http://atari.pl/hsc/ad.php?i=1.

9

Odp: Niepublikowane entrypoint do procedur OS

Tutaj jest zestawienie różnic między rewizjami Atari OS i XL OS. Jest ich tyle, że pomijanie tablicy skoków nie jest najlepszym pomysłem...

Powszechnie wiadomo, że kamień potrafi myśleć. Na tym fakcie opiera się cała elektronika.

Terry Pratchett - Równoumagicznienie

10

Odp: Niepublikowane entrypoint do procedur OS

A ja lubię tą młodzieńcza pasję odkrywania u XXL'a. Niech odkryje na nowo koło i Amerykę. Może zrobi to w jakiś nowatorski sposób? Kto wie. Na refleksje będzie miał czas na starość.

11

Odp: Niepublikowane entrypoint do procedur OS

Nie usuwaj Dely moich postów, bo nie było w nich nic obraźliwego.

ADRES: pin@atari.pl - konto zlikwidowane. Aktualny adres: pin(at)atari8.info

12

Odp: Niepublikowane entrypoint do procedur OS

Przypominam, że to jest dział "Programowanie", a nie swobodna dyskusja na dowolne tematy w "Bałaganie". Wycieczki będą usuwane, można założyć inny wątek.

Czy możecie wyjaśnić, Stirlitz, dlaczego wasz służbowy adres stirlitz@rsha.gov.de ma aliasa justas@gru.su?
Nie czytam PM. Proszę używać e-mail.

13

Odp: Niepublikowane entrypoint do procedur OS

    ldx    #<hello
    ldy    #>hello
    jsr    $c642
    ...

hello    dta    c'Hello, world!',$9b
https://www.youtube.com/watch?v=jofNR_WkoCE

14

Odp: Niepublikowane entrypoint do procedur OS

Dely - to jeśli chcesz być konsekwentny to wywal też post BartoszaP.

ADRES: pin@atari.pl - konto zlikwidowane. Aktualny adres: pin(at)atari8.info

15

Odp: Niepublikowane entrypoint do procedur OS

xxl napisał/a:

@flashjazzcat: and if you install the E driver: which will be faster and better, both methods will be useless, but the direct jump is faster and shorter ;-)

Why would the correct method fail when the HATABS entry points to a custom handler jump table in RAM? One of the nice things about the Atari OS is the elegant, extensible design. Look into it. :)

16

Odp: Niepublikowane entrypoint do procedur OS

@flashjazzcat: thanks, could you introduce "proper" calling subroutines from the examples that I published?


@Voy: dzieki, przyda sie. swoja droga to tak jakby uzytownicy windows narzekali na jakis program, ze nie uruchomi sie na windows 3.11 ;)

---

dzieki bezposrednim wywolanim w Atari XL OS Revision 2 moze uda sie zaprogramowac minimalistyczny maze generator :-)


http://atari.pl/hsc/ad.php?i=1.

17

Odp: Niepublikowane entrypoint do procedur OS

xxl napisał/a:

dzieki, przyda sie. swoja droga to tak jakby uzytownicy windows narzekali na jakis program, ze nie uruchomi sie na windows 3.11

Spłycasz problem.

To jest tak, jakby użytkownicy Windows narzekali na jakiś program, że działa TYLKO na takiej wersji Windows, którą ma programista i nie działa na wcześniejszych, ani nie będzie działać na późniejszych.

Taki styl programowania doprowadził do lamentów podczas migracji z Kickstart 1.3 do późniejszych, pomiędzy TOS, a także nie jest obcy na PC, "dzięki" czemu użeram się z jednym softem codziennie na wirtualnej maszynie, zamiast jako normalna aplikacja.

Czy możecie wyjaśnić, Stirlitz, dlaczego wasz służbowy adres stirlitz@rsha.gov.de ma aliasa justas@gru.su?
Nie czytam PM. Proszę używać e-mail.

18

Odp: Niepublikowane entrypoint do procedur OS

nie ma i nie bedzie pozniejszych systemow AtariOS to raz.

dwa: rom 800: uzywa ktos? nawet jesli ktos ma 800 to juz dawno wymienil OS na nowy a jesli nie wymienil to i tak nikt na to nie bedzie pisal bo sa problemy chociazby z programowaniem przerwan.

bedzie kolejny watek zasmiecony przez troli?

http://atari.pl/hsc/ad.php?i=1.

19

Odp: Niepublikowane entrypoint do procedur OS

nie ma i nie będzie? bo XXL tak napisał, ten nasz Nostradamus :P

przecież Phareon takowy popełnił i nie tylko OS (Altirra) http://www.virtualdub.org/altirra.html

p.s.
DRAC030 stworzył OS z myślą o 65816 (RAPIDUS) http://atariki.krap.pl/index.php/DracOS

Ostatnio edytowany przez tebe (2018-05-02 09:18:22)

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

20

Odp: Niepublikowane entrypoint do procedur OS

juz widze jak Atari wydaje aktualizacje OS dla malego atari :D

http://atari.pl/hsc/ad.php?i=1.

21

Odp: Niepublikowane entrypoint do procedur OS

no tak Phareon nie otrzymał zgody Atari, czyli jego OS jest niecertyfikowany

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

22

Odp: Niepublikowane entrypoint do procedur OS

jak powstanie jeszcze 10 alternatywnych OS to Atari sie ugnie i wyda nowy AtariOS :-)

http://atari.pl/hsc/ad.php?i=1.

23

Odp: Niepublikowane entrypoint do procedur OS

a może Atari nie chce abyśmy używali ich sprzętu kiedy oni są na "wakacjach"

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

24

Odp: Niepublikowane entrypoint do procedur OS

to nie uzywaj i nie zasmiecaj watku tym ktorzy uzywaja.

http://atari.pl/hsc/ad.php?i=1.

25

Odp: Niepublikowane entrypoint do procedur OS

troszke uproszczona procka generowania i ok. 100 bajtow kodu mniej :-)


---

FILL
===

wywołujemy tak samo jak DRAWTO, roznica - przed wywolaniem DRAW:

FILFLG equ $2B7

lda #1
sta FILFLG

trzeba pamietac aby przed nastepnym DRAWTO ustawic ta komorke na 0 (zero)

Ostatnio edytowany przez xxl (2018-05-02 12:50:46)

http://atari.pl/hsc/ad.php?i=1.