Tandy 64 Jr. - An intro for the PCJr.

Software related questions

Tandy 64 Jr. - An intro for the PCJr.

Postby riq » Sun Dec 31, 2017 8:26 am

Happy New Year!

Image

We ported our "Tandy 64" intro which was originally coded for the Tandy 1000 HX, to the PCJr.

You can download the binary from here:
https://github.com/c64scene-ar/tandy64/ ... dy64jr.zip

"video capture" is here (doesn't look very good but I don't have any RGBI capture for the PCJr):
https://youtu.be/phtEFwJu0AM


Source code:
https://github.com/c64scene-ar/tandy64/tree/ibm_pcjr

requirements:
PCJr. with at least 256kb RAM.
Use jrconfig.sys with /v32. Code should be loaded above the initial 128k RAM (jrconfig.sys will do this for you).


Thanks Trixter and Brutman for your help.
riq
 
Posts: 49
Joined: Sat Dec 09, 2017 2:36 pm

Re: Tandy 64 Jr. - An intro for the PCJr.

Postby Vorticon » Thu Jan 04, 2018 3:58 pm

Nicely done!
Vorticon
 
Posts: 276
Joined: Fri Nov 27, 2009 7:25 am

Re: Tandy 64 Jr. - An intro for the PCJr.

Postby Trixter » Sat Jan 06, 2018 11:22 am

Very nice. I have palette corruption in the lower right corner but otherwise it works perfectly. I was surprised to see the large-font scroller working at the full framerate; I'll have to check your routines to see how you were implementing that :-)

Intro uses 108KB of RAM; if you moved all graphics outside of the main .exe into a data file (which you can then attach to the main .exe if you want it to be a single-filer) you can probably get it working on a 128KB PCjr.
You're all insane and trying to steal my magic bag!
Trixter
 
Posts: 522
Joined: Mon Sep 01, 2008 12:00 am
Location: Illinois, USA

Re: Tandy 64 Jr. - An intro for the PCJr.

Postby riq » Sat Jan 06, 2018 10:45 pm

thanks Vorticon and Trixter

Trixter wrote:I have palette corruption in the lower right corner

Ouch. I thought I fixed that. In my machine works Ok... but I guess my "stable raster code" is not that stable... even a cycle of difference might affect it.
if you have time, could to take a screen shot. I'd would to know how severe it is.

Trixter wrote:I was surprised to see the large-font scroller working at the full framerate;

Nothing strange in the scroll: just some `rep movsw` and fetching the bits from a cache. Since the PCJr is a bit slower than the Tandy (4.77Mhz vs. 7.16Mhz) I had to reduce the width of the scroll a bit (by 20 or 30 cols)... otherwise this intro is the same as the Tandy one.

Trixter wrote:Intro uses 108KB of RAM; if you moved all graphics outside of the main .exe into a data file (which you can then attach to the main .exe if you want it to be a single-filer) you can probably get it working on a 128KB PCjr.


Thanks. Not sure if the performance will be good enough though. As it is know (running on the the above-of-128k RAM), I only have like 1 or 2 spare raster lines. I might be able to optimize it a bit more, but I guess not enough to run the whole thing from the "slow ram". TBH, I haven't tested how slow is the "slow ram", but I heard it is much slower.

Thanks.
riq
 
Posts: 49
Joined: Sat Dec 09, 2017 2:36 pm

Re: Tandy 64 Jr. - An intro for the PCJr.

Postby Trixter » Sun Jan 07, 2018 12:39 pm

riq wrote:
Trixter wrote:I have palette corruption in the lower right corner

Ouch. I thought I fixed that. In my machine works Ok... but I guess my "stable raster code" is not that stable... even a cycle of difference might affect it.
if you have time, could to take a screen shot. I'd would to know how severe it is.


Does your PCjr have an NEC V20 in it? That CPU is about 20% faster than an 8088, which would explain why you don't see corruption but I do (timing issue).

Thanks. Not sure if the performance will be good enough though. As it is know (running on the the above-of-128k RAM), I only have like 1 or 2 spare raster lines. I might be able to optimize it a bit more, but I guess not enough to run the whole thing from the "slow ram". TBH, I haven't tested how slow is the "slow ram", but I heard it is much slower.


