Mirror of CollapseOS
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

70 lines
703B

  1. jp test
  2. .inc "core.asm"
  3. .inc "parse.asm"
  4. zasmGetPC:
  5. ret
  6. testNum: .db 1
  7. sFoo: .db "Foo", 0
  8. saB: .db "aB", 0
  9. s99: .db "99", 0
  10. test:
  11. ld hl, 0xffff
  12. ld sp, hl
  13. ld a, '8'
  14. call parseHex
  15. jp c, fail
  16. cp 8
  17. jp nz, fail
  18. call nexttest
  19. ld a, 'e'
  20. call parseHex
  21. jp c, fail
  22. cp 0xe
  23. jp nz, fail
  24. call nexttest
  25. ld a, 'x'
  26. call parseHex
  27. jp nc, fail
  28. call nexttest
  29. ld hl, s99
  30. call parseHexPair
  31. jp c, fail
  32. cp 0x99
  33. jp nz, fail
  34. call nexttest
  35. ld hl, saB
  36. call parseHexPair
  37. jp c, fail
  38. cp 0xab
  39. jp nz, fail
  40. call nexttest
  41. ld hl, sFoo
  42. call parseHexPair
  43. jp nc, fail
  44. call nexttest
  45. ; success
  46. xor a
  47. halt
  48. nexttest:
  49. ld a, (testNum)
  50. inc a
  51. ld (testNum), a
  52. ret
  53. fail:
  54. ld a, (testNum)
  55. halt