unrom.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. /*
  2. * UNROM Mapper - The TI-NESulator Project
  3. * unrom.h
  4. *
  5. * Created by Manoel TRAPIER.
  6. * Copyright (c) 2003-2007 986Corp. All rights reserved.
  7. *
  8. * $LastChangedDate: 2007-04-16 01:55:35 +0200 (lun, 16 avr 2007) $
  9. * $Author: godzil $
  10. * $HeadURL: file:///media/HD6G/SVNROOT/trunk/TI-NESulator/src/unrom.h $
  11. * $Revision: 39 $
  12. *
  13. */
  14. unsigned char unrom_load_vbank;
  15. void unrom_MapperWriteHook(register byte Addr, register byte Value);
  16. int unrom_InitMapper(NesCart * cart)
  17. {
  18. int i;
  19. set_prom_bank_16k(0xC000, 0);
  20. set_prom_bank_16k(0x8000, GETLAST16KBANK(cart)); /* Set the last one */
  21. if (Cart->VROMSize > 0)
  22. set_vrom_bank_8k(0x0000,0);
  23. unrom_load_vbank = 0;
  24. /* Register the write hook */
  25. for (i = 0x80; i < 0x100; i++)
  26. {
  27. set_page_wr_hook(i, unrom_MapperWriteHook);
  28. set_page_writeable(i, true);
  29. }
  30. return 0;
  31. }
  32. void unrom_MapperWriteHook(register byte Addr, register byte Value)
  33. {
  34. set_vrom_bank_8k(0x0000,Value);
  35. unrom_load_vbank = Value;
  36. }
  37. void unrom_MapperDump(FILE *fp)
  38. {
  39. fprintf(fp,"unrom: vbank:%d\n",unrom_load_vbank);
  40. }