home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Equalizer BBS
/
equalizer-bbs-collection_2004.zip
/
equalizer-bbs-collection
/
DEMOSCENE-STUFF
/
M96-CODE.ZIP
/
MEET96.ASM
< prev
next >
Wrap
Assembly Source File
|
1996-04-07
|
3KB
|
134 lines
;
; Meeting'96 Faaast Coding Compo!
;
; a brainstorming experience by...
; ...Dark Angel & RedBug / Paranoia and aCceSs/aNTaReS
;
; get in touch with us:
;
; Paranoia: http://www.ping.be/~ping9361/paranoia.htm
; Antares: http://www.ping.be/~ping9361
;
; Or write us.. Email: francois.baligant@ping.be
;
; Snail Mail: Philippe Noé (aka Dark Angel)
; Rue Baron Lheureux, 36
; B-7340 Colfontaine (Pâturages)
; Belgium
; +32-(0)65-67.69.61
;
; Miguel Vanhove (aka RedBug)
; Rue Sainte-Barbe, 26
; B-7060 Soignies
; Belgium
; +32-(0)67-34.03.60
;
; François Baligant (aka aCceSs)
; Rue du millénaire,3
; B-7080 Frameries
; Belgium
; +32-(0)65-66.70.40
;
; Have fun!
;
.model tiny ;
.code ; ----.
; :
.386 ; ____.'
.STARTUP ;
; au début, on a ax=bx=ch=0
push 0a000h
pop es
xor dx,dx
xor di,di
mov bx,320
int 16h ; AL = ascii code
aaa ; SUB al,'0'
cbw ; Ah=0 ssi (al&F0h)<>F0h
xchg ax,cx
mov al,200d
div cx
cbw ; Ah=0 ssi (al&F0h)<>F0h
xchg bp,ax
xor dx,dx
mov ax,bx ; bx=320
div cx
xchg bp,dx
; al=valeur horizontale cx=nombre de points bp=0
mov ah,0 ; pas de cbw car (al&F0h) peut valoir F0h
xchg cx,ax
mov bp,13h
xchg bp,ax
; bp=nombre de points; ax=13h; cx=sa valeur horizontale <-\
; A vous de chercher, y en a marre de ces 4 opcodes de merde |
; Correction à envoyer à un de nous trois. Thanks...
int 10h ; ait besoin de ax=13h
push dx
@Looprow:
pusha ; pour garder di
rep stosb
popa ; pour reprendre di
add di,bx ; bx=320
dec dx
jnz @looprow
pop dx
; ait dx=taille verticale et cx=taille horizontale
xor di,di
dec cx
PourColonne:
push di
mov si,bp
PourGrille:
stosb
add di,cx
dec si
jnz PourGrille
pop di
add di,bx ; bx=320
dec di ; addition de 319 à BX ;dec
stosb ; affiche la derniere colonne
cmp di,64000
jb PourColonne
xor di,di
imul dx,bx ; dx=dx*320
PourLigne:
mov cx,bx ;bx=320
pusha
rep stosb
popa
add di,dx
dec bp
jne PourLigne
mov di,63680
rep stosb ; derniere ligne du tableau
; fin de tous les affichages
int 16h ; Attente d'une touche (ah=0)
cbw
mov al,3h ; retour mode texte
int 10h
ret ; retourne au DOS (jmp interruption 20h <=> fichier .COM)
end