Peter's z80.eu site blog
Search 

Please read ! 
If NO IMAGES will be shown, use www.z80.eu/blog instead of blog.z80.eu

Please note also - THIS BLOG ENDS HERE WITH THE LAST ENTRY FROM NOVEMBER 9th 2021.

I have prepared a new blog with wordpress at https://vintagecomputing.info !!!

Thank you.
Evolution of vintage PC chess programs (until VGA was used) PART 1 
Saturday, July 2, 2016, 01:00 PM
Posted by Administrator
Before MS-DOS, CP/M rulez. And there were some chess programs like Sargon already.
A book for Sargon was published in 1978.

Unfortunately CP/M does not support graphics by default (GSX was not widely used!).
So the time for (serious) chess programs start with the birth of the IBM PC.
At the beginning, there was a chess program named "chess" (not very inventive):

It was originally written in BASICA, but it's usually found as a compiled executable only.

Later, in 1982, Psion 1 was published, and it has already nice (CGA or HGC) graphics.

One year later, Bluebush arrived the PC market, not really a strong chess game, but also has a nice look.


Look at "related link" for the BASICA (source) version of CHESS1.

I will continue this in PART 2.

add comment ( 163 views )   |  permalink   |  related link   |   ( 3 / 2169 )
Less known, but very intesting for your vintage PC: PTS-DOS 2000 
Sunday, June 19, 2016, 05:00 PM
Posted by Administrator
I've added a static page for my web site z80.eu, see http://www.z80.eu/ptsdos.html

The PTS-DOS 2000 would be an ideal base for your vintage PC, has additional commands compared to MS-DOS 6.22, is much faster, and some features you will love (e.g. DEBUG command looks much more usable). The DEMO of PTS-DOS 2000 can be patched easily, so there is also no time delay anymore. It has a GUI which is much better than DOS Shell, and can be used instead of Norton Commander.

Check it out.

add comment ( 149 views )   |  permalink   |  related link   |   ( 3 / 2883 )
Rare CPU: IBM 386SLC , similar to an Intel 386SX, but with 8KB cache ... 
Sunday, April 24, 2016, 02:45 PM
Posted by Administrator
IBM introduced a meanwhile very rare CPU in 1992, starting with IBM PS/2 models and also with PS/Valuepoint computers.
This CPU was an attempt to create a cheap but for its price powerful CPU, which can even used as an Upgrade for Intel 286-based AT machines.

You can't read much about the ability of the CPU, the Wikipedia entry isn't very detailed.
I got a PS/Valuepoint 325T, which has such a CPU. But even the BIOS of the machine does not offer any option for enabling or disabling that level 2 cache.
The CPU is *NOT* Cyrix CPU compatible.

I've found an utility named CTCHIPZ (last version "34") and tried the "IBM486.CFG" to change the processor operation register. This doesn't work obviously, see the picture, although I was able to show the register values...


Still looking for more infos, if anybody has them, try to contact me please.

add comment ( 384 views )   |  permalink   |  related link   |   ( 3 / 2309 )
Programming a BASIC game - still fun, even with a vintage PC/XT 
Tuesday, March 15, 2016, 11:00 PM
Posted by Administrator
Yes, it can be still fun, although you should not try to program too large programs in BASIC.

I remembered these racing game tries of the first microcomputer days, without any high res graphics, just characters. So I tried to program a small game in less than 1KB source code.
That's the result:

10 DEFINT A-Z:RANDOMIZE TIMER:D!=TIMER:S=RND*40!+20:C=S+4:O=C:CLS
20 LOCATE 11,1:FOR I=1 TO 12:PRINT SPC(S);"|";SPC(10);"|":NEXT I:Z=0:V!=.3
30 R=RND*7:IF R<3 THEN M=-1 ELSE IF R=3 THEN M=0 ELSE M=1
40 LOCATE 2,1:PRINT "SCORE";Z;" Vmax:";310-CINT(V!*1000!):S=S+M
50 LOCATE 23,1:IF S>58 THEN S=58 ELSE IF S<1 THEN S=1
60 PRINT SPC(S%);"|";SPC(10);"|":PRINT:Z=Z+10:T=SCREEN(10,C):LOCATE 10,C
70 PRINT "*";:LOCATE 9,O:PRINT " ";:IF T<>32 THEN LOCATE 3,1:PRINT "CRASH!"
80 IF T<>32 THEN SOUND 37,5:LOCATE 23,1:END ELSE O=C:IF TIMER<D!+1 THEN 110
90 IF V!>.1 THEN V!=V!-.01 ELSE IF V!>.05 THEN V!=V!-.005 ELSE V!=V!-.001
100 D!=TIMER:SOUND Z/10+100,2:IF V!<0 THEN V!=0
110 K$=INKEY$:T!=TIMER+V!:WHILE TIMER<T!:WEND
120 IF K$="" THEN 30 ELSE IF K$="n" THEN C=C-1 ELSE IF K$="m" THEN C=C+1
130 IF K$="q" THEN LOCATE 23,1:END ELSE 30:REM WRITTEN BY P. DASSOW

