file_id.diz
;*******************************************************************************
; /\______ /\______ /\________
; __\\\___ \_ __\\\___ \_ __\\\______ \
; | / / | / / | _____/ \_
; | / /____| / /____| \ |
; | \____ : _____/ : \ |
; | / \ \ |
; | / . \ . \ |
; __ _|_ / \ \ _|_ __
; \ \\_\ \\__\ _/ : \_ : \_ /__// /_// /
; |____/_ _ :______ _ :______ _ |
; \\\____________| \\\____________| \\\____________|
;
; _______ _______ _______ _______ _______ _______
; _\\\__ \___\\\__ \___\\\__ \___\\\_____ \___\\\_____ \___\\\__ \_
;| /______/| / /| / /| / | / | / /
;\ | / /_| / /_| / | / | / /_
;|\_______ : _____/ : \_____/ : / : / : \____ |
;| / . \ . \ . / . / . / |
;| / \ \ / / |
;|___ :___ :___ :___\ :___ :___/ sns |
; \\_________: \\_________: \\_________: \\_________: \\_________: \\_________|
;
; R E D S E C T O R I N C
;
; Futura 256 bytes nano intro by Baudsurfer/rsi 2016 aka olivier.poudade.free.fr
; Presented at SynchroNY demoparty 2016 New York City / United States of America
; Greetings to BonBon BReWErS CODEX Conscience Flush Lineout Mandarine Onslaught
; Paranoimia Quartex Rebels Razor1911 RiOT Titan and to all assembly programmers
; rsi.untergrund.net twitter.com/red_sector_inc facebook.com/redsectorinc ircnet
; RSI asciilogo by sEnsER/BRK vidcap youtube.com/watch?v=XXXXXXXXXXX by Fra/MDRN
;*******************************************************************************
b equ byte ;,:
w equ word ;,?}'
d equ dword ;=!J |
org 100h ;,*-. ?&
mov al,13h ;WP) Y9P
int 10h ;YP ,W'
mov fs,w[bx] ;,W) ,WW.'
mov dx,l ;WW) ,WWW)
mov ax,251ch ;7W),WWWW'
int 21h ;`WWWWWW'
a:and bp,0ffh ;9---W)
jnz c ;,,--WPL=YXW===
xor b[cs:l],8 ;(P),CY:,I/X'F9P
xor w[f],4a91h;WUT===---/===9)
c:mov si,140h ;-HP+----Y(C=9W)
mov cl,0ffh ;'9Y3'-'-OWPT-
e:mov bx,cx ;'WWLUIECW
not bl ;(:7L7C7'
cwd ;,P--=YWFL
lea ax,[di-10h] ;Y-=:9)UW:L
div si ;3-'9=WU/.7
sub ax,0c8h ;,WP9HTFUW'()
imul ax,bx ;9W7W))UF 9)
add ax,3f03h ;7WYW))PW W
sub dx,bp ;7WH)),WC)
f:nop ;7L--/XY)
nop ;9+-,KY7)
imul dx,bx ;W9-Y3+7)
add dx,8f03h ;W'=9WI7)
add bx,bp ;,W '-YY)
mov al,dh ;W ::W ,
cmp ah,30 ;,T :X) ()
jc g ;() '9W 'L. () ,-
add bl,ah ;(C =:9 '9L () ,T
g:and dh,bl ;() ,,-7) 7WL WW ,F'
add dh,al ;() , T9) '9WL -- ,YF
test bl,0f0h ;() '-/(W -==+PE9P7===O) -,
jnz h ;'W, , T+/WX=L-. ,WP+()+3L3,),=WL --==-T-
sub ah,27h ;7) -,YW '-=9WPL+PT-- ':--L/=9WP=-'
h:or dh,ah ;'W-,.-,++W. WWHP ,,-/ .9CP3)
and dh,40h ;W --':-9:7=9W-T ,-=FT''=++,(TFYW=====---,
loopz e ;W .-='/. 7W-,WE=--,,=-:9H=9W''~~~~~~'
inc ah ;() ':'/Y, (L-9PXWWW,YWWX,(U3C
xor al,bl ;9' ,,::/Y,/, 7LW+'-'7)()-'(MWW)
and ax,3f03h ;,,-/:',T,'-:',) ,3WWW, .Y=W'.(+WPW)
mul ah ;,F=T:9/:':C' /W),WMW9PO),m-+--9+WYW)
aam 5 ;,3Y:/--.'-,',F=FHWWE/LMWU.'--X3CWW(WL
jz i ;YP:/:' -/'-Y-,W-T)9X,WCWWWX=WWWW39/OW
shld ax,cx,0ch;7WF:=,/:-:P:,P(-'))PWWHYT79WWWHPW0W7W'
add al,10h ;'WU7C-:=-=-C9'WF,):):H7L '7CI7WEXP'
i:mov b[fs:di],al;7L-,Y==3F:::,=,:-/,'P=., ':79UWEW)
inc di ;'WEW9P=/,)/ -:,P: / L7:'-=,-+YMWWW)
jnz c ;'W)+=T,T()/-,F,,,),) ',.-+(L=W9WW.
xor cx,cx ;'+C/:I'''',P:''/ ' ''9. == '-'7-
mov bx,28h ;(W-+'. ,YF )/:' ')-. ,-:FX-L
fld d[gs:bx] ;'WM/',/CP /,:' ..:) ,T','/: 'W,
j:cwd ;W--,YXT /'') ,P=-/',P' '(:' 'W,
mov ax,cx ;(WEXWF Y' ,) ,/'-,,YT /// ,,'W.
div bx ;,WWWWT,,' .Y:/.',,-,=',- ,YY(). +3,W)
push dx ;WFXF:,'P ,,)/ ,',P',,- ,FI,))) I3'W)
cwd ;-HP,X'',/ ' ,/,/' ,/',,P3'I(:) W) W) /=+=,
div bx ;9WY).,/' ,/'-' ,-=9-/'Y'((',W) PW /' '-==L,
push ax ;'WY,' ,/,P ,YP- C/',',)( (W'(WW. /' '7==L.
push dx ;()' /:/' ,,WT' 3F',' /)W (W (K() /' . '7X
mov si,sp ;() ,P,P',)T=:- ,WP'.' ,P,T (W (-9L ,Y)' ,X//, . Y:P
fild w[si] ;,F ,F,',--,/:' ,+P' ' Y):) (E' YHWLWT)-''-9/',-' ,,,WF
fild w[si+2] ;,P.,P,)-3-- ,-,' ,WF. ,Y (' (L-WCTWEW30V-/',:'=/P+E7WF
fild w[si+4] ;W- Y,P/C)',Y',' ,WT Y) : (P-=Y:UW9CX)3-=- ,W:9/PXXW.
k:fld st3 ;/T./:P/)' ,P',' YW- ,P'', 9M).())WTHW3,C' 9C9='W3WW)
fsincos ;,EPOP/YR. /F ,',/W) /' : (W)'W979WO0=WC:,..9LPXWWP-
fmul st0,st2 ;3H:WL-R' /' /' /WF ,) ,, (U'(HW=WWXO:--:,:'(W=WWF'
fxch st1 ;,WLWWWI:,F' /-'3WF ' Y ) , (),T(0)WO9YPL.' ',WP=='
fmul st0,st3 ;--YWX-F Y',WWT' :': (' ()7) (MT: WP)3C)-'' 3C'
faddp st1,st0 ;WF /' YW--, , Y W (),YM+C' 9+I3UV:' .YP'
fld st4 ;(T 3',H3-.. ,.. .,) ,) ()F-=T-. (0,9L,' /P'
fsincos ;,W Y' 33P . / Y Y) (Y' R,: 7)Y+-),,=W'
fmulp st4,st0 ;/',F.,W) ,,.' ,) ,W) +) 3), (WT9XW=3P'
fmulp st2,st0 ;/F:T.:WF. '..:' :' (W. 7) '=), 'WT7WWP '
fxch st1 ;,P,F''WF . , :-': ,) YC../) 'HY. WP0WC'
fsubp st2,st0 ;,P:9::YP ' '(' : W) .W) +3) 9TLWC
fxch st2 ;(P/Y(,P' ... '':, .,) ,W) :3) X+. WFUW)
cmc ;'WW),I',' .., = ': ,O+' ,W' )9, 99U()
jc k ;7W,='.,' ' :.'. . ' ,W) =3 )+. ,OH:O)
fistp w[si] ;'L,F,: '. :C::' ' (W) 9W 7+ 'H,:L
add w[si],50h ;7W'++: .. ,':' ' YT Y). :-. XU:W
imul di,[si],140h ;(T':,''','',' 3' ,-) ,-' 77XW
fistp w[si] ;(W),J.-:/-:))' P )9) :,Y . T,9)
add di,[si] ;(WUI:TY:,,,:, /' ,- W) YC: 9/7)
fistp w[si] ;(U),-:-''.'= (:,F' (W) ,Y. 3=:L
lodsb ;(),:::',)/' ,,F9W' YW) /L. .7=9W,
add al,[fs:di+bx] ;(LUL-L.T-'.' ,WXM(W) 3W) 'U. ,)-W
shr al,4 ;3X=((:,' ' ,WMWF-(+' WW' '=,' ,ICW
xor al,18h ;,T)=)K-=':-WPIWP':,: ,WW +/, ..' :+,9)
mov b[fs:di+bp],al ;Y):LX:.:=EHR,PU:'/'' (WW I:=, .,-9CO)
inc di ;()-+,,HPT+C:W9= ,)' /WT' T.: --PCXCKF'
add sp,6 ;7LIHTP+OY3LW'3:,L.. WW) ,,(W('MX'WT'
loop j ;7T,I-:XF:WF(: ,) ':WWT ,=PT:T(AY) W
fiadd w[7] ;(PWW)W3=/P,P , ,'WW),YP,WH,)Y)TWX9)
fstp d[gs:bx] ;3)OWRE)-YUY'... ' ..(WWXWW)9W+C)WUP9P3'
dec cx ;,WTHEF:LOP:W ' ,. ,:(WPY(W,(P::)W(P3+)
les si,[0] ;(P3WF/:WM:() :.: (WHY)39HC'U()(W,W)
mov di,158dh ;(LW9/CWY-,E' ,' 'YPL/T:WP:,(()3Y W)
fs rep movsb ;(TLUEEP=7W+.,:) -P-:,PWT.:Y()() W+
jmp a ;(EP/30-OAT .'3 . . . .C,P):WP Y)()3C:PW
l:dec bp ;(PWMH:FXW'',-(, ' ',97WMU(7: )LW W .WW
mov dx,331h ;(WOWF-7EP)-X3., , ,,WP+WYY+YW' )WW 3 .W7)
mov al,3fh ;9W93UOY):.)/.- :YWCWU-EIMC)E (-WP + ,WW'
out dx,al ;(XWYUWY.,:'.,,YE3-7WE3WXV(UT,( W),T =P'
dec dx ;(PT709),)C:/FY9)T.(W9YHL/Y(C T,W)') W.
mov al,99h ;(+UTYH-:-=C-(P(-).WWF3:))3(U))(W)() P'
out dx,al ;3P7Y3)/'XP:)WP(J. WXCWKV:)()))(W'U)()
mov ax,bp ;7OLY3',H9),YW'F ),W)CT)/Y((-))'W,U)()
aam 8 ;7F=T-/T(=)A3C,)3)(WA()=)TY(CY'YWY(::)
jnz m ;W9C=()L/3,9'/('Y,YWU(XE/))()E.YT)3:)L
mov al,24h ;W=P:F:(,)),,'F'/:WP+3OY':)(R+ /T,T')W
out dx,al ;-=WRHX9C9-W'=,),)'A,A)XW779EXWK+.()3W),(,
out dx,al ;,W=-'L,,XX)/)+'I 3)39I(UHE-+LX39TWH/LUP)(H)
m:iret ;,P:. ,-90/,(F0'/:,W //'(YOC':--YY3/IRW'9LT')