?login_element?

Subversion Repositories NedoOS

Rev

Rev 1938 | Blame | Compare with Previous | Last modification | View Log | Download

  1.     module DialogBox
  2.  
  3. inputBox:
  4.     xor a : ld (inputBuffer), a
  5. .noclear
  6.     call drawBox
  7. .loop
  8.     ld de, #0B05 : call TextMode.gotoXY
  9.     ld hl, inputBuffer : call TextMode.printZ
  10.     ld a, MIME_INPUT : call TextMode.putC : ld a, ' ' : call TextMode.putC
  11. .checkkey
  12.     call Console.peekC
  13.     cp 00 :  jp z, .checkkey
  14.     cp CR : ret z
  15.    
  16.     IFNDEF MSX
  17.     dup 11
  18.     halt
  19.     edup
  20.     ENDIF
  21.  
  22.     cp Console.BACKSPACE : jr z, .removeChar
  23.     cp SPACE : jr c, .checkkey
  24. .putC
  25.     ld e, a
  26.     xor a : ld hl, inputBuffer, bc, #ff : cpir
  27.     ld (hl), a : dec hl : ld (hl), e
  28.     jr .loop
  29. .removeChar
  30.     xor a
  31.     ld hl, inputBuffer, bc, #ff : cpir
  32.     push hl
  33.         ld de, inputBuffer + 1
  34.         or a : sbc hl, de
  35.         ld a, h : or l
  36.     pop hl
  37.     jr z, .loop
  38.     xor a
  39.     dec hl : dec hl : ld (hl), a
  40.     jr .loop
  41.  
  42.  
  43. namedownload
  44.     IFDEF NEDOOS
  45.                 db "..",92,"downloads",92
  46.     ENDIF
  47.  
  48. inputBuffer ds 80
  49.  
  50. msgBox:
  51.     call msgNoWait
  52.     ld b, 150
  53. .loop
  54.     halt
  55.     djnz .loop
  56.     ret
  57.  
  58. msgNoWait:
  59.     push hl
  60.     call drawBox
  61.     pop hl
  62.     jp TextMode.printZ
  63.  
  64. drawBox:
  65.     ld h, #0a, a, BORDER_TOP
  66.     call TextMode.fillLine
  67.     ld h, #0b, a, ' '
  68.     call TextMode.fillLine
  69.     ld h, #0c, a, BORDER_BOTTOM
  70.     call TextMode.fillLine
  71.     ld a, #0a
  72.     call TextMode.highlightLine
  73.     ld a, #0c
  74.     call TextMode.highlightLine
  75.     ld de,#0B03
  76.     call TextMode.gotoXY
  77.     ret
  78.     endmodule
  79.