Author Topic: Who Wants to Help With a TI83+ Emulator?  (Read 12019 times)

0 Members and 1 Guest are viewing this topic.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55941
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Who Wants to Help With a TI83+ Emulator?
« Reply #15 on: March 18, 2012, 10:27:39 pm »
Although anyone is free to take on the idea if they have enough experience and are willing to do it without too much pressure. :) But seeing as nobody has started doing it yet despite being a great idea, I assume everyone is already too busy with their projects or there's just not enough discoveries about the PRIZM yet, or people are not yet experienced enough in PRIZM development to achieve something like an emulator.

Also another worry I got is about grayscale: The PRIZM screen only allows a maximum of 21 frames per second (22 on some calcs IIRC). A 83+ emulator would absolutely need stuff like Wabbitemu LCD settings so the user can alter how the screen gets refreshed, in order to accomodate grayscale games that flickers a bit more than others (such as Axe and TI-BASIC games). At 21 FPS maximum this might cause a few problems getting perfect-looking grayscale, right?
« Last Edit: March 18, 2012, 10:28:02 pm by DJ_O »

Offline zeldaking

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 197
  • Rating: +15/-0
    • View Profile
Re: Who Wants to Help With a TI83+ Emulator?
« Reply #16 on: March 18, 2012, 11:03:54 pm »
To say the least this would be very difficult. You would need to know Prizm C flawlessly, probably have great understanding in z80 and have plenty of time. I am afraid there is very limited people able to fit those requirements, and I am not one of them. Keep you hopes up and possibly this will be made sometime or another.

Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4704
  • Rating: +719/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: Who Wants to Help With a TI83+ Emulator?
« Reply #17 on: March 18, 2012, 11:12:59 pm »
If somebody links me to some assembly info for the Prizm, I would not mind attempting to write an emulator. I wrote an emulator for a made up system on my TI-84+ a while back, and in assembly, the only difficult things would be hardware emulation, including the keymap, LCD, timers, and linkport. I do have enough knowledge of the z80, I believe, to write an emulator.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55941
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Who Wants to Help With a TI83+ Emulator?
« Reply #18 on: March 19, 2012, 12:36:27 am »
Well if you attempt it, then  good luck. :)

Offline JosJuice

  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1344
  • Rating: +66/-14
    • View Profile
Re: Who Wants to Help With a TI83+ Emulator?
« Reply #19 on: March 19, 2012, 02:54:23 am »
If somebody links me to some assembly info for the Prizm, I would not mind attempting to write an emulator. I wrote an emulator for a made up system on my TI-84+ a while back, and in assembly, the only difficult things would be hardware emulation, including the keymap, LCD, timers, and linkport. I do have enough knowledge of the z80, I believe, to write an emulator.
Here's the SH3 instruction set:
http://documentation.renesas.com/doc/products/mpumcu/rej09b0317_sh_3sm.pdf

Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4704
  • Rating: +719/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: Who Wants to Help With a TI83+ Emulator?
« Reply #20 on: March 19, 2012, 07:13:03 am »
Thanks, JosJuice :) Now I will have something else to distract me XD

Offline alberthrocks

  • Moderator
  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 876
  • Rating: +103/-10
    • View Profile
Re: Who Wants to Help With a TI83+ Emulator?
« Reply #21 on: March 19, 2012, 08:58:15 am »
You could try porting the Wabbitemu core, but you'd probably get 1 fps from it since it's very unoptimized. :P A full SH3 ASM port is probably necessary...
Withgusto Networks Founder and Administrator
Main Server Status: http://withg.org/status/
Backup Server Status: Not available
Backup 2/MC Server Status: http://mc.withg.org/status/


Proud member of ClrHome!

Miss my old signature? Here it is!
Spoiler For Signature:
Alternate "New" IRC post notification bot (Newy) down? Go here to reset it! http://withg.org/albert/cpuhero/

Withgusto Networks Founder and Administrator
Main Server Status: http://withg.org/status/
Backup Server Status: Not available
Backup 2/MC Server Status: http://mc.withg.org/status/

Activity remains limited due to busyness from school et al. Sorry! :( Feel free to PM, email, or if you know me well enough, FB me if you have a question/concern. :)

Don't expect me to be online 24/7 until summer. Contact me via FB if you feel it's urgent.


Proud member of ClrHome!

Spoiler For "My Projects! :D":
Projects:

Computer/Web/IRC Projects:
C______c: 0% done (Doing planning and trying to not forget it :P)
A_____m: 40% done (Need to develop a sophisticated process queue, and a pretty web GUI)
AtomBot v3.0: 0% done (Planning stage, may do a litmus test of developer wants in the future)
IdeaFrenzy: 0% done (Planning and trying to not forget it :P)
wxWabbitemu: 40% done (NEED MOAR FEATURES :P)

