com.s 279 B

12345678910111213141516171819202122232425
  1. .define .com
  2. .sect .text
  3. .sect .rom
  4. .sect .data
  5. .sect .bss
  6. .sect .text
  7. ! Complement bytes on top of stack.
  8. ! Expects in de-registers: number of bytes
  9. .com: pop h
  10. shld .retadr
  11. lxi h,0
  12. dad sp
  13. 1: mov a,m
  14. cma
  15. mov m,a
  16. inx h
  17. dcx d
  18. mov a,e
  19. ora d
  20. jnz 1b
  21. lhld .retadr
  22. pchl