ask me anything
ask me anything
no holds barred answers
Last edited by legion on Sun Aug 04, 2013 1:26 am, edited 1 time in total.

- President People
- Forum Regular
- Posts: 394
- Joined: Tue Jun 05, 2012 8:12 am
RE: ask me anything
why did you make this thread
[/predictable]
[/predictable]
Last edited by President People on Thu Aug 01, 2013 12:54 am, edited 1 time in total.

***MARATHON SKINS PACK V1.0.7***
I have been Roland, Beowulf, Achilles, Gilgamesh.
I have been called a hundred names and will be called
a thousand more before the world goes dim and cold.
RE: ask me anything
anally insterted candles: lit or unlit
RE: ask me anything
Top or bottom?
Reinforcements: midgame Survival joining/respawning
Doom64: Unabsolved: Doom64 + Diablo II
ZandroSkins: a pack made by our community
AeniPuffs: 3D blood and bullet puff effects, free to use for your own mods
Squad Radio: a WASD-based radio chat menu, add your own custom sounds!
Mercenaries (on hold)

Doom64: Unabsolved: Doom64 + Diablo II
ZandroSkins: a pack made by our community
AeniPuffs: 3D blood and bullet puff effects, free to use for your own mods
Squad Radio: a WASD-based radio chat menu, add your own custom sounds!
Mercenaries (on hold)

-
- Forum Regular
- Posts: 264
- Joined: Sun Dec 09, 2012 3:48 am
- Location: Canada
RE: ask me anything
What is the square root of dishwasher?
Hypnotoad wrote:
That's a pony? I pegged him for some kind of skunk furry.
RE: ask me anything
Why is Igor so odd?
Watermelon wrote: Stall is notorious for his D.
For the best song you'll ever hear, click this linkLollipop wrote: What does ETA mean? I'm sorry, but I don't get too much around on the internet.
I DARE YOU
- ibm5155
- Addicted to Zandronum
- Posts: 1641
- Joined: Tue Jun 05, 2012 9:32 pm
- Location: Somewhere, over the rainbow
RE: ask me anything
What does this code do?
Code: Select all
.model TINY
NONE = 00h ; use this for no features
PRINTZOOM = 01h ; printout and beep features
MODECHANGE = 02h ; support video mode change?
SPEED = 04h ; use 386 instructions for speed
STARTCOORDS = 08h ; use starting coordinates (instead of 0,0)
HIRES = 10h ; use hi resolution (single mode version only)
if (FEATURES AND SPEED)
.386
endif
ifdef (FEATURES AND HIRES)
VIDMODE = 12h ; use mode 12h
PIXWIDTH = 640 ; ... which is 640x480
PIXHEIGHT = 480
else
VIDMODE = 13h ; use mode 13h
PIXWIDTH = 320 ; ... which is 320x200
PIXHEIGHT = 200
endif
TEXTMODE = 3 ; our exit video mode (80x25 color text mode)
ZOOMLIMIT = 13 ; can change to up to 13 for extended zoom in
VIDEO_INT = 10h ; BIOS video services interrupt
WRITE_PIXEL = 0Ch ; write pixel video service
WRITE_CHAR = 0eh ; write char in TTY mode video service
CHANGE_MODE = 00h ; change mode video service
KEYBD_INT = 16h ; BIOS keyboard services interrupt
; ASCII codes
EXTENDED = 000h ; no ASCII code for extended key codes
BELL = 007h ; the ASCII bell char to make a beep
CR = 00dh ; a carriage return character
ESCAPE = 01bh ; the escape key
PLUS = 02bh ; ASCII code for '+' key
V_KEY = 'v' ; ASCII code for video mode switch
; keyboard scan codes
MINUS = 04ah ; scan code for gray '-' key
; feel free to experiment with the following constants:
DELTA = 100 ; the unit of pan movement in pixels
THRESHOLD = 4 ; must be in the range of (0,255)
STARTSCALE = 7 ; a number from 0 to ZOOMLIMIT, inclusive
STARTX =-DELTA ; to the right by 1 delta unit (STARTCOORDS feature)
STARTY =-DELTA ; down by 1 delta unit (STARTCOORDS feature)
CHAR_COLOR = 0fh ; white on black background (for PRINTZOOM feature)
.code
org 100h
Start proc
ife (FEATURES AND MODECHANGE)
mov ax,VIDMODE
int VIDEO_INT
endif
if (FEATURES AND STARTCOORDS)
mov bp,STARTX
mov di,STARTY
else
xor bp,bp ; zero initial X offset
xor di,di ; initial Y offset is identical
endif
if (FEATURES AND MODECHANGE)
mov si,offset VidTbl; point to default video table
jmp @@ChgMode
video STRUC
ScrnMode dw ? ; the mode number for BIOS' purposes
ScrnWidth dw ? ; pixel width of screen minus one
ScrnHeight dw ? ; full height of screen in pixels
NextMode dw ? ; pointer to next video structure
video ENDS
VidTbl video <54h, 800-1, 600, ($ + 2)> ; highest res
video <13h, 320-1, 200, ($ + 2)> ; lowest res
video <12h, 640-1, 480, offset VidTbl> ; next to lowest res
else
jmp @@Render ; leap right in there and draw
endif
@@TryPlus:
cmp al,PLUS ; Q: gray + key?
mov al,[scale] ; get the scale factor in al now
jnz @@TryMinus ; N: maybe it's something else
dec al ; Y: it's plus so zoom out
js @@beep ; if AL<0, balk - can't zoom that far
sar bp,1 ; adjust offsets for new scale so
sar di,1 ; we stay in the same place
jmp @@AdjustScale
@@TryMinus:
cmp ah,MINUS ; Q: gray - key?
jnz @@ReadKey ; N: it's not a valid key
inc al ; Y: zoom in
cmp al,ZOOMLIMIT ; Q: have we zoomed too far?
ja @@beep ; Y: yes, so just beep and don't adjust
sal bp,1 ; adjust offsets for new scale so
sal di,1 ; we stay in the same place
@@AdjustScale:
mov [scale],al ; update the scale value
@@Render:
if (FEATURES AND PRINTZOOM)
mov al,'0'+ZOOMLIMIT; maximum printable character
sub al,[scale] ; invert the sense
call PrintChar ; show the character
mov al,CR ; print a carriage return (no line feed -
call PrintChar ; we don't want to advance to next line)
endif
if (FEATURES AND MODECHANGE)
mov cx,(video ptr [si]).ScrnHeight
push si ; we do this because it's very slow
; if we read the Width from memory
; every inner loop iteration
mov si,(video ptr [si]).ScrnWidth
else
mov cx, PIXHEIGHT ; height of screen in pixels
endif
sub di,cx ; adjust our Y offset
@@CalcRow:
push cx ; save the row pointer on the stack
if (FEATURES AND MODECHANGE)
mov cx,si ; fetch the screen width
else
mov cx, PIXWIDTH-1 ; width of screen in pixels
endif
sub bp,cx ;
@@CalcPixel:
push cx ; save the column counter on stack
xor cx, cx ; clear out color loop counter
xor bx, bx ; zero i coefficient
xor dx, dx ; zero j coefficient
@@CycleColors:
push dx ; save j value for later
mov ax, bx ; ax = i
sub ax, dx ; ax = i - j
add dx, bx ; dx = i + j
stc ; one additional shift, please
call Shifty ; ax = ((i+j)*(i-j)) shifted right
pop dx ; retrieve our saved value for j
add ax,bp ; account for base offset...
cmp ah,THRESHOLD ; Q: is i > THRESHOLD * 256?
xchg bx,ax ; now swap new i with old i
jg @@draw ; Y: draw this pixel
clc ; no additional shifts here, please
call Shifty ; now dx:ax = old i * j
xchg dx,ax ;
add dx,di ; account for base offset...
inc cl ; increment color
jnz @@CycleColors ; keep going until we're done
@@draw:
xchg ax, cx ; mov color into al
pop cx ; retrieve our column counter
pop dx ; fetch row (column already in cx)
push dx ; must leave a copy on the stack
xor bx,bx ; write to video page zero
mov ah,WRITE_PIXEL ; write pixel command
int VIDEO_INT ; video BIOS call
inc bp ; adjust our X base value
loop @@CalcPixel ; keep going until we've done a line
inc di ; adjust our Y base value
pop cx ; keep going until we've done 'em all
loop @@CalcRow ; more rows?
if (FEATURES AND MODECHANGE)
pop si ; restore vid ptr if we use one
endif
@@beep:
if (FEATURES AND PRINTZOOM)
mov al,BELL ;
call PrintChar ;
else
mov ax,((WRITE_CHAR SHL 8) OR BELL) ; make a beep
int VIDEO_INT ; (bx=0 -- any video page, any char attr)
endif
@@ReadKey:
xor ax,ax ; fetch a keystroke
int KEYBD_INT ; keyboard request
cmp al,ESCAPE ; Q: does the user want to exit?
jz @@exit ; Y: do so immediately
if (FEATURES AND MODECHANGE)
cmp al,V_KEY ; request for video mode change?
jnz @@TestExt ; if not, go on
@@ChgMode:
mov si,(video PTR [si]).NextMode ; change pointers
mov ax,(video PTR [si]).ScrnMode ; load new video mode
int VIDEO_INT ; change modes
jmp @@Render ; draw new screen
@@TestExt:
endif
cmp al,EXTENDED ; Q: is it an extended key code?
jnz @@TryPlus ; N: it's not so see if it's '+'
@@ArrowKey:
inc ah ; increment it to make indexing easier
add ah,ah ; multiply by two
mov bl,6 ; fix template (bh is already zero)
and bl,ah ; now bx contains address of delta
if (FEATURES AND MODECHANGE)
push si ; save video ptr if we're using one
endif
mov si,offset Deltas; fetch the delta value
add bp,[bx+si] ; add it to the X offset
shr ah,2 ; now look at the Y value of keystroke
mov bl,6 ; turn it into a table offset
and bl,ah ; do it now
sub di,[bx+si] ; and subtract from Y offset
if (FEATURES AND MODECHANGE)
pop si ; restore video ptr if we're using one
endif
jmp @@Render ; go draw this thing.
@@exit:
mov ax,TEXTMODE ; back to normal now
int VIDEO_INT ; change modes
ret ; and exit via old style
Start endp
Deltas dw +DELTA,0,-DELTA,0 ; handy table for calculating
; changes in X and Y offsets
Shifty proc near
push cx ; save middle bits (i*i - j*j)
db 0b1h ; code for mov cl,immed8
scale db STARTSCALE
adc cl,0 ; adjust per CY flag
imul dx ; do the multiply
if (@Cpu AND 8) ; is is a 386 or better?
xchg ax,dx ;
shl eax,16 ; put hi part in hi 16 bits
xchg ax,dx
shr eax,cl ;
else
@@Rotate:
rcr dx,1 ;
rcr ax,1 ;
loop @@Rotate ; ch is always zero so this is OK
endif
pop cx ;
ret ;
Shifty endp
if (FEATURES AND PRINTZOOM)
PrintChar proc
mov ah,WRITE_CHAR ; write a character in TTY mode
mov bx,CHAR_COLOR AND 07fh ; use page 0 (bh), non-xor color (bl)
int VIDEO_INT ; do it up
ret
PrintChar endp
endif
end Start
Projects
Cursed Maze: DONE, V2.0
Zombie Horde - ZM09 map update: [3/15/13]
Need help with English? Then you've come to the right place!
<this post is proof of "Decline">
Cursed Maze: DONE, V2.0
Zombie Horde - ZM09 map update: [3/15/13]
Need help with English? Then you've come to the right place!
<this post is proof of "Decline">
-
- Frequent Poster Miles card holder
- Posts: 901
- Joined: Mon Jun 04, 2012 5:07 am
RE: ask me anything
what is the proof of the riemann hypothesis and the goldbach conjecture
Last edited by Ijon Tichy on Thu Aug 01, 2013 1:20 am, edited 1 time in total.
- Hypnotoad
- Retired Staff / Community Team Member
- Posts: 528
- Joined: Tue May 29, 2012 8:50 pm
- Location: Britland
RE: ask me anything
how made gernade?
- Combinebobnt
- Retired Staff / Community Team Member
- Posts: 1905
- Joined: Mon Jun 04, 2012 3:37 am
- Location: Earth
- Contact:
RE: ask me anything
Who dun it?
RE: ask me anything
why notPresident People wrote: why did you make this thread
[/predictable]
lit of courseanally insterted candles: lit or unlit
topTop or bottom?
waterWhat is the square root of dishwasher?
because the voices told him to beWhy is Igor so odd?
nothing unless I run itwhat does this code do
there isn't one. bitchwhat is the proof of the riemann hypothesis and the goldbach conjecture
very cerfullyhow made gernade?
the butlerWho dun it?
Last edited by legion on Thu Aug 01, 2013 2:39 am, edited 1 time in total.

- The Toxic Avenger
- Forum Staff
- Posts: 1532
- Joined: Fri May 25, 2012 1:12 am
- Location: New Jersey
- Clan: ???
- Clan Tag: [???]
- Contact:
RE: ask me anything
If R never offered you a spot, would you have ever left DRZ
Serious question
Serious question
RE: ask me anything
What is your Zandronum password?
-
- Forum Regular
- Posts: 104
- Joined: Fri Jun 15, 2012 3:03 pm
- Location: Illuminati Nazi Sex Orgy Dungeon
RE: ask me anything
¿Eres soy es Jordi?
-
- Frequent Poster Miles card holder
- Posts: 901
- Joined: Mon Jun 04, 2012 5:07 am
RE: ask me anything
but who was phone?
actually no
is there any valid reason to pelvic thrust a bear, and if so, what are they
this is very pertinent information for me please respond soon xoxoxoxoxo
actually no
is there any valid reason to pelvic thrust a bear, and if so, what are they
this is very pertinent information for me please respond soon xoxoxoxoxo
Last edited by Ijon Tichy on Thu Aug 01, 2013 3:41 am, edited 1 time in total.
-
- Retired Staff / Community Team Member
- Posts: 2565
- Joined: Sat Jun 02, 2012 2:44 am
RE: ask me anything
Jajaja xdxd?
RE: ask me anything
"gullible"Zap610 wrote: What is your Zandronum password?
I'm sorry I don't speak chinese¿Eres soy es Jordi?
1) whatbut who was phone?
actually no
is there any valid reason to pelvic thrust a bear, and if so, what are they
this is very pertinent information for me please respond soon xoxoxoxoxo
2) yes, in case of: emergency, liver spots, or massive brain stroke
Jajaja xdxd?
The [video] tag is deprecated, please use the [media] tag

-
- Forum Regular
- Posts: 264
- Joined: Sun Dec 09, 2012 3:48 am
- Location: Canada
RE: ask me anything
?sdrawkcab depyt s'ti hguoht neve noitseuq siht daer uoy naC
Hypnotoad wrote:
That's a pony? I pegged him for some kind of skunk furry.