Blikajuci text //assembler

Sekcia o programovaní, programovacích jazykoch...
stano11
Nový používateľ
Nový používateľ
Príspevky: 63
Dátum registrácie: Po 11. Apr, 2005, 20:00
Bydlisko: Bratislava - Galanta

Blikajuci text //assembler

Príspevok od používateľa stano11 »

Prosim potreboval by som aby ten vypisani text "ahoj" blikal

Kód: Vybrať všetko

DATA	SEGMENT
TEXT	DB	'AHOJ$'
DATA	ENDS
CODE 	SEGMENT
	ASSUME	cs:code,	DS:DATA

START:	MOV AX,	SEG DATA
	MOV DS,	AX
	MOV DX, OFFSET TEXT
	MOV AH,	09H
	INT 21H
	MOV AX,	4C00H
	INT 21H
CODE	ENDS
	END	START
Predom diky z ochotu :)
stano11
Nový používateľ
Nový používateľ
Príspevky: 63
Dátum registrácie: Po 11. Apr, 2005, 20:00
Bydlisko: Bratislava - Galanta

Príspevok od používateľa stano11 »

:?
Používateľov profilový obrázok
kOsTi
VIP
VIP
Príspevky: 2887
Dátum registrácie: Ne 08. Aug, 2004, 14:00
Bydlisko: BKK, Thailand

Príspevok od používateľa kOsTi »

no ved raz vysli text ahoj... potom vycisti obrazovku a to cele daj do cyklu...
stano11
Nový používateľ
Nový používateľ
Príspevky: 63
Dátum registrácie: Po 11. Apr, 2005, 20:00
Bydlisko: Bratislava - Galanta

Príspevok od používateľa stano11 »

sorry ale assemblerom len zacinam pls moho by si to ukazat bol by som vdacni

Kód: Vybrať všetko

DATA   SEGMENT
TEXT   DB   'AHOJ$'
DATA   ENDS
CODE    SEGMENT
   ASSUME   cs:code,   DS:DATA

START: 	MOV AH,0	       ;premaze
	       MOV AL,3	       ;celu
	       INT 10H		     ;obrazovku

	       MOV AX,   SEG DATA
	       MOV DS,   AX
          MOV DX, OFFSET TEXT
 	      MOV AH,   09H
 	      INT 21H

 	      MOV AX,   4C00H
 	      INT 21H
CODE	ENDS
   END  START
Používateľov profilový obrázok
kami_sama
Používateľ
Používateľ
Príspevky: 362
Dátum registrácie: Po 05. Sep, 2005, 20:00
Bydlisko: Bratislava

Príspevok od používateľa kami_sama »

kOsTi napísal:no ved raz vysli text ahoj... potom vycisti obrazovku a to cele daj do cyklu...
da sa to aj takto, avsak je to celkom drevorubacsky sposob.

riesi sa to cez pamatove miesto pre VGA. je to od A000:0000 do B000:FFFF. VGA to precita najcastejsie cez DMA a potom zobrazi obrazok.

ked mas word addressing mode (textovy mod), pamatove miesto je od B800:0000. 1 znak == word (2byte). dolny bajt == ascii kod znaku, horny bajt == atributy znaku.

cize: [15 14 13 12 11 10 09 08][07 06 05 04 03 02 01 00]

bity od 07 do 00 == kod znaku.
bity od 08 do 11 == farba znaku
bity od 12 do 14 == farba pozadia
bit 15 == flag na blikanie.

:wink:

este hint: adresa v pamati == (x * 2) + (y * (2 * pocet znakov na riadok))
kde pocet znakov na riadok je bud 40, alebo 80.
stano11
Nový používateľ
Nový používateľ
Príspevky: 63
Dátum registrácie: Po 11. Apr, 2005, 20:00
Bydlisko: Bratislava - Galanta

Príspevok od používateľa stano11 »

diky za snahu, ale z assembleru som mal iba 3 hodiny a toto je mi uplne nezrozumitelne ( ani zhruba neviem co myslis )

pls mohol by si napisat tych par riadkov a ukazat mi to tam presne ktori riadok robi co, diky
Používateľov profilový obrázok
kami_sama
Používateľ
Používateľ
Príspevky: 362
Dátum registrácie: Po 05. Sep, 2005, 20:00
Bydlisko: Bratislava

Príspevok od používateľa kami_sama »

ked to pocka, tak behom buduceho tyzdna ti to napisem. assembler som moc nepouzival (taketo veci sa daju urobit aj v pascale). teraz nemam na to cas (buduci tyzden odovzdam zadanie a este nefunguje).
stano11
Nový používateľ
Nový používateľ
Príspevky: 63
Dátum registrácie: Po 11. Apr, 2005, 20:00
Bydlisko: Bratislava - Galanta

Príspevok od používateľa stano11 »

buduci tyzden Ok ale iba do utorka(v utorok uz o potrebujem), taktiez je to zadanie :red:
Používateľov profilový obrázok
kami_sama
Používateľ
Používateľ
Príspevky: 362
Dátum registrácie: Po 05. Sep, 2005, 20:00
Bydlisko: Bratislava

Príspevok od používateľa kami_sama »

no, ked mi napises softverovy router, tak sa mozeme dohodnut. ;)
stano11
Nový používateľ
Nový používateľ
Príspevky: 63
Dátum registrácie: Po 11. Apr, 2005, 20:00
Bydlisko: Bratislava - Galanta

Príspevok od používateľa stano11 »

kami_sama napísal:no, ked mi napises softverovy router, tak sa mozeme dohodnut. ;)
WTF? :?
//EDIT
:P

Kód: Vybrať všetko

DATA   	SEGMENT			
TEXT   	DB   'AHOJ$'
DATA   	ENDS
CODE      SEGMENT
   ASSUME   cs:code,   DS:DATA

START: 	MOV AH,0	
	       MOV AL,3	
	       INT 10H		

	     MOV AX, SEG DATA 
        MOV ES, AX 
        MOV BP, OFFSET TEXT 	
        MOV AH, 13H		
        MOV AL, 01H         	
        XOR BH, BH          	
        MOV BL, 8FH        	
        MOV CX, 4           	
        MOV DH, 0           	
        MOV DL, 0           	
        INT 10H

        MOV AX, 4C00H		
        INT 21H			
CODE    ENDS			
	     END START		

Návrat na "Programovanie"