Author Topic: [Prizm]SNES emu progress  (Read 8778 times)

0 Members and 1 Guest are viewing this topic.

Offline Munchor

  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6199
  • Rating: +295/-121
  • Code Recycler
    • View Profile
Re: [Prizm]SNES emu progress
« Reply #15 on: May 08, 2011, 04:43:01 pm »
Actually, even a GBC emulator would be cool. It's much simpler than this.

Ashbad

  • Guest
Re: [Prizm]SNES emu progress
« Reply #16 on: May 08, 2011, 05:08:15 pm »
Well in Omnimaga rules it is against them to link to ROMs/copyrighted MP3s, though

The one thing I linked to is free-to-use, and I don't link to anything that has any issues :/

If that's the reason I have a -2 for it, then that's my answer to it.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: [Prizm]SNES emu progress
« Reply #17 on: May 08, 2011, 05:26:27 pm »
Ah ok. I wasn't sure if it was stuff that was sold commercially or not before.

Offline AngelFish

  • Is this my custom title?
  • Administrator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3242
  • Rating: +270/-27
  • I'm a Fishbot
    • View Profile
Re: [Prizm]SNES emu progress
« Reply #18 on: May 08, 2011, 06:02:44 pm »
Actually, even a GBC emulator would be cool. It's much simpler than this.

"Simpler" is a relative term when you're emulating the entire instruction set of the processors as well as the multiple peripheral chips in both systems. It's why I would highly recommend trying to emulate a SuperH based system like the Sega Saturn if anyone seriously tries something like TI-boy for Prizm. TI-boy is actually a perfect example of how difficult emulation is. It emulates a system running essentially the same chip and was written by a coder of astonishing talent, but it's still not perfect. Emulating a chip in an entirely different family is an entirely different level of complexity. An even better example is Sony, whose emulation of the PS2 on the PS3 wasn't perfect and they had a team with full access to the specs spend around a year on it. It's seriously difficult to get any level of reliability when your chips aren't in the same family.
« Last Edit: May 08, 2011, 06:08:05 pm by Qwerty.55 »
∂²Ψ    -(2m(V(x)-E)Ψ
---  = -------------
∂x²        ℏ²Ψ

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: [Prizm]SNES emu progress
« Reply #19 on: May 08, 2011, 09:53:46 pm »
An example of how much processing power is needed to emulate something is the TI-89 emulator for the TI-Nspire, which Calc84 used to develop: Apparently, despite the 89T being 16 MHz and the TI-Nspire 150 max, the emulator wouldn't even run at 100% speed.

I think a SNES emu would be doable on a Prizm, but certain games like Star Fox would be much harder to support, as they included full of special chips to do things the SNES alone couldn't.

Offline ralphdspam

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 841
  • Rating: +38/-1
  • My name is actually Matt.
    • View Profile
Re: [Prizm]SNES emu progress
« Reply #20 on: May 08, 2011, 10:24:05 pm »
I thought it was real at first.  >:(
ld a, 0
ld a, a

Offline z80man

  • Casio Traitor
  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 977
  • Rating: +85/-3
    • View Profile
Re: [Prizm]SNES emu progress
« Reply #21 on: May 08, 2011, 11:26:41 pm »
A technical example of how hard different family emulating would be the 84+ emulator forth the Prizm. On the z80 almost every instruction makes use of the flag register, but on the SuperH unless you specifically tell the processor to look for certain conditions, nothing is checked. Plus when you do checks only one it, the T bit, will report whether a test was true or false. So on the 84+ emu the primary part of each instruction is carried out in about 10 cycles, but the part dealing with the flag register takes an additional 20-30.

List of stuff I need to do before September:
1. Finish the Emulator of the Casio Prizm (in active development)
2. Finish the the SH3 asm IDE/assembler/linker program (in active development)
3. Create a partial Java virtual machine  for the Prizm (not started)
4. Create Axe for the Prizm with an Axe legacy mode (in planning phase)
5. Develop a large set of C and asm libraries for the Prizm (some progress)
6. Create an emulator of the 83+ for the Prizm (not started)
7. Create a well polished game that showcases the ability of the Casio Prizm (not started)

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: [Prizm]SNES emu progress
« Reply #22 on: May 09, 2011, 12:35:07 am »
Would a z80 emu for the Prizm runs at max speed?

Offline z80man

  • Casio Traitor
  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 977
  • Rating: +85/-3
    • View Profile
Re: [Prizm]SNES emu progress
« Reply #23 on: May 09, 2011, 12:57:39 am »
Well I'm hoping it will. My current tests say that it will be running at full speed, but there could be hidden factors later on that would slow it down. Right now in order to achieve my current speeds I'm giving up a lot of size. For example every instruction has a version of it for each register because I don't want to waste time trying to figure out which register is being used.

List of stuff I need to do before September:
1. Finish the Emulator of the Casio Prizm (in active development)
2. Finish the the SH3 asm IDE/assembler/linker program (in active development)
3. Create a partial Java virtual machine  for the Prizm (not started)
4. Create Axe for the Prizm with an Axe legacy mode (in planning phase)
5. Develop a large set of C and asm libraries for the Prizm (some progress)
6. Create an emulator of the 83+ for the Prizm (not started)
7. Create a well polished game that showcases the ability of the Casio Prizm (not started)

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: [Prizm]SNES emu progress
« Reply #24 on: May 10, 2011, 11:53:36 pm »
My concern is a bit about how grayscale is done on the 83+ and emulating the motion blur. Could that slow things down a lot? Good luck whatever happens!

Offline z80man

  • Casio Traitor
  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 977
  • Rating: +85/-3
    • View Profile
Re: [Prizm]SNES emu progress
« Reply #25 on: May 11, 2011, 12:51:24 am »
I'm currently setting it up as 4 level grayscale as that best matches with the current LCD timer. So how the grayscale works is that when the LCD routine parses over a pixel in the 84+'s LCD ram that is set to on it subtracts a number based off the current contrast from the Prizm's VRAM for the corresponding pixel. (That pixel being scaled of course to account for the Prizm's higher resolution). So every time the LCD routine is called that pixel would be subtracted until it reaches the minimum value. The inverse would be done for turning on a pixel. The 4 level grayscale limit is temporary until a new LCD routine is written that gives direct control over the LCD ram. For now the best frame rate I can achieve is limited at 24 fps which I believe would only give room for 4 grayscale levels.

List of stuff I need to do before September:
1. Finish the Emulator of the Casio Prizm (in active development)
2. Finish the the SH3 asm IDE/assembler/linker program (in active development)
3. Create a partial Java virtual machine  for the Prizm (not started)
4. Create Axe for the Prizm with an Axe legacy mode (in planning phase)
5. Develop a large set of C and asm libraries for the Prizm (some progress)
6. Create an emulator of the 83+ for the Prizm (not started)
7. Create a well polished game that showcases the ability of the Casio Prizm (not started)

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: [Prizm]SNES emu progress
« Reply #26 on: May 11, 2011, 12:53:03 am »
Ah ok but wouldn't it cause certain grayscale games to look crappier? I mean for example Reuben Quest or F-Zero 83+, where grayscale isn't refreshed as fast as other games. Also some games like Reuben are 3 level grayscale.

Offline z80man

  • Casio Traitor
  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 977
  • Rating: +85/-3
    • View Profile
Re: [Prizm]SNES emu progress
« Reply #27 on: May 11, 2011, 01:03:29 am »
It shouldn't cause any issues as the grayscale is the same speed as the 83+'a time to draw a pixel. 4 level grayscale in an emu just means that there is a max of 4 shades of gray.

List of stuff I need to do before September:
1. Finish the Emulator of the Casio Prizm (in active development)
2. Finish the the SH3 asm IDE/assembler/linker program (in active development)
3. Create a partial Java virtual machine  for the Prizm (not started)
4. Create Axe for the Prizm with an Axe legacy mode (in planning phase)
5. Develop a large set of C and asm libraries for the Prizm (some progress)
6. Create an emulator of the 83+ for the Prizm (not started)
7. Create a well polished game that showcases the ability of the Casio Prizm (not started)

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: [Prizm]SNES emu progress
« Reply #28 on: May 11, 2011, 01:11:58 am »
Ah ok, because I remember how terrible grayscale was for Reuben in VTI.

By the way we're a bit off topic, should this discussion be split from the topic and moved back to the Prizm section? :P