Jump to content
simpleavr

TMS0803/5 Emulating Calculator Build

Recommended Posts

Thank you for checking, Chris, but doesn't that code snippet suggest that P1.3 is high and P1.2 is low (P1.3 = anode and P1.2 = cathode)?

 

The wiring diagram was made using the drawing tools in Microsoft Excel.

 

I love those bubble displays but they're much too expensive for my budget so I thought maybe I'd try to build this project on a prototype board with standard displays.

 

I will add the missing battery, bypass cap, and power switch to my diagram and I would be happy to post it, if anyone is interested.

 

Again, very nice project!  Thank you for sharing.

 

Cheerful regards, Mike

 

@@Mac

 

Yes you are right P1.3 is high and should be anode, I always confuse about anode and cathode, they are better described IMO in Chinese as being yin and yang (like everything else), where yang goes to V+.

 

If it's Excel that you had used for the schematic, I will skip. But they do look nice.

 

In the github source code, there is also the original tms0800.c which uses a different layout saved 4 pins. The extra pins were used for serial UART and that version of code can connect to a terminal and the emulation runs as a single stepping disassembler where you can read the instructions, etc. Like Ken Shirriff's web based emulation.

 

I would be interested in seeing the final product, may be a couple of photos after it's done.

Share this post


Link to post
Share on other sites

Hi Chris (simpleavr),

 

May I ask where is software for v2 board and which compiler, please?  I'm hoping it's CCS ???

 

Thanks...

 

Cheerful regards, Mike

 

<added>

 

Found it and I see you're using GCC...

Share this post


Link to post
Share on other sites

Found it and I see you're using GCC...

 

Should compile w/ CCS though, I haven't really take the time to try it. But the template / skeleton used to be compiled on both. And there are tons of left-over space, so should be fine.

 

Also be careful when prototyping, there are no limiting resistors for the LEDs. If they looks "very bright", it's time to disconnect power. I know it's wrong, but I don't want led drivers and extra parts as I want this to be easy to solder and minimal PCB estate.

Share this post


Link to post
Share on other sites

Chris (simpleavr),

 

Can you point me in the right direction to Ken Sherriff's TMS0803 Java Simulator code, please?  I apologize.  I've been searching but I just can't seem to find it.

 

TIA.  Cheerful regards, Mike

Share this post


Link to post
Share on other sites

Can you point me in the right direction to Ken Sherriff's TMS0803 Java Simulator code, please?  I apologize.  I've been searching but I just can't seem to find it.

 

 

Both (DataMatch and Sinclair) are contained in the same github project. I found that it is listed on the sinclair page so you would find it from the TI page.

 

The core is similar enough they are using the same code, with a few switches inside based on the 03/05 subtype, and the register masks are a little bit difference.

 

There is this source_code.js which is the ROM for the TI calculator and source_code_sinclair.js for the Sinclair.

 

It looks like (I only check the 1st block of bytecodes) for the TI ROM, it's from a TI patent, and for the Sinclair, it was mentioned it's read from an actual dissolved die.

 

If you are redoing the design, you may consider 1) proper driving on the LEDs, 2) separate pins for keyboard scanning. I neglected all that to minimize parts and space. Currently the leds blanks out when you holds down a button as I share pins between LEDs and tactile buttons.

Share this post


Link to post
Share on other sites

@@simpleavr, here's your next challenge :)

 

I thought, hey it's really a challenge to get that under $9.00. And then I realize it's just the PCB  :sad: .

 

Anyway, not too keen to work w/ microscope and ovens.

 

Digging into source, found the speech piece interesting. According to the github readme, it's an implementation of the antique TI Speak and Spell algorithm. And I think it deserves to run on TI silicon.

Share this post


Link to post
Share on other sites

@simpleavr: Big thanks go to you!  I think this is exactly what I was looking for back in June!

 

Are you going to have a go at porting it over to an LP?

Share this post


Link to post
Share on other sites

@simpleavr: Big thanks go to you!  I think this is exactly what I was looking for back in June!

 

Are you going to have a go at porting it over to an LP?

Yeah, I will try that. It sounds great. But it's not free English like the webbotlib. I.e. limited vocabulary. Will work well in a talking clock project though.

Share this post


Link to post
Share on other sites

I just received the kit, and rush to build it... IT WORKED at the first turn on!
GREAT!
Since I bought it to "revive" in some way the old glorious Sinclair Scientific calculator, I would like to have it at the first !
So the question is: is it possible to turn it on and have it DIRECTLY in "Sinclair" mode?
It would be GREAT for me....
Is there any keyboard/key combination to turn it on in this mode?
BTW, here is a shot of the built kit :

 

post-3-0-94011300-1411949839_thumb.jpg

 

post-3-0-77737700-1411949849_thumb.jpg

Edited by bluehash
[ADMIN] _Uploaded images to 43oh.

Share this post


Link to post
Share on other sites

I just received the kit, and rush to build it... IT WORKED at the first turn on!

GREAT!

Since I bought it to "revive" in some way the old glorious Sinclair Scientific calculator, I would like to have it at the first !

So the question is: is it possible to turn it on and have it DIRECTLY in "Sinclair" mode?

It would be GREAT for me....

Is there any keyboard/key combination to turn it on in this mode?

BTW, here is a shot of the built kit :

 

Good job! Glad it worked and thanks for reporting back.

Share this post


Link to post
Share on other sites

and... to have it permanently in Sinclair mode at turn on? :rolleyes:

 

I haven't thought of saving a preferred power-on setting so there is no magic button in the current firmware.

 

1. You will need to be able to re-flash the chip to do that. i.e. you need at least a Launchpad G2 and mpsdebug (or TI's own MSP430_Flasher) to do this.

2. You will need mspgcc compiler environment to build a new firmware.

3a. You need to edit tms0800_pcb.c and find load_rom(0) and load_rom(1), then change them to load_rom(1), load_rom(0) to make the alternate rom be the default.

3b. Or, I could build a firmware for you. But you still need step 1 and 2.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...