[Pascal] Polecenia Mem i Port

0

Mam do Was ważne pytanie. Jak używać tych poleceń Mem i Port? I od czego one są? Czy moglibyście podać wszystkie polecenia tego typu, jakie znacie? Proszę o dość obszerną odpowiedź, ponieważ mogę wszystkiego nie zrozumieć.
P.S. Nie wiem, czy to dla was łatwe zagadnienie czy nie, więc dałem ten temat w dziale Delphi/Pascal. Jeśli musicie, przenieście go do działu Newbie.

0

instrukcje mem i memw daja mozliwosc odczytu/zapisu w pamięci w obrębie podstawowego jej megabajta. mem operuje na jednym bajcie, memw na slowie (2 bajtach). w asmie odpowiednio byte prt i word ptr.
np. dawniej pisało się w trybie 13h i żeby zapisać coś do pamięci mogłeś zrobić
mem[$a000:hex_offset]:= 123;
zapalając tym samym piksel na ekranie.
uzywajac mem i memw mozemy w czytelniejszy sposob odwolac sie do pamieci - niestety kosztem wydajnosci (ach ten ASM).

instrukcja port służy do komunikacji z urządzeniami. Looknij do faq

informacji szukaj w różnych FAQ do turbo pascala i pod hasłem 13h

pozdrawiam, Aklimx

0

Dzięki za pomoc. Mam tylko kilka pytań.

  1. Czy istnieją jeszcze jakieś inne podobne komendy?
  2. Skąd mogę dowiedzieć się, który port ma jaki numer?
  3. Skąd mogę dowiedzieć się, który obszar pamięci do czego służy i jaki ma numer?
  4. Czy możesz podać konkretne (ale proste) przykłady użycia tych komend?

Co do programowania portów, to rozumiem, że muszę znać ich budowę wewnętrzną. Ale czy w ten sposób mogę oprogramować każdy port, np. USB?

BTW: ten artykuł o programowaniu portów COM jest chyba przeznaczony dla elektroników, więc chyba będę musiał trochę poczekać z programowaniem portów. :(

0

ad 1) inne komendy? ale do czego? są np. ptr(), ofs(), seg(), memL, memD, portW, portD

ad 2) nie wiem, pewnie mozna znaleźć pełną liste portow. ja wiem tylko, ze jest ich 0..65535 i na kazdy mozesz przeslac 0..255. Odpowiednikiem pascalowego port jest w asmie in oraz out.

ad 3) z Internetu lub starych książek (juz chyba nie drukuja nic o TP :/)

ad 4) w necie masz opisy, przyklady, wszystko. W pomocy TP tez byly jakies opisy

ja pascalem bawilem sie tylko w 13h (ksiazka "tworzenie gier 2d i 3d w TP"), więc w tym zakresie mogę coś powiedzieć. Np. pamięć zawiera się w segmencie $a000 w offsetach 00000:63999. wykorzystywanymi portami (przy ustawianiu palety kolorow) są: $3c7, $3c8, $3c9. Port klawiatury to $64.

1 użytkowników online, w tym zalogowanych: 0, gości: 1