Nie moge sobie poradzić z przerobieniem tej instrucji (z turbo pascala) tak aby działała pod TC++ 3.1. Szukałem w pomocy, ale nie znalazłem odpowiednika funkcji "port".
port[$3c9] := liczba shr 2;
Mam też taki kod w asm ale nie umiem go przerobic dla swoich potrzeb, ponad to kompilator uważa ze nie zna instukcji "shr".
;---=== ustawia palete ===---
; ds:di - koniec palety w formacie BMP (b, g, r, null) << 2
paleta PROC
mov cx, 256 ;tyle kolorow
ustaw_kolor:
sub di, 4 ;zmienia na poprzedni kolor
mov dx, 03c8h ;port ustawienia koloru
mov ax, cx
sub ax, 1 ;zmiana koloru o 1 mniejszego od licznika petli
out dx, al ;bedzie zmieniac kolor al
mov dx, 03c9h ;rgb wysyla sie do 03c9h
mov al, [di + 2] ;skladowa czerwona
shr al, 2 ;przesuniesie o 2 bity w prawo - taki format
out dx, al
mov al, [di + 1] ;skladowa zielona
shr al, 2 ;przesuniesie o 2 bity w prawo - taki format
out dx, al
mov al, [di + 0] ;skladowa niebieska
shr al, 2 ;przesuniesie o 2 bity w prawo - taki format
out dx, al
loop ustaw_kolor
ret
ENDP
rozkazy ENDS
Proszę o pomoc :(