Compare commits

..

No commits in common. "34e9090446967c291453715ee3248c9df24e68c3" and "797ab0c8438b9aa495123f04d5a9c3edf2e3e652" have entirely different histories.

10 changed files with 187 additions and 32 deletions

View File

@ -87,6 +87,8 @@ namespace AxibugEmuOnline.Client
public Mapper START = new Mapper(EnumButtonType.START); public Mapper START = new Mapper(EnumButtonType.START);
public Mapper MIC = new Mapper(EnumButtonType.MIC); public Mapper MIC = new Mapper(EnumButtonType.MIC);
public EnumButtonType GetButtons() public EnumButtonType GetButtons()
{ {
EnumButtonType res = 0; EnumButtonType res = 0;

View File

@ -1,4 +1,9 @@
namespace VirtualNes.Core using Codice.CM.Client.Differences;
using System;
using RECTANGLE = VirtualNes.Core.APU_VRC6.RECTANGLE;
using SAWTOOTH = VirtualNes.Core.APU_VRC6.SAWTOOTH;
namespace VirtualNes.Core
{ {
public class APU_N106 : APU_INTERFACE public class APU_N106 : APU_INTERFACE
{ {
@ -139,7 +144,7 @@
int temp = channel_use * (8 - ch.databuf) * 4 * 45; int temp = channel_use * (8 - ch.databuf) * 4 * 45;
if (temp == 0) if (temp == 0)
return 0; return 0;
return (int)(256.0 * cpu_clock * 12.0 * ch.freq / ((double)0x40000 * temp)); return (int)(256.0 * (double)cpu_clock * 12.0 * ch.freq / ((double)0x40000 * temp));
} }
return 0; return 0;

View File

@ -1,4 +1,5 @@
using VirtualNes.Core; using Codice.CM.Client.Differences;
using VirtualNes.Core;
namespace VirtualNes namespace VirtualNes
{ {

View File

@ -1,6 +1,7 @@
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
// Mapper173 Subor // // Mapper173 Subor //
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
using Codice.CM.Client.Differences;
using VirtualNes.Core.Debug; using VirtualNes.Core.Debug;
using static VirtualNes.MMU; using static VirtualNes.MMU;
using BYTE = System.Byte; using BYTE = System.Byte;
@ -91,7 +92,7 @@ namespace VirtualNes.Core
irq_repeat = (byte)(data & 0x01); irq_repeat = (byte)(data & 0x01);
irq_enable = (byte)(data & 0x02); irq_enable = (byte)(data & 0x02);
irq_occur = 0; irq_occur = 0;
if (irq_enable != null) if (irq_enable!= null)
{ {
irq_counter = irq_latch; irq_counter = irq_latch;
} }
@ -108,7 +109,7 @@ namespace VirtualNes.Core
case 0x4035: case 0x4035:
reg[7] = data; reg[7] = data;
irq_latch = (irq_latch & 0x00FF) | (data << 8); irq_latch = (irq_latch & 0x00FF) | ((ushort)data << 8);
break; break;
case 0x4040: case 0x4040:
SetPROM_4K_Bank(0x8000, data & 0x7F); SetPROM_4K_Bank(0x8000, data & 0x7F);
@ -163,20 +164,20 @@ namespace VirtualNes.Core
public override void HSync(int scanline) public override void HSync(int scanline)
{ {
// if( (scanline >= 0 && scanline <= 239) ) { // if( (scanline >= 0 && scanline <= 239) ) {
// if( nes.ppu.IsDispON() ) { // if( nes.ppu.IsDispON() ) {
// if( irq_enable ) { // if( irq_enable ) {
// irq_enable = 0; // irq_enable = 0;
/// nes.cpu.SetIRQ( IRQ_MAPPER ); /// nes.cpu.SetIRQ( IRQ_MAPPER );
// } // }
// } // }
// } // }
} }
public override void Clock(int cycles) public override void Clock(int cycles)
{ {
if (irq_enable != 0) if (irq_enable!= 0)
{ {
irq_counter -= cycles; irq_counter -= cycles;
if (irq_counter <= 0) if (irq_counter <= 0)

View File

@ -1,7 +1,12 @@
using Codice.CM.Client.Differences;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.IO; using System.IO;
using System.Runtime.ConstrainedExecution;
using System.Runtime.InteropServices.ComTypes;
using System.Security.Cryptography;
using System.Text; using System.Text;
using UnityEngine;
using VirtualNes.Core.Debug; using VirtualNes.Core.Debug;
namespace VirtualNes.Core namespace VirtualNes.Core
@ -1223,7 +1228,7 @@ namespace VirtualNes.Core
return; return;
} }
if ((m_TapeCycles -= cycles) > 0) if ((m_TapeCycles -= (double)cycles) > 0)
return; return;
m_TapeCycles += (nescfg.CpuClock / 32000.0); m_TapeCycles += (nescfg.CpuClock / 32000.0);

View File

@ -1,4 +1,6 @@
using System.Collections.Generic; using Codice.CM.Client.Differences;
using System;
using System.Collections.Generic;
namespace VirtualNes.Core namespace VirtualNes.Core
{ {

View File

@ -1,5 +1,8 @@
using System; using Codice.CM.Client.Differences;
using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices; using System.Runtime.InteropServices;
using UnityEngine.UIElements;
namespace VirtualNes.Core namespace VirtualNes.Core
{ {

View File

@ -1,4 +1,7 @@
namespace VirtualNes.Core using Codice.CM.Client.Differences;
using System;
namespace VirtualNes.Core
{ {
public struct CTRSTAT : IStateBufferObject public struct CTRSTAT : IStateBufferObject
{ {

View File

@ -1,8 +1,21 @@
{ {
"dependencies": { "dependencies": {
"com.unity.2d.sprite": "1.0.0", "com.unity.2d.sprite": "1.0.0",
"com.unity.ide.visualstudio": "2.0.22", "com.unity.2d.tilemap": "1.0.0",
"com.unity.ads": "3.7.5",
"com.unity.analytics": "3.6.12",
"com.unity.collab-proxy": "1.15.15",
"com.unity.editorcoroutines": "1.0.0",
"com.unity.ide.rider": "3.0.13",
"com.unity.ide.visualstudio": "2.0.14",
"com.unity.ide.vscode": "1.2.5",
"com.unity.purchasing": "4.1.3",
"com.unity.test-framework": "1.1.31",
"com.unity.textmeshpro": "3.0.6",
"com.unity.timeline": "1.6.4",
"com.unity.ugui": "1.0.0", "com.unity.ugui": "1.0.0",
"com.unity.visualscripting": "1.7.6",
"com.unity.xr.legacyinputhelpers": "2.1.9",
"com.unity.modules.ai": "1.0.0", "com.unity.modules.ai": "1.0.0",
"com.unity.modules.androidjni": "1.0.0", "com.unity.modules.androidjni": "1.0.0",
"com.unity.modules.animation": "1.0.0", "com.unity.modules.animation": "1.0.0",

View File

@ -6,15 +6,64 @@
"source": "builtin", "source": "builtin",
"dependencies": {} "dependencies": {}
}, },
"com.unity.ext.nunit": { "com.unity.2d.tilemap": {
"version": "1.0.6", "version": "1.0.0",
"depth": 2, "depth": 0,
"source": "builtin",
"dependencies": {}
},
"com.unity.ads": {
"version": "3.7.5",
"depth": 0,
"source": "registry",
"dependencies": {
"com.unity.ugui": "1.0.0"
},
"url": "https://packages.unity.cn"
},
"com.unity.analytics": {
"version": "3.6.12",
"depth": 0,
"source": "registry",
"dependencies": {
"com.unity.ugui": "1.0.0"
},
"url": "https://packages.unity.cn"
},
"com.unity.collab-proxy": {
"version": "1.15.15",
"depth": 0,
"source": "registry",
"dependencies": {
"com.unity.services.core": "1.0.1"
},
"url": "https://packages.unity.cn"
},
"com.unity.editorcoroutines": {
"version": "1.0.0",
"depth": 0,
"source": "registry", "source": "registry",
"dependencies": {}, "dependencies": {},
"url": "https://packages.unity.cn" "url": "https://packages.unity.cn"
}, },
"com.unity.ext.nunit": {
"version": "1.0.6",
"depth": 1,
"source": "registry",
"dependencies": {},
"url": "https://packages.unity.cn"
},
"com.unity.ide.rider": {
"version": "3.0.13",
"depth": 0,
"source": "registry",
"dependencies": {
"com.unity.ext.nunit": "1.0.6"
},
"url": "https://packages.unity.cn"
},
"com.unity.ide.visualstudio": { "com.unity.ide.visualstudio": {
"version": "2.0.22", "version": "2.0.14",
"depth": 0, "depth": 0,
"source": "registry", "source": "registry",
"dependencies": { "dependencies": {
@ -22,9 +71,39 @@
}, },
"url": "https://packages.unity.cn" "url": "https://packages.unity.cn"
}, },
"com.unity.ide.vscode": {
"version": "1.2.5",
"depth": 0,
"source": "registry",
"dependencies": {},
"url": "https://packages.unity.cn"
},
"com.unity.purchasing": {
"version": "4.1.3",
"depth": 0,
"source": "registry",
"dependencies": {
"com.unity.ugui": "1.0.0",
"com.unity.modules.unityanalytics": "1.0.0",
"com.unity.modules.unitywebrequest": "1.0.0",
"com.unity.modules.jsonserialize": "1.0.0",
"com.unity.modules.androidjni": "1.0.0",
"com.unity.services.core": "1.0.1"
},
"url": "https://packages.unity.cn"
},
"com.unity.services.core": {
"version": "1.0.1",
"depth": 1,
"source": "registry",
"dependencies": {
"com.unity.modules.unitywebrequest": "1.0.0"
},
"url": "https://packages.unity.cn"
},
"com.unity.test-framework": { "com.unity.test-framework": {
"version": "1.1.31", "version": "1.1.31",
"depth": 1, "depth": 0,
"source": "registry", "source": "registry",
"dependencies": { "dependencies": {
"com.unity.ext.nunit": "1.0.6", "com.unity.ext.nunit": "1.0.6",
@ -33,6 +112,27 @@
}, },
"url": "https://packages.unity.cn" "url": "https://packages.unity.cn"
}, },
"com.unity.textmeshpro": {
"version": "3.0.6",
"depth": 0,
"source": "registry",
"dependencies": {
"com.unity.ugui": "1.0.0"
},
"url": "https://packages.unity.cn"
},
"com.unity.timeline": {
"version": "1.6.4",
"depth": 0,
"source": "registry",
"dependencies": {
"com.unity.modules.director": "1.0.0",
"com.unity.modules.animation": "1.0.0",
"com.unity.modules.audio": "1.0.0",
"com.unity.modules.particlesystem": "1.0.0"
},
"url": "https://packages.unity.cn"
},
"com.unity.ugui": { "com.unity.ugui": {
"version": "1.0.0", "version": "1.0.0",
"depth": 0, "depth": 0,
@ -42,6 +142,26 @@
"com.unity.modules.imgui": "1.0.0" "com.unity.modules.imgui": "1.0.0"
} }
}, },
"com.unity.visualscripting": {
"version": "1.7.6",
"depth": 0,
"source": "registry",
"dependencies": {
"com.unity.ugui": "1.0.0",
"com.unity.modules.jsonserialize": "1.0.0"
},
"url": "https://packages.unity.cn"
},
"com.unity.xr.legacyinputhelpers": {
"version": "2.1.9",
"depth": 0,
"source": "registry",
"dependencies": {
"com.unity.modules.vr": "1.0.0",
"com.unity.modules.xr": "1.0.0"
},
"url": "https://packages.unity.cn"
},
"com.unity.modules.ai": { "com.unity.modules.ai": {
"version": "1.0.0", "version": "1.0.0",
"depth": 0, "depth": 0,