Advertisement
PT_

Untitled

PT_
Apr 4th, 2017
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.01 KB | None | 0 0
  1. #include "ti84pce.inc"
  2.  
  3. .db tExtTok, tAsm84CECmp
  4. .org UserMem
  5.  
  6. start:
  7. di
  8. ld a, 0D1h
  9. ld mb, a
  10. call.lis fUnlockFlash - 0D10000h
  11. ld hl, (_ParseOn + 1)
  12. ld de, 66
  13. add hl, de
  14. ld hl, (hl)
  15. ld de, 6
  16. add hl, de
  17. ld hl, (hl)
  18. ld de, 106
  19. add hl, de
  20. push hl
  21. ld h, d
  22. ld l, d
  23. ld de, vRAM
  24. ld bc, $FFFF
  25. ldir
  26. pop hl
  27. push hl
  28. pop de
  29. ld d, b
  30. ld e, b ; DE = 0B0000
  31. sbc hl, de ; HL = 0BXXXX - 0B0000 = 00XXXX
  32. ld bc, vRAM
  33. add hl, bc
  34. ld bc, 02BB57Ch
  35. ld (hl), bc
  36. call _SetAToDEU
  37. push de
  38. call fMemorySafeErase
  39. pop de
  40. ld hl, vRAM
  41. ld bc, $FFFF
  42. call _WriteFlash
  43. call.lis fLockFlash - 0D10000h
  44. ld a, 0D0h
  45. ld mb, a
  46. ret
  47.  
  48. .assume ADL=0
  49. fUnlockFlash:
  50. ld a, 08Ch
  51. out0 (024h), a
  52. ld c, 4
  53. in0 a, (6)
  54. or c
  55. out0 (6), a
  56. out0 (028h), c
  57. ret.l
  58. fLockFlash:
  59. xor a, a
  60. out0 (028h), a
  61. in0 a, (6)
  62. res 2, a
  63. out0 (6), a
  64. ld a, 088h
  65. out0(024h), a
  66. ret.l
  67. .assume ADL=1
  68.  
  69. fMemorySafeErase:
  70. ld bc,$0000F8
  71. push bc
  72. jp _EraseFlashSector
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement