Hollosi Information eXchange /HIX/
HIX CODER 378
Copyright (C) HIX
1999-02-22
Új cikk beküldése (a cikk tartalma az író felelőssége)
Megrendelés Lemondás
1 Haleeeeee! (mind)  38 sor     (cikkei)
2 Re: *** HIX CODER *** #377 -->Mc (mind)  49 sor     (cikkei)
3 bill csere (mind)  110 sor     (cikkei)
4 Re: Celeron 300A vs BP 7.0 (mind)  5 sor     (cikkei)
5 Re: Celeron 300A vs BP 7.0 (mind)  16 sor     (cikkei)
6 Re: *** HIX CODER *** #376 -->Mc (mind)  44 sor     (cikkei)

+ - Haleeeeee! (mind) VÁLASZ  Feladó: (cikkei)

irtam egy progit, ami ramaszik a 9-es megszakitasra-ra, es
kicsereli az 'y'-t 'z'-re, es forditva. csak nem muxik.

  Nem csoda, ebmer, az INT 9 ketszer hajtodik vegre vegul is 1x bill
lenyomas 2x bill felengedes...
De azon meg mindig gondolkozok hogy hogy csereled ki a karaktert INT9
-nel hisz vegul is az rogton a keyboard bufferbe rakja a kodod... azt
csereled ki!?!

valamiert ketszer hajtodik vegre, es ugyanazt a karaktert
adja vissza. probaltam az 'int 16h'-val, es a billentyuzet-
puffer atirasaval is.
 szerintetek hogy lehetne megcsinalni?

  A muvelet 1szeru> az int16-ra racsucsulsz, es amikor valaki megy
megkerdezni tole, hogy melyik billentyut nyomtak meg, a valaszt
kicsereled amire akarod...

oldint16 dd 0
int16:
  cmp ah,0
  jne goon
  call oldint16
  cmp ah,'Z'
  jne stepovr
    mov ah,'X'
stepovr:
goon:
  iret

Na nagyjabol ennyi... bocsi a hibakert, de ezt a forrast most
rogtonoztem, arra boven eleg, hogy felvazoljam a mukodeset...

Bye,
        Panther / mnemonic
        ^^^^^^^^^^^^^^^ hehehe

Hidi...
+ - Re: *** HIX CODER *** #377 -->Mc (mind) VÁLASZ  Feladó: (cikkei)

Hi inet,"HIX CODER" >!

iC> irtam egy progit, ami ramaszik a 9-es megszakitasra-ra, es
iC> kicsereli az 'y'-t 'z'-re, es forditva. csak nem muxik.
iC> valamiert ketszer hajtodik vegre, es ugyanazt a karaktert
iC> adja vissza. probaltam az 'int 16h'-val, es a billentyuzet-
iC> puffer atirasaval is. szerintetek hogy lehetne megcsinalni?
no itt egz kod /bassyadmeg utallom, mer' inditottam el!??! :)/
na sya'l assyem egesyen fasyan muxxik... fasyom... kuudom a
kodot, sasmos kodolasban, de tasm par masoperc alatt at tudod
irni, es akko' ruley, vagz ha syoosy, akko' kuudom leforgatva;))
sok syerencset... /amugz en ay izen temakat int16nal komalom
a legzobban, masol nem nagzon erdemes...;))) esetleg int9 _UTAN_
a bufferben csereberelni, de asytan ey a maxximum...;)))))))
> ----------------------------------------------------------------------
jmp word start         ;no nezzuk csak;))))
oldint dd 0            ;a regi int vector...
proc newint            ;az uj interrupt...
test ah,1              ;buffer testeles?
jnz byte newint_nature ;igen-->akkor lassuk...;))
pushf                  ;na ez itt egy int emu....;))))
call dword cs:[oldint] ;ez is hozzatartozik...;)))
cmp al,'z'             ;ami visszayott az z??? ;)))
je byte newint_z       ;igen-->na tegyunk valamit;)))
cmp al,'y'             ;ami visszayott az y??? ;)))
je byte newint_y       ;igen-->na tegyunk valami mast;)))
newint_vege:
iret                   ;na es vissza a meghivohoz....
newint_z:
mov al,'y'             ;na toocsuk be az uj kezcodet-t...
iret                   ;asztan vissza...
newint_y:
mov al,'z'             ;na toocsuk be az uj kezcodet-t...
iret                   ;asztan vissza...
newint_nature:
jmp dword cs:[oldint]  ;vagy ha csak testtelunk, akko' go! ;)
endp
start:
sub ax,ax              ;0:0-->realmode idt..;))
mov ds,ax              ;toocsuk csak be a segregbe...
mov ax,cs              ;hol is vagzunk? /eax felso fele;)
shl eax,16             ;tegyuk a doogokat a heyukre;)))
mov ax,offset newint   ;es az also fele /seg:ofs eaxben;)))))
xchg def:[58h],eax     ;int 16h hookin'... fvkc off msdos! :)
mov cs:[oldint],eax    ;yeahh, a regi int16 cimet Lmentzuk;)
mov dx,offset start    ;a leguccso memrezi byte cime..
int 27h                ;no es mennzunk rezidensbe..;))))
> ----------------------------------------------------------------------
Mc
+ - bill csere (mind) VÁLASZ  Feladó: (cikkei)

