Arumana no Kiseki (FDS conversion) - rev en

Discuss hardware-related topics, such as development cartridges, CopyNES, PowerPak, EPROMs, or whatever.

Moderator: Moderators

Post Reply
User avatar
krzysiobal
Posts: 1037
Joined: Sun Jun 12, 2011 12:06 pm
Location: Poland
Contact:

Arumana no Kiseki (FDS conversion) - rev en

Post by krzysiobal »

Code: Select all

PRG:
  ROM 128 kB
  RAM 8 kB
CHR:
  RAM 8 kB
Bus conflicts: yes
Mirroring: hardwired to H

  
$4800: Register #1 (mask $F800)
   fedcba9876543210 
A~[01001.....A.BC..]
             | ||
             | |+-- IRQ/Counter:
             | ||     0=IRQs are enabled, counter clocks falling edges of M2.
             | ||       After 23680 edges (40960+5120+1280)/2, IRQ is fired and will be 
             | ||       self-acked after another 1280/2 edges (this game seems to use self-acking!)
             | ||     1=pending IRQ is acknowledged, IRQs are disabled, counter is halted and set to 0
             +-++-- used as latch for register #2 

$5000: Register #2 (mask $f800)
   fedcba9876543210 
A~[01010...........] DEF
                     |||
                     +++- ABC from $4800 is stored into DEF. DEF xor 0b101 will be used as bank at $8000 

Notes:
* All bits in both registers are set to 1 on powerup (thats how 74670 behaves on powerup)
* To write V to register #2, set ABC from register #1 to V and then write any value to any address range of register #2

Memory map:
 $6000 $8000 $c000
  RAM   ROM   ROM
        DEF   011
        xor
       0b101

PAL equations:
  nREGWR = (!M2) | (!CPU_nROMSEL) | (!CPU_A14) | (CPU_RnW) | (CPU_A13);
  
  PRG_A16 = (!REG_A5 & !CPU_A14);
  
  PRG_A15 = (REG_A3) | (CPU_A14);
  
  PRG_A14 = (!REG_A2) | (CPU_A14);
  
  WRAM_nCE = (!M2) | (!CPU_nROMSEL) | (!CPU_A14) | (!CPU_A13);
  
  nIRQ = (!M2_DIV1280) | (!M2_DIV5120) | (!M2_DIV40960);
Image Image Image Image Image Image Image Image Image

https://gofile.io/?c=ejR0XP
lidnariq
Posts: 11432
Joined: Sun Apr 13, 2008 11:12 am

Re: Arumana no Kiseki (FDS conversion) - rev en

Post by lidnariq »

How utterly bizarre. Using two 74'670s to obfuscate something that's just a simple latch...

For anyone else curious, 23680 cycles is a little over 208 scanlines.
NewRisingSun
Posts: 1510
Joined: Thu May 19, 2005 11:30 am

Re: Arumana no Kiseki (FDS conversion) - rev en

Post by NewRisingSun »

I shall assign NES 2.0 Mapper 548 for "CTC-15" (Almana no Kiseki - Co Tung Co. version).
User avatar
Banshaku
Posts: 2417
Joined: Tue Jun 24, 2008 8:38 pm
Location: Japan
Contact:

Re: Arumana no Kiseki (FDS conversion) - rev en

Post by Banshaku »

Does it means that it will be supported soon? This is one game I remember playing the pirate cart as a kid and can't wait to hear the non FDS version of the soundtrack :D
User avatar
aquasnake
Posts: 515
Joined: Fri Sep 13, 2019 11:22 pm

Re: Arumana no Kiseki (FDS conversion) - rev en

Post by aquasnake »

here's my verilog sourcecode:

begin
if (cpu_addr_in[14] & ~cpu_addr_in[13] & ~cpu_addr_in[12] & cpu_addr_in[11]) // $4800-4FFF
begin
r0[3:1] = {cpu_addr_in[5], cpu_addr_in[3:2]};
irq_cpu_control[0] = ~cpu_addr_in[2];
if (!irq_cpu_control[0]) begin
irq_cpu_value[14:0] = 0;
irq_cpu_out = 0;
end
end
if (cpu_addr_in[14] & ~cpu_addr_in[13] & cpu_addr_in[12] & ~cpu_addr_in[11]) // $5000-$57FF
prg_bank_a[3:1] = r0[3:1] ^ 3'b101;
end
kmg
Posts: 63
Joined: Tue Dec 07, 2021 10:12 pm

Re: Arumana no Kiseki (FDS conversion) - rev en

Post by kmg »

The gofile.io link doesn't seem to work any more. Could anyone be so kind as to repost this or point to somewhere it is archived?
Post Reply