And that's how it looks:


If you would say "that's not coded perfectly", that's true, but some strange things like two IF branches with the same condition - see line 70 and 80 - are done just because to get less lines and having still a line length < 80 chars. It is programmed CPU speed "independent" (means delays are timer based).

This is a version with more lines, but somewhat speed optimized:

10 DEFINT A-Z:RANDOMIZE TIMER:D!=TIMER:S=RND*40!+20:C=S+4:W$="|"+SPACE$(10)+"|"
20 CLS:O=C:LOCATE 11,1:FOR I=1 TO 12:PRINT SPC(S);W$:NEXT I:Z=0:V!=.3
30 R=RND*7:IF R<3 THEN M=-1 ELSE IF R=3 THEN M=0 ELSE M=1
40 LOCATE 2,1:PRINT "SCORE";Z;" Vmax:";310-CINT(V!*1000!):S=S+M
50 LOCATE 23,1:IF S>58 THEN S=58 ELSE IF S<1 THEN S=1
60 PRINT SPC(S%);W$:PRINT:Z=Z+10:T=SCREEN(10,C):LOCATE 10,C
70 PRINT "*";:LOCATE 9,O:PRINT " ";:IF T=32 THEN O=C:IF TIMER<D!+1 THEN 110 ELSE 90
80 LOCATE 3,1:PRINT "CRASH!":SOUND 37,5:LOCATE 23,1:END
90 IF V!>.1 THEN V!=V!-.01 ELSE IF V!>.05 THEN V!=V!-.005 ELSE V!=V!-.001
100 D!=TIMER:SOUND Z/10+100,2:IF V!<0 THEN V!=0
110 K$=INKEY$:T!=TIMER+V!:WHILE TIMER<T!:WEND
120 IF K$="" THEN 30
130 IF K$="n" THEN C=C-1:GOTO 30
140 IF K$="m" THEN C=C+1:GOTO 30
150 IF K$="q" THEN LOCATE 23,1:END
160 GOTO 30:REM WRITTEN BY P. DASSOW

Now imagine to spend additional 4 hours of testing and programming, and see the results:






I added a title screen with explanations, a bit more color, some random grass, a more sophisticated curve algorithm to have a more sinuos course, and also high score saving.

There is still a problem with the TIMER variable, if speed reaches the value 307, subtracting TIMER with very small values will result in inaccurate behaviour of the car on the street (it warps forward until it crashes).
This is surprisingly NOT the case if you execute the program on a slow PC/XT or an AMSTRAD PC 1640 for example. On such a slow computer, you will reach the highest possible speed of 310 without problems.... strange, isn't it ?

The versions:
The original first BASIC source code
The compiled first BASIC version, DOS compatible
The original first BASIC source code, optimized
The compiled and "improved" BASIC version, DOS compatible
The compiled and "improved" BASIC version, OS/2 compatible

Compiled versions are for 286 based PCs and older. Source can be run with an BASICA/GWBASIC interpreter from 386 up to a modern PC, if DOS (or DOSBOX) is used.

See related link for the WINDOWS 7 compatible QB64 compiled and "improved" version.
If you're curios about the source code of the "improved" version, please send me a mail, and you will get the source code (2.5 KB and still BASICA compatible) of it also.
add comment ( 218 views )   |  permalink   |  related link   |   ( 3 / 2360 )
My ZIP 100 dropped about 50cm down to the ground - dead :-( 
Sunday, February 28, 2016, 04:00 PM
Posted by Administrator
After using my parallel port ZIP 100 drive very often for transferring files to my vintage Amstrad PC 1640 (I used an USB ZIP drive for my modern PC, too), it dropped about 50cm down to the ground (front side first). It didn't worked anymore, so I thought it would be a good idea to open it, looking for a circuit path interruption or similar.
BUT. You can't open it without destroying it. These plastic brackets will break, see first image where they're located.

The good thing - now I can take a look at the board...

You see a large chip made from Iomega, named Phaethon (or at least branded with Iomega).
There are two other chips as well, I guess one of them is used to convert it to a parallel port signal. The red circles in the secound picture marking the flat ribbon cable connectors from the motor board.
Fortunately ZIP 100 drives aren't still too expensive at *bay, so I just have to get another one again. The DOS driver from Mr. Peichl ( see related link ) is still working fine, although I was *not* able to use the driver with Compaq MS-DOS 3.31, which runs well on an Amstrad PC 1640 and bigger hard drives (I had to copy the keyboard driver program from the original Amstrad MS-DOS 3.20 and patched it for version 3.31). So I finally had to take MS-DOS 5.0 for using PALMZIP.SYS instead of Compaq DOS 3.31 (with had a smaller memory footprint).

P.S.: Someone already tried to open it also, see http://www.techrepublic.com/pictures/cr ... zip-drive/
add comment ( 240 views )   |  permalink   |  related link   |   ( 3 / 2447 )

<<First <Back | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | Next> Last>>