>irtam egy progit, ami ramaszik a 9-es megszakitasra-ra, es
>kicsereli az 'y'-t 'z'-re, es forditva. csak nem muxik.
>valamiert ketszer hajtodik vegre, es ugyanazt a karaktert
>adja vissza. probaltam az 'int 16h'-val, es a billentyuzet-
>puffer atirasaval is.
>szerintetek hogy lehetne megcsinalni?

ime a kovetkezo source ami felcsereli a gombokat ha be van kapcsolva a scroll 
lock

				Jan Chika



*********************************************************************

SCROLL_LOCK		EQU	00010000B

CSERE	MACRO	ASCII_1,  ASCII_2 ,SCAN_2
	LOCAL	LOC_CSERE
	CMP	AL,ASCII_1
	JNZ	LOC_CSERE
	MOV	AL,ASCII_2
	MOV	AH,SCAN_2

LOC_CSERE:
	ENDM

	NAME 	KEYSZI

HELLO	SEGMENT
	ASSUME	CS:HELLO,DS:HELLO


	org	100h

START:
	JMP 	KEZD

ROUTIN	PROC	FAR

KEY_KONV:


	CMP	AH,2
	JNZ	olv
	int	80h
	IRET

OLV:	CLI

	INT	80H
	PUSHF
	PUSH	DS
	PUSH	AX
	MOV	DS,CS:[BIOS_SEG]
	MOV	AL,DS:[17H]
	AND	AL,SCROLL_LOCK
	CMP	AL,0
	JNZ	NO_ACTIV
	POP	AX
	POP	DS
	CSERE	'A','B',48
	CSERE	'Q','B',48

		; ide barmit irhatsz csak a regisztereket mebds el

	POPF

	STI
	RET	2
NO_ACTIV:
	POP	AX
	POP	DS
	POPF
	STI
	RET	2

BIOS_SEG	DW	40H

ROUTIN 	ENDP

KEZD:
	CLI
	MOV	AL,16H
	MOV	AH,35H
	INT	21H
	MOV	DX,BX
	MOV	AX,ES
	MOV	DS,AX
	MOV	AL,80H
	MOV	AH,25H
	INT	21H
	LEA	DX,KEY_KONV
	PUSH	CS
	POP	DS
	MOV	AL,16H
	MOV	AH,25H
	INT	21H
	STI
	MOV	DX,OFFSET KEZD
	INT	27H


HELLO	ENDS

	END	START
	END

***************************************************
+ - Re: Celeron 300A vs BP 7.0 (mind) VÁLASZ  Feladó: (cikkei)

