Long time without using my TI89

Written by cafealpha no comments
Classified in : etc, Mylife Tags : ti89, software, bug
Today was a nostalgia day : I uploaded program to my good old TI-89 via "$4 parallel link cable" I made around 15 years ago, when I was high school student

data/images/20150317_ti89_parallel_link.tb.jpg
My TI-89 and its "$4 parallel cable", still working

First, I wanted to use my 7 years old desktop PC with parallel printer port available ... but it stopped to work after 2 minutes of usage. However heavy washing of CPU fan (yeah, "washing" : I put it in the water, then used my hair dryer to dry it) solved this
I then tried to install TILP program, but I was lost in installing GTK (), and link related DLLs ... a real nightmare, and it didn't worked too ... (Sorry Lionel and other TILP authors ! Your soft is great, but its installer is a real piece of crap)

So I tried even older W32Tran8x, a program made under Win9x era.
Except DlPortIo that needed to be updated to work under Windows7, everything worked fine !!!
data/images/20150306_w32tran.png
W32Tran8x, with its good old nearly wintage Win3.x-like file browser
The simpler the better 
I will try to keep this way of thinking when creating Saturn programs or cartridges

Edit : I successfully installed GTC, an oncalc C compiler. Thank you Pollux (GTC author) for your great work 
It's funny to program on a machine where sizeof(int) equals 2.

Read more Long time without using my TI89

USB dev cart for sale soon

Written by cafealpha no comments
Classified in : Saturn, Programming, Mylife Tags : usb dev cart, preorder, debug
I'm about to gather parts in order to make new USB dev cart !
I hope to have some free time at the end of the month to assemble few ones, so please let me know in the comments or by email if you want to preorder one unit

Only very few SST39SF040 flash chips were available for sale from IC supplier, so I bought SST39SF020 instead. On Saturn side, this change makes flash memory dropping from 1MB to 512KB, but USB dev cart itself uses only few tens of KB to work, so everything is fine

First, I will assemble my personal USB dev cart, because I sold it few months ago ... I can't wait to finally be able to debug software on my Saturn

Edit (2015/03/10) : My personal cartridge (until I sell it ) is ready and tested !
data/images/20150310_rev1b.tb.jpg
The PCB is a old version, hence some ICs are unused and unsoldered. Latest PCB version has a cleaner design
Two more cartridges are waiting for flashing and testing before selling. I plan to do this on next week.

Read more USB dev cart for sale soon

Just moved !

Written by cafealpha 4 comments
Classified in : etc, Saturn, Mylife Tags : mylife
During the last weeks, I was busy in preparing stuff in order to move to a new apartment.
And now, I am busy in ordering stuff in this new apartment ^^;

data/images/20141129_gaston.tb.jpg
(Image of me preparing cardboard few hours before mover truck arrives)

During the next weeks/months, I don't plan to do some new Saturn stuff. Instead, I plan to do things related to my new apartment, like emptying cardboards, ordering rooms, selling old/unused things, etc.
By the way, I plan to sell old Saturn games from my collection, including PAL Panzer Dragoon Saga, Shining Force III Scenario 1, so please let me know (= add a comment to this article, or send me a message) if you want to purchase something :)
In the case things are sold directly from this homepage, it will be cheaper than in the case I sell them via ebay ;)

PS : I didn't set up internet connection in my new apartment, so I may not be able to answer mail/messages/whatever during the next couple of weeks.

PPS : happy birthday Saturn ! It turned 20 years old on last month ♪

Read more Just moved !

New USB dev cart - currently debugging

Written by cafealpha 4 comments
Classified in : Saturn, Mylife Tags : saturn, usb dev cart, IC, firmware, debug
Few weeks ago, I had some free time (only one day however) to populate new USB dev carts
data/images/20140829_usb_dev_cart.tb.jpg
USB dev carts during different populating states
"This isn't even my final form"

I could populate 3 boards ... third one is not on the picture, while a couple of capacitors is missing on second one, but this is a matter of 5 minutes to solder.
After that, time was missing, and what's more problematic, ICs were missing too >_<

I soldered my last flash chips (on the right side of the cart), as well as my last USB chips and connectors (top left side of the cart) ... and my last 100nF decoupling capacitor (everywhere near all ICs) too ... it's a shame about the capacitors because they cost absolutely nothing and they are required everywhere in the cart.

So what's the plan from now ? I'm currently improving USB dev cart firmware, and plan to sell the completed cartridge on the bottom right corner of the picture when firmware will be ready for release.
From that money, I will buy a new stock of ICs to populate other PCBs
Why not buying ICs now ? Simply because I don't have enough budget for that, and also because buying ICs in few quantities is too much expensive : IC price decrease with quantity, and shipping fees are free when more than of USD100 of ICs are purchased.


So let's come the interesting part : firmware, which means software !
Last month I had enough about PCB design with Kicad, so that was good to get back with my Saturn and USB connect it to my laptop

data/images/20140829_dev_env.tb.jpg
My Saturn development environment : no expensive vintage development kit,
only a modchipped Saturn, USB dev cart and 7 years old laptop are enough.

So of course I lost a lot of time with stupid software troubles.
Here is a list of the troubles. I hope that writing them here will prevent me from repeating the same mistakes in the future.

 1) Data alignment problem : one structure is 1 byte packed, and some long word was put a non 4 multiple offset in this structure. It is usually easy to spot, but ...
 - It doesn't cause problem under yabause (? not verified, please tell me if I'm wrong), so this problem was unnoticed until I test it under real hardware.
 - It happened during program initialization, before USB transfer would allow me to easily find why my Saturn freezes.
 - I was sleepy at this time

 2) Adding byte size to unsigned long* pointer ... it resulted in pointer set 4 times farther than expected ... really stupid bug
Oh, and in the same fashion, a similar bug in Action Replay flasher utility prevented from writing more than half of flash memory size ... it's good that I could fix this bug before anybody notice it

 3) Saturn freezes when reading flash vendor/device IDs.
As usual, when Saturn freezes, it is during program startup, when USB can't be used for debug ^^;
This problem was the most interesting one : some parts of the firmware runs directly from Flash ROM, and it seems that reading flash vendor/device IDs makes whole flash returning theses IDs, resulting in invalid instruction from CPU ... this is just a guess, correct me if I'm wrong.
This problem was corrected in a very Q&D way : return 0xBFBF/0xB7B7 in FlashGetVendorID/FlashGetDeviceID functions
I have a better idea to fix this, but it requires to modify cartridge flasher utility ... I made enough flasher utility stuff recently (I'm enough in fixing compatibility issues with Action Replay old flash chips !), so I will fix this later.

Read more New USB dev cart - currently debugging

Rss feed of the category