If you only have 2 raster lines left, then yes, running out of the slow RAM would not work (or, you'd have to rewrite the code, like using two video pages to not worry about timing of when you update the scroller, or partially update the scroller whenever you are wasting time waiting for a raster line).

In any case, it's nice to see a true proper PCjr prod (ie. one that uses 320x200x16). I cheated :-)
You're all insane and trying to steal my magic bag!
Trixter
 
Posts: 522
Joined: Mon Sep 01, 2008 12:00 am
Location: Illinois, USA

Re: Tandy 64 Jr. - An intro for the PCJr.

Postby riq » Mon Jan 08, 2018 11:27 am

Trixter wrote:Does your PCjr have an NEC V20 in it? That CPU is about 20% faster than an 8088, which would explain why you don't see corruption but I do (timing issue).


Is there software way to detect the nec v20?
- because I realized that the 8088 chip is beneath the floppy drive and I was to lazy to remove the drive to check it.
- I want to detect it in runtime and use a different path-code if needed

I tested the intro on another machine (something that I should have done before releasing it) and it looked like this:
Image

does it look like that in your machine?

From the raster bar noise, I can tell that the 2nd machine is one or two cycles slower per raster line... something that I should be able to fix, but I should do it in a way that works Ok in all machines.
Perhaps my 1st machine is using a NEC v20... if not, I wouldn't know... perhaps one of the side-carts is inserting an additional wait-state?
riq
 
Posts: 49
Joined: Sat Dec 09, 2017 2:36 pm

Re: Tandy 64 Jr. - An intro for the PCJr.

Postby Trixter » Mon Jan 08, 2018 3:37 pm

Sidecars don't add additional waitstates. And yes, my corruption looks like your photo, so if you fix it there, you'll likely fix it on mine.

If you run TOPBENCH it can detect if you have an NEC V20 or not; do D)atabase->A)dd this system.
You're all insane and trying to steal my magic bag!
Trixter
 
Posts: 522
Joined: Mon Sep 01, 2008 12:00 am
Location: Illinois, USA

Re: Tandy 64 Jr. - An intro for the PCJr.

Postby riq » Tue Jan 09, 2018 9:48 pm

Trixter wrote:If you run TOPBENCH it can detect if you have an NEC V20 or not; do D)atabase->A)dd this system.


Thanks!
So it seems that my two machines are 8088's... although they almost have the same speed, one is a tiny bit faster (2%~3%) than the other, except in the VidRamTest where the other is faster. (no idea why).
In case it helps, the machine that is a tiny bit faster is this one: http://www.vcfed.org/forum/showthread.p ... on-options

What's interesting is that both machines are a tiny bit slower than the one in the database, this one:
https://github.com/MobyGamer/TOPBENCH/b ... E.INI#L437
That machines seems to be like 1%~2% faster.



Attached the output.ini files.


I'll try to fix the raster garbage this weekend... but I don't know if it will work "garbage free" on the machine described on the database since it seems to be faster than mines.
Attachments
pcjr_256kb_jrconfig.ini
output.init for a 256KB RAM + jrconfig + 2 sidecars
(607 Bytes) Downloaded 40 times
pcjr_640kb_jrconfig.ini
output.ini for a 640KB RAM + jrconfig + 3 sidecars (and 3 floppy drives)
(606 Bytes) Downloaded 38 times
riq
 
Posts: 49
Joined: Sat Dec 09, 2017 2:36 pm

Re: Tandy 64 Jr. - An intro for the PCJr.

Postby monzamess » Sat Jan 20, 2018 4:16 pm

I tried the demo on my PCjr and got the tearing pictured above. I also had to do a clean boot off floppy with just jrconfig.sys in DOS 3.3. My normal boot also includes drivers for network, 3.5" backpack drive, and serial mouse, and one or more of those causes the demo to hard crash after 15-30 seconds. I've still got the stock 8088, plus jrIDE, speech sidecar, and the devices mentioned previously.

With the clean boot, it works (except for the tearing of course) and was very cool to experience "live." The song stuck in my head for the next day. Thanks again!
monzamess
 
Posts: 44
Joined: Sat Aug 14, 2010 7:16 am

Re: Tandy 64 Jr. - An intro for the PCJr.

Postby riq » Sat Jan 20, 2018 7:01 pm

monzamess wrote:With the clean boot, it works (except for the tearing of course) and was very cool to experience "live." The song stuck in my head for the next day. Thanks again!


Thanks for the feedback!

I'm still trying to figure out why one of my machines is one cycle faster in the horizontal retrace than the other one.
As soon as I find it out, I'll release a new version, that in theory, should run Ok on all PCjr.
riq
 
Posts: 49
Joined: Sat Dec 09, 2017 2:36 pm

Next

Return to PCjr Software

Who is online

Users browsing this forum: No registered users and 1 guest

cron