Calculator Projects:
M__ C_____ (an A____ _____ clone): 0% done (Need to figure out physics and Axe)
C2I: 0% done (planning, checking the demand for it, and dreaming :P)

Offline willrandship

  • Omnimagus of the Multi-Base.
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2953
  • Rating: +98/-13
  • Insert sugar to begin programming subroutine.
    • View Profile
Re: Who Wants to Help With a TI83+ Emulator?
« Reply #22 on: March 25, 2012, 05:57:14 pm »
Well, with CPU emulators it's best to write one specifically for the CPU you're using, in Asm. That way, commands can be directly linked, like how AND functions virtually identically across instruction sets. In C, doing an AND command is much more than the single operation.

Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4704
  • Rating: +719/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: Who Wants to Help With a TI83+ Emulator?
« Reply #23 on: March 25, 2012, 06:36:00 pm »
Well, with CPU emulators it's best to write one specifically for the CPU you're using, in Asm. That way, commands can be directly linked, like how AND functions virtually identically across instruction sets. In C, doing an AND command is much more than the single operation.
Yes, exactly. Emulating a CPU in assembly is a cakewalk because of that. The z80 is a very simple cpu that has structures that exist on almost all other newer CPUs. For example, loads, bit operations, and addition/subtraction are available on almost all CPUs and that is the brunt of the operations available on a z80. Emulating the hardware is the tough part, especially the link port (which is a little different on the Prizm, but this may be possible), the LCD, timers, and USB (which I probably won't even attempt). I hope to have enough time for this in the summer (but then again, I hope to be doing GSoC which will eat up a lot of my time).

Offline calc84maniac

  • eZ80 Guru
  • Coder Of Tomorrow
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2912
  • Rating: +471/-17
    • View Profile
    • TI-Boy CE
Re: Who Wants to Help With a TI83+ Emulator?
« Reply #24 on: March 25, 2012, 11:06:27 pm »
The hard part about emulating other CPUs on the SuperH is that there is only one flag that can be affected by various operations. For addition/subtraction, that means you'll have to detect carry, overflow, sign, zero flags separately, plus the odd half-carry flag that's already a pain to emulate on most architectures.
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

Offline ralphdspam

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 841
  • Rating: +38/-1
  • My name is actually Matt.
    • View Profile
Re: Who Wants to Help With a TI83+ Emulator?
« Reply #25 on: March 26, 2012, 01:38:25 am »
The hard part about emulating other CPUs on the SuperH is that there is only one flag that can be affected by various operations. For addition/subtraction, that means you'll have to detect carry, overflow, sign, zero flags separately, plus the odd half-carry flag that's already a pain to emulate on most architectures.
It would probably be faster to only calculate the half-carry, 3FLAG, and 5FLAG if the emulator hits a PUSH or DAA.  All you have to do is save the operands and flags for one flag-affecting calculation back.

When the emulator hits a PUSH or DAA instruction, the emulator can calculate the flags using the saved operands.
« Last Edit: March 26, 2012, 01:41:26 am by ralphdspam »
ld a, 0
ld a, a

Offline calc84maniac

  • eZ80 Guru
  • Coder Of Tomorrow
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2912
  • Rating: +471/-17
    • View Profile
    • TI-Boy CE
Re: Who Wants to Help With a TI83+ Emulator?
« Reply #26 on: March 26, 2012, 11:37:20 pm »
3FLAG and 5FLAG aren't necessary at all (other than holding values after POP AF), because newer calculators just set those to 0 upon flag-setting instructions. As for the half-carry, I'm pretty sure that I've used DAA after something other than an addition/subtraction before, and it would be more of a pain to keep track of these operands than to just calculate and save the flag.
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4704
  • Rating: +719/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: Who Wants to Help With a TI83+ Emulator?
« Reply #27 on: March 28, 2012, 07:41:57 am »
Good point >.> The half carry will be fun to work through XD

Offline willrandship

  • Omnimagus of the Multi-Base.
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2953
  • Rating: +98/-13
  • Insert sugar to begin programming subroutine.
    • View Profile
Re: Who Wants to Help With a TI83+ Emulator?
« Reply #28 on: March 28, 2012, 10:29:20 pm »
Does the SH3 have more registers than the z80? If so, maybe you could use some of them as flag substitutes :P

Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4704
  • Rating: +719/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: Who Wants to Help With a TI83+ Emulator?
« Reply #29 on: March 29, 2012, 06:21:16 am »
As a quote from the link JosJuice provided:
Quote
• Sixteen 32-bit general registers (eight banked registers)
• Five 32-bit control registers
• Four 32-bit system registers (SH-3)
• Six 32-bit system registers (SH-3E)
There are a few :) I am not sure what permissions are like on certain registers, though :? (I probably have easy access to the sixteen and the others might be more difficult). Also, I really like this instruction set o.o