?login_element?

Subversion Repositories NedoOS

Rev

Rev 1601 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download

  1. ; BC - line count
  2.  
  3. findLine:
  4.     ld hl, outputBuffer
  5.     ld a,b
  6.     or c
  7.     jp z, .checkEmpty
  8. .preloop
  9.     ld d,13
  10. .loop
  11.     ld a, (hl) : and a : jp z, .nope
  12.     cp d : inc hl : jp z, .checkLF  ;13
  13.     cp 10 : jp z, .nextCheck     ;10
  14.     jp .loop
  15. .nextCheck
  16.     and a : jp z, .nope
  17.     dec bc
  18.     ld e,a
  19.     ld a,b
  20.     or c
  21.     ld a,e
  22.     jp nz, .loop
  23.     ret
  24. .checkLF
  25.     ld a, (hl)
  26.     cp 10 : jp nz, .nextCheck    ;10
  27.     inc hl
  28.     jp  .nextCheck
  29. .checkEmpty
  30.     ld a, (hl) : and a : ret nz
  31. .nope
  32.     ld hl, 0 : ret
  33.  
  34.  
  35.     /*
  36. findLine:
  37.     ld de,bc
  38.  
  39.     ld hl, outputBuffer
  40.     xor a : or b : jr z, .checkEmpty
  41.  
  42.  
  43.     ld b,e
  44.     dec de
  45.     inc d
  46.  
  47.  
  48. .loop
  49.     ld a, (hl) : and a : jr z, .nope
  50.     cp 13 : inc hl : jr z, .checkLF
  51.     cp 10 : jr z, .nextCheck
  52.     jr .loop
  53. .nextCheck
  54.     and a : jr z, .nope
  55.     djnz .loop
  56.     dec d
  57.     jp nz, .loop
  58.     ret
  59. .checkLF
  60.     ld a, (hl)
  61.     cp 10 : jr nz, .nextCheck
  62.     inc hl
  63.     jr  .nextCheck
  64. .checkEmpty
  65.     ld a, (hl) : and a : ret nz
  66. .nope
  67.     ld hl, 0 : ret
  68.     */