3 function cpu_banksize_get(capacity)
5 return capacity * mega / cpu_banksize;
7 function ppu_banksize_get(capacity)
9 return capacity * mega / ppu_banksize;
11 function loopsize_get(flashsize, trans, size)
13 local trans_full = 3, trans_top = 1, trans_bottom = 2; //header.h enum transtype
17 loop = flashsize.full;
20 loop = flashsize.top[size];
23 loop = flashsize.bottom[size];
26 loop = {start = 0, end = 0};
31 function program(d, mapper, cpu_trans, cpu_size, ppu_trans, ppu_size)
33 if(board.mapper != mapper){
34 print("mapper number not connected");
37 local cpu_loop = loopsize_get(board.cpu_flashsize, cpu_trans, cpu_size);
38 local ppu_loop = loopsize_get(board.ppu_flashsize, ppu_trans, ppu_size);
39 local co_cpu = newthread(program_cpu);
40 local co_ppu = newthread(program_ppu);
42 if(cpu_trans != trans_empty){
45 if(ppu_trans != trans_empty){
50 co_cpu.call(d, cpu_loop);
52 if(ppu_trans != trans_empty){
53 co_ppu.call(d, ppu_loop);
55 program_main(d, co_cpu, co_ppu)