; StarWars, by Spanska (23 sept 1998) ; For the Christmas 256 Bytes Demo Compo ; ; Compile it with "tasm starwars /m2" and "tlink starwars /t" ; ; Comments are in french, if you have questions: ; spanska@redneck.efga.org ; el_gato@rocketmail.com code segment assume ds:code, ss:code, cs:code, es:code org 100h .386p largeur equ 255 profondeur equ 50 terrain: ;--------------------passer en VGA------------------------------- mov al, 13h ;passer en mode 320x200 int 10h ;go! ;---------------Mettre la palette en place-------------------- mov dx, 3c8h xor al, al ;initialisation de la palette out dx, al inc dx mov cl, 3*8 ee: out dx, al ;couleurs de 0 à 8 = noires loop ee mov cl, 63 rouge: mov al, cl out dx, al xor al, al ;couleurs de 9 à 72 = dégradé de rouge out dx, al out dx, al loop rouge ;--------------affichage du message---------------------------------- mov dx, offset message ;le texte s'affiche mov ah, 9 ;mais on le voit pas int 21h ;--------------initialisation des segments----------------------- push 0A000h pop ds ;ds pointe sur l'ecran video mov ax, cs inc ah ;astuce stupide mov es, ax ;es pointe vers le segment de stockage push es ;sur la pile pour ne pas recalculer (cf [@@] + bas) ;------------creation de la table (x, couleur, z) NB: y fixe-------------- ;ici ds=video es=stock mov cx, (largeur*profondeur) ;255*50 coordonnees xor si, si ;debut de l'ecran video xor di, di ;debut du segment stock xor dx, dx ;compteur qui marque chaque fin de ligne table: mov al, cl ;LE X... 0