?login_element?

Subversion Repositories NedoOS

Rev

Blame | Last modification | View Log | Download

  1. #ifndef included_div16
  2. #define included_div16
  3. divide16:
  4. ;max: 958cc
  5. ;min: 663cc
  6. ;avg: 783.25cc
  7.   xor a
  8.   add hl,hl \ jp c,div16_0_2
  9.   sbc hl,bc \ jr nc,$+3 \ add hl,bc \ rla \ add hl,hl \ jp c,div16_1_2
  10. div16_1_1:
  11.   sbc hl,bc \ jr nc,$+3 \ add hl,bc \ rla \ add hl,hl \ jp c,div16_2_2
  12. div16_2_1:
  13.   sbc hl,bc \ jr nc,$+3 \ add hl,bc \ rla \ add hl,hl \ jp c,div16_3_2
  14. div16_3_1:
  15.   sbc hl,bc \ jr nc,$+3 \ add hl,bc \ rla \ add hl,hl \ jp c,div16_4_2
  16. div16_4_1:
  17.   sbc hl,bc \ jr nc,$+3 \ add hl,bc \ rla \ add hl,hl \ jp c,div16_5_2
  18. div16_5_1:
  19.   sbc hl,bc \ jr nc,$+3 \ add hl,bc \ rla \ add hl,hl \ jp c,div16_6_2
  20. div16_6_1:
  21.   sbc hl,bc \ jr nc,$+3 \ add hl,bc \ rla \ add hl,hl \ jp c,div16_7_2
  22. div16_7_1:
  23.   sbc hl,bc \ jr nc,$+3 \ add hl,bc \ rla \ add hl,hl \ jp c,div16_8_2
  24. div16_8_1:
  25.   ld d,a
  26.   xor a
  27.   sbc hl,bc \ jr nc,$+3 \ add hl,bc \ rla \ add hl,hl \ jr c,div16_9_2
  28. div16_9_1:
  29.   sbc hl,bc \ jr nc,$+3 \ add hl,bc \ rla \ add hl,hl \ jr c,div16_10_2
  30. div16_10_1:
  31.   sbc hl,bc \ jr nc,$+3 \ add hl,bc \ rla \ add hl,hl \ jr c,div16_11_2
  32. div16_11_1:
  33.   sbc hl,bc \ jr nc,$+3 \ add hl,bc \ rla \ add hl,hl \ jr c,div16_12_2
  34. div16_12_1:
  35.   sbc hl,bc \ jr nc,$+3 \ add hl,bc \ rla \ add hl,hl \ jr c,div16_13_2
  36. div16_13_1:
  37.   sbc hl,bc \ jr nc,$+3 \ add hl,bc \ rla \ add hl,hl \ jr c,div16_14_2
  38. div16_14_1:
  39.   sbc hl,bc \ jr nc,$+3 \ add hl,bc \ rla \ add hl,hl \ jr c,div16_15_2
  40. div16_15_1:
  41.   add a,a
  42.   ld e,a
  43.   sbc hl,bc \ ret nc \ add hl,bc \ inc e \ ret
  44.  
  45. div16_0_2:
  46.   add a,a \ sbc hl,bc \ add hl,hl \ jp nc,div16_1_1
  47. div16_1_2:
  48.   add a,a \ sbc hl,bc \ add hl,hl \ jp nc,div16_2_1
  49. div16_2_2:
  50.   add a,a \ sbc hl,bc \ add hl,hl \ jp nc,div16_3_1
  51. div16_3_2:
  52.   add a,a \ sbc hl,bc \ add hl,hl \ jp nc,div16_4_1
  53. div16_4_2:
  54.   add a,a \ sbc hl,bc \ add hl,hl \ jp nc,div16_5_1
  55. div16_5_2:
  56.   add a,a \ sbc hl,bc \ add hl,hl \ jp nc,div16_6_1
  57. div16_6_2:
  58.   add a,a \ sbc hl,bc \ add hl,hl \ jp nc,div16_7_1
  59. div16_7_2:
  60.   add a,a \ sbc hl,bc \ add hl,hl \ jr nc,div16_8_1
  61. div16_8_2:
  62.  
  63.   ld d,a
  64.   xor a \ sbc hl,bc \ add hl,hl \ jr nc,div16_9_1
  65. div16_9_2:
  66.   add a,a \ sbc hl,bc \ add hl,hl \ jr nc,div16_10_1
  67. div16_10_2:
  68.   add a,a \ sbc hl,bc \ add hl,hl \ jr nc,div16_11_1
  69. div16_11_2:
  70.   add a,a \ sbc hl,bc \ add hl,hl \ jr nc,div16_12_1
  71. div16_12_2:
  72.   add a,a \ sbc hl,bc \ add hl,hl \ jr nc,div16_13_1
  73. div16_13_2:
  74.   add a,a \ sbc hl,bc \ add hl,hl \ jr nc,div16_14_1
  75. div16_14_2:
  76.   add a,a \ sbc hl,bc \ add hl,hl \ jr nc,div16_15_1
  77. div16_15_2:
  78.   add a,a \ ld e,a \ sbc hl,bc \ ret
  79. #endif
  80.