- Android szakmai topik
- Milliókkal olcsóbb a Model Y Standard Magyarországon
- iPhone topik
- Újjáéled a Motorola Moto G100
- Felrobbant a Pixel Fold Zack Nelson kezében
- Honor Magic6 Pro - kör közepén számok
- Android alkalmazások - szoftver kibeszélő topik
- Xiaomi 15 - kicsi telefon nagy energiával
- Samsung Galaxy Watch7 - kötelező kör
- Yettel topik
Új hozzászólás Aktív témák
-
-
Rover623
félisten
Egyszerűen...
Eldugod a képernyőn kívülre...
Mondjuk a 25. sorba, ha 80x25-ben vagy...
Procedure WinDefCursor ( Start, WEnd : Byte );
Var
Regs : Registers;
Begin
With Regs Do Begin
AH := $01;
(*
AL := VideoInfo^. OrigModeAL; { a rossz AMI es AST BIOS-ok miatt !! }
*)
CL := WEnd;
CH := Start;
End; {with}
Intr ($10, Regs);
End; {WinDefCursor}
Procedure SetCursorPos (Col, Line: Byte);
Var
Regs : Registers;
Begin
With Regs Do Begin
AH := $02;
BH := $00;
DL := Col;
DH := Line;
End; {with}
Intr ($10, Regs);
End; { SetCurPos }
Procedure WinHideCursor;
Begin
If BIOSOutput Then Begin
WinDefCursor (0, 32); {elcsesszük a méretét}
End{with}
Else Begin
SetCursorPos (0, _NumLine);{_NumLine a képernyő sorainak száma}
End; {else}
End; {WinHideCursor}
[Szerkesztve] -
Dromie
csendes tag
Egy kis Dos alapismeret.
a $B800:0 a memória cím. ennek a $B800 része a Szegmens cím, és a 0 az offszet (eltolás cím).
és mivel a régi valós üzemmódban a memória címzés csak 20 bites volt ezért a
x+1:y cím ugyanoda mutat mint az x:y+16 (ezért van az hogy a főszegmensek segmens címének utolsó byte-ja (utolsó 2 karaktere) 0)
a fene enné meg a kettőspont Y -t.....a 20 bit egy kicsit sántít de az indoklás az igaz...
[Szerkesztve] -
Dromie
csendes tag
nos.....a képernyő buffer a $b800:0 -n kezdődik.
és minden karakterhez 2 byte tartozik az első a karakter ascii kódja, a másik a színe (felső byte háttér szín/alsó byte betűszín) vagy fordítva
ergó a bal felső karakter ascii kódja a $b800:0 -n lesz, a színe a $b800:1 -en...
var i:byte;
begin
for i:=0 to 10 do
mem[$b800:i*2]:=ord('a');
end.
ez ha minden jol megy akkor 10 db a betut ir ki......
[Szerkesztve] -
Rover623
félisten
és nem a legelő karakterre ír hanem a másodikre
1. Hát mer' a képernyő eleje a 0 offseten van teljesen ''értelmetlen'' módon
és ha növelem egyel a memória címét akkor többet lép egy karakternél
Mert kettővel kell növelni, mivel a képernyő egy karaktere 2 byte-ot foglal el ugyebár (karakter kódja és attribútuma)...
P.S.:
Látom hogy ide írhatnak egészen kezdők is.Még én is a pascalt nyomom
Még én is a pascalt nyomom. Még szerencse hogy én is írhatok ide...
[Szerkesztve]
Új hozzászólás Aktív témák
- One otthoni szolgáltatások (TV, internet, telefon)
- Reklámblokkolók topikja
- PlayStation 5
- Anglia - élmények, tapasztalatok
- Debrecen és környéke adok-veszek-beszélgetek
- Fejhallgató erősítő és DAC topik
- Wise (ex-TransferWise)
- WoW avagy World of Warcraft -=MMORPG=-
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- További aktív témák...
- BESZÁMÍTÁS! Gigabyte Aorus B450 R7 5700X 16GB DDR4 512GB SSD RTX 3060Ti 8GB ZALMAN I3 NEO 650W
- 134 - Lenovo Legion Pro 7 (16IRX8H) - Intel Core i9-13900HX, RTX 4090 - 3 év garancia
- Apple Watch series 4 GPS / 1 Hó Garancia / 85% akku
- AKCIÓ - DELL Universal Dock D6000 (452-BCYH) (DisplayLink)
- Új elekrtomos rollerek 2/3 áron és e-bike dobozban, 1 év garanciával:
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest