title: x86 asm graphics settings for resolutions higher than 640x480?
body: <p>I've just started using assembly language (felt like learning something new), and have run into a few questions (so far) that all the tutorials I've been looking through don't answer, or are too old to know.</p>
  
  <p>1) I've tried a few searches (maybe I just don't know the right keywords), but I can't find an updated list of graphics modes for changing screen resolutions, etc. The best I've found is: <a href="http://www.skynet.ie/~darkstar/assembler/tut6.html" rel="nofollow noreferrer">Assembler Tutorial</a>, and I'd hardly think that 640x480 is the best resolution assembly language can use. <strong>Does anyone know of a more updated tutorial I can use?</strong></p>
  
  <p><strong>Edit: Interrupt 10h is old, and doesn't quite support more than 640x480</strong></p>
  
  <p>2) Is it possible to "mov" a value from a variable to another variable without moving it to a register first? Example:</p>
  
  <pre><code>jmp start
    n1     dw 0
    n2     dw 0
    res    dw 0
  start:
    mov n1,5
    mov n2,6
    mov res,n1
    add res,n2
  ...etc...
  </code></pre>
  
  <p><strong>Edit: It is not possible. You cannot go from memory to memory without using registers.</strong></p>
  
  <p>3) Going with question 1, is there a way to detect what graphics mode a user is currently using, so that I can change it, and change it back after? (I assume there is, but am not sure how to do it.)</p>
  
  <p><strong>Edit: Need to query OS for graphics settings.</strong></p>