Nekem is volt ilyen... van ilyen gondom... szoval a hiba fennall. Allitolag
lehet szerezni, valami progi patchet, de ezidaig nem talaltam ra. Sok ilyen
progim van. :-( Egyebkent Celeron alatt akkor is div by zero -val all le a
progi, ha megprobal hibas algoritmussal procisebesseget lekerdezni. Pliz
help nekem is!!!
+ - Re: Celeron 300A vs BP 7.0 (mind) VÁLASZ  Feladó: (cikkei)

Sziasztok!

> Nekem is ugyanez a problemam volt nehany honapja.
> A gubanc a CRT unitban van. Ugyanis amikor probalja beallitani a delay
> varakozasi erteket, a procid olyan gyors, hogy 0 ido alatt vegrehajtja a
> tesztelo reszt, es ezzel az ertekkel akar osztani, hogy ki tudja szamolni a
> delay valos erteket. (Huhh, szep magyar mondat)
> Maganba elkuldom a patchelt CRT unitot.

Szep, hogy a crt unitot lehet patchelni. De mit lehet tenni, ha van 
egy progim aminek ugyanez a gondja, es nincs meg a forraskod, igy nem 
lehet ujraforditani. Van erre valami megoldas?

Udv
Zida
mailto:
+ - Re: *** HIX CODER *** #376 -->Mc (mind) VÁLASZ  Feladó: (cikkei)

Hi inet,"HIX CODER" >!

iC> A kerdesem az lenne, hogy vajon a Celeron alatt BP 7-essel forditott
iC> proggik miert allnak le zero divide (0. kivetel) hibaval ?
na ya, tul gyors ma' a proci, es a delayhez kiszamol valami relativ
speedet a pacal, csak amiko' osztani akar, akko' az ma' nem yon
neki ossze...;))) van ra egesz korrekt kis pecs a www.borland.hu-n...;)))

iC> Annyit tudok, hogy a 0. kivetelt okozhatja az is, hogy az eredmeny
iC> nem fer el az AX-ben. Itt eppen ez tortenik valoszinuleg.
egeszen .osan az tortenik, mer'hogy nem 0aval oszt /mer' Lotte
teszi be a 37h-t, sza'l ma' csak a tulcsordulas marad6....;))))

iC> Pascal ? Valoszinuleg a crt unit inicializacios kodjaban lehet
 .osabn az... de amugy mondom a borlandon le van szepen doxxova a dolog;)

iC> jelenseg. Sot, ha TASM 3.1 forditom a kovetkezo kodot
iC> P133 alatt, akkor is (ezt mondjuk ertem miert van):
iC> push cx
iC> mov cx,0037h
iC> div cx
iC> pop cx
iC> ret
na monnyuk ez ma' ms-suxx, mer' ha irsz 1 kis progyt, ami kiirya
a proggy elindulasa utani regeket, akko' valami hasollot foxx latni:
na igen, ha yobban +nezed a cx,dx,si,di,bp regeket, akko' ez aze'
messze nem az az allapot, amit a td nyomat alapallapot cimszo
alatt, foleg, ha hozzaveszem aszt is, hogy a gs es fs, es a normal
regen felso 16 bitjeinek ertek teyyessegben azon mulik, hogy micsinalt
veluk az Lozo proggy...;))) na sza'l summa summarum, ez nem tasm suxx
/bar monnyuk az de nem eze';)/ hanem itt arro' van szo, hogy az 'alapheyzet'
egy kicsit mas a borland es a ms szerint...;))))))))))))))))))))))))
a dolognak csak 1 tanulsaga van; sose bizzunk abba, hogy miyen regeket
kapunk a proggy betootese utan... /csak akko', ha sayat kezzel tootottuk
be a doogokat;)))))))/

fuggelek#1: regek bugos/dos622/dn142 alatt:
  CS=0x163B  IP=0x00000100  FG=0x00007202
  SS=0x163B  SP=0x0000FFFE  S0=0x0000  S1=0x20CD  S2=0xA000  S3=0x9A00
  DS=0x163B  ES=0x163B  FS=0x0010  GS=0x0003
  AX=0x00000000  BX=0x00000000  CX=0x000000FF  DX=0x0000163B
  SI=0x00000100  DI=0x0000FFFE  BP=0x0000091C

Mc

AGYKONTROLL ALLAT AUTO AZSIA BUDAPEST CODER DOSZ FELVIDEK FILM FILOZOFIA FORUM GURU HANG HIPHOP HIRDETES HIRMONDO HIXDVD HUDOM HUNGARY JATEK KEP KONYHA KONYV KORNYESZ KUKKER KULTURA LINUX MAGELLAN MAHAL MOBIL MOKA MOZAIK NARANCS NARANCS1 NY NYELV OTTHON OTTHONKA PARA RANDI REJTVENY SCM SPORT SZABAD SZALON TANC TIPP TUDOMANY UK UTAZAS UTLEVEL VITA WEBMESTER WINDOWS