Jump to content
IGNORED

Chess


Andrew Davie

Recommended Posts

Can't resist pixel pushing. I spent quite some time following-up on Thomas's observation about 'sub pixels".

New queen and king, and another mock game to test the visuals during "gameplay".

Actually, I'm just putting off doing actual programming...
 

1020791522_ScreenShot2019-12-06at9_58_09pm.png.a8ef2a8e60f738bf8fc48ec40f83ad45.png

 

 

Well, I see I've destroyed the contrast between black/white so now they're hard to tell. So, I'll fix that next.

Still, a fun "mock game".  Edit: whoops and it wasn't checkmate anyway :P

 

 

Edit: all I had to do was lighten the blue (square) colour +4 and this is the difference...

 

1360388499_ScreenShot2019-12-06at9_39_06pm.thumb.png.0e1fe51cea044b500684751d5babb08f.png

Edited by Andrew Davie
I didn't do it.
Link to comment
Share on other sites

I've done a bit of asking around, and @DirtyHairy has given me some assistance in getting up and running with the ARM side of things. Hopefully I can understand it. The plan is to try and get a chess engine running on the ARM while at the same time it's handling the display/bankswitching requirements of the '2600. We shall see. Seems do-able with interrupts.

I've done some more pixel pushing (of course), and checked out how it renders on all the emulators I'm aware of.

That is, Z26, Stellerator, Javatari, and Stella. They all look pretty good to my eye; but I've been staring at this so long it's hard for me to be truly impartial. I think it's much improved on the original but I kind of know what I expect to see. In any case, it's as good as I can make it :P

Here they are...

Z26...

z26b.png.1e93dc67bf8f8716a16d66dd34bc77f1.png

 

Stellerator...

stellerator.thumb.png.4d661eb73148ad03bd3bc24deba00e35.png

 

Javatari...

javatari.thumb.png.7e4080a34c784202a305cbfc3677df8e.png

 

Stella...

stella.thumb.png.7a2d60074b26c599dccb3c2742cfb4bf.png

 

Changes to the pieces include a rework of the top of the bishop, top of the king, the lower right base of rook knight and bishop, the knight's eye, careful attention to the "black" squares with pieces on top, 

Edited by Andrew Davie
I just edit to annoy people.
  • Like 1
Link to comment
Share on other sites

I didn't really think to keep a record of the pixel-changes in the pieces, but I did have some screenshots and I thought I'd plonk 'em here just in case anyone was interested in the pixel-changes as I went along. I know this isn't particularly interesting to anyone but me, but hey I have found over the many years of doing this stuff it's fun to look back.

 

In the mid 1980s, when I was programming Qb on the Atari 800, I had a videotape which I used to record a few seconds of gameplay as I was developing. It was awesome just watching the tape and seeing the game rapidly develop/change before my eyes. The forum is kind of like that - a bit of a snapshot of development of a game. I think it's worth doing - recording your thoughts as you go along, the paths you took, the decisions you made and why. I do know I have a worldwide audience of approximately 5 people who also care about this stuff :P


They're in chronological order...

screen1.thumb.png.05c0f9ddea48af5f42c06edbd05dec25.png

screen2b.thumb.png.d596f76879783bac68663f50e6051c69.png

screen3b.thumb.png.b4371bebeb530bb1fd96b0d27dd6344c.png

screen4.thumb.png.c3d7ac8354c9e95a34f2c331c0f7d776.png

screen5.thumb.png.efddd03486bdd21a4692ea74840b82e9.png

screen6.thumb.png.3dc21364a283de9b584c00ef985b8cd8.png

screen7b.thumb.png.6082c4449dc4b3d4c566168e477fb314.png

 

  • Like 1
Link to comment
Share on other sites

On ‎12‎/‎8‎/‎2019 at 6:58 AM, Andrew Davie said:

I've done some more pixel pushing (of course), and checked out how it renders on all the emulators I'm aware of.

That is, Z26, Stellerator, Javatari, and Stella. They all look pretty good to my eye; but I've been staring at this so long it's hard for me to be truly impartial. I think it's much improved on the original but I kind of know what I expect to see. In any case, it's as good as I can make it :P
 

Stella (et al, blah blah blah) ...

stella.thumb.png.7a2d60074b26c599dccb3c2742cfb4bf.png

 

Changes to the pieces include a rework of the top of the bishop, top of the king, the lower right base of rook knight and bishop, the knight's eye, careful attention to the "black" squares with pieces on top, 

These screens look really nice Andrew.  Clearly you've put a lot of thought and work into developing the sprites because the results speak for themselves.  :cool:  :thumbsup:

  • Thanks 1
Link to comment
Share on other sites

On 12/8/2019 at 4:16 AM, Andrew Davie said:

I think it's worth doing - recording your thoughts as you go along, the paths you took, the decisions you made and why. I do know I have a worldwide audience of approximately 5 people who also care about this stuff :P

I and the other four of us thank you. ;)

 

One thing that would be helpful in looking at the designs of the pieces, would be to see them in different patterns on the board (like in your mock game). That really helps get an idea of how easy to recognize they are in the context of a game.

Link to comment
Share on other sites

5 hours ago, Nathan Strum said:

One thing that would be helpful in looking at the designs of the pieces, would be to see them in different patterns on the board (like in your mock game). That really helps get an idea of how easy to recognize they are in the context of a game.

That's what the videos were mostly for. Can't you just pause every now and then to see how the pieces/board look in different ("real-world") situations?

 

Link to comment
Share on other sites

I still have to work at it, do a double-take, to tell the pieces apart. On the original VideoChess rom they are instantly recognizable.

 

It may have something to do with the pieces being different-looking on their right sides vs the left sides. It may be they consume too much of the square they reside in, and they tend to cover the square making it hard to see the color. When I look at A1 through H1 on a fresh board I see no spacing and little or no color of the square. Could even be the Chronocolor grating-like texture.

 

I want to like it - will be watching the progress..

Edited by Keatah
Link to comment
Share on other sites

1 hour ago, Andrew Davie said:

That's what the videos were mostly for. Can't you just pause every now and then to see how the pieces/board look in different ("real-world") situations?

Unfortunately, the videos don't play in Safari for some reason, so I just see a non-playable "play" button in the posts. I could use a different browser, but I'm entirely too lazy to do that. ;) 

Link to comment
Share on other sites

Just now, Nathan Strum said:

Unfortunately, the videos don't play in Safari for some reason, so I just see a non-playable "play" button in the posts. I could use a different browser, but I'm entirely too lazy to do that. ;) 

I'm a Mac person too but... mumble mumble Chrome....

 

Link to comment
Share on other sites

52 minutes ago, Keatah said:

I still have to work at it, do a double-take, to tell the pieces apart. On the original VideoChess rom they are instantly recognizable.

 

It may have something to do with the pieces being different-looking on their right sides vs the left sides. It may be they consume too much of the square they reside in, and they tend to cover the square making it hard to see the color. When I look at A1 through H1 on a fresh board I see no spacing and little or no color of the square. Could even be the Chronocolor grating-like texture.

 

I want to like it - will be watching the progress..

Thanks for the feedback.

I don't think it's ever going to be able to satisfy everyone.

It's a "playable" display and I guess that's about as good as it's going to get.

Personally I loathe the original chess display.

 

Link to comment
Share on other sites

1 hour ago, Nathan Strum said:

Unfortunately, the videos don't play in Safari for some reason, so I just see a non-playable "play" button in the posts. I could use a different browser, but I'm entirely too lazy to do that. ;) 


Another option - right-click on the video (that's two-finger tap for me), "download" and then click from your downloads folder.

 

Edited by Andrew Davie
  • Thanks 1
Link to comment
Share on other sites

Here's the file from which the utility will grab the pieces, in order to produce the source .asm graphics for each piece.

It's organised into 4 lines;  all white pieces on black, all white pieces on white, all black pieces on black, all black pieces on white.
I've scaled it up for display here - 800% normal size.  Pixels are tiny.

pieces_800pct.gif.5a7c1f8ddfbb1a97bf766c8dd1b38540.gif

 

They use the following palette (left to right, index 0 to 7)...

pieces_palette.thumb.gif.3f9ac19691bebe1afb4a464f879f3417.gif

 

The black is unchangeable.

 

The other colours you get to define in this Chronocolour™ implementation are colours #1, #2 and #4.

The other colours (3, 5, 6, 7) are a result of the blending of (1, 2, 4 and black) in various combinations.

I've put in reasonable representations of what you actually see, in those colour spots.

 

It's all very tricky, because the eye doesn't see the colours shown in the board pieces above. Those colours are actually just information for the utility to break down pixel into on/off usage for the Chronocolour™ triplet line.  Just quickly on that, the screen consists of three colours (A,B,C) repeating down the screen (one colour per line).  So, ABCABCABCABCABC . etc....  Well actually it's reversed by some historical accident, so it's CBACBACBACBA with regards to the palette.  A= colour#1 = blue, B = colour#2 = greyish, C = colour#4 = reddish.


Each line can have a pixel ON (in which case it is A or B or C depending on which colour is used on that line) or OFF (when it's black).

So, in the case of the "yellow" (=colour #6) then that is displaying CB (4+2) ON for the first two lines and black for the third.
Likewise, "purple" (=colour #5) then that is displaying CA (4+1) ON and black for the middle.

 

So, the template picture of all the pieces above needs to be converted from pixel number/indexes to on/off pixels for the Chronocolour™ triplets (CBA).

But it's way more complex because of the playfield format of the '2600.

In short, playfield consists of 6 bytes, ABCDEF each having 4 or 8 pixels. But instead of logic, the '2600 designers used some sort of system called bitfuck and the pixels are mangled so that the first 4 in A are OK, with 4 unused in A and then B and C are mirrored (back to front with regard to how you see them on the screen).

Because the pieces are 5 pixels wide, that means that the squares they are on do not fit onto nice boundaries. I need to be able to (quickly) draw a piece at any square position horizontally. But the squares start at pixel # 0, 5, 10, 15, 20, 25, 30, 35.  This means that a piece will be a different bit pattern depending on which of the playfield bytes it overlays. Fortunately, though, the left-half and the right-half of the chessboard are essentially equal in this setup, so I only need definitions for pixel positions 0, 5, 10, 15.

That works out to 4 horizontal square positions x (black+white squares) x (black+white pieces) x (blank, pawn, knight, bishop, rook, queen, king).

That is 4 x 2 x 2 x 7 = 112 different shape definitions. If I got that right.  Each definition will "overlap" two playfield bytes at worst and they're 8 "Chronocolour™ pixels" deep. Each Chronocolour™ pixel is 3 scanlines, remember?  That means 8x3 = 24 lines x 2 bytes = 48 bytes per shape. And there are 112, so total of 5376 bytes. Well, that's not going to fit into a single bank, is it?  So we need to keep that in mind, and the system is going to have to do some shifting. That's fine, cross that bridge when we come to it.

So that's the basic format. We have the graphics setup and pretty much "locked in". If I want to make changes, then the above template is where I'll edit it. The next step is to write a small utility which will grab the above image, pull out each of the piece definitions and create assembler source code for each of the shifted positions.  That's what I'll work on next. It shouldn't take too long - a day or two, say.

 

 

 


 

Edited by Andrew Davie
Link to comment
Share on other sites

1 hour ago, Keatah said:

WTF is that??!!?!


State-of-the-art chessboard display from home computer c.1978, thus contemporaneous with the '2600.

Of course it's not a fair comparison - the TRS-80 was hampered with character graphics in ROM.
But I thought it was interesting to show what was available around then, on other platforms.
 

 

Edit: I agree this was poorly reasoned/worded.
I was thinking at the time of the TRS-80 specifically because it was limited in horizontal resolution - still greater than the '2600 and how crappy the display looked. But of course there were gorgeous displays around at the time such as on the Apple II. I've left my original text intact, above. I just think it was poorly worded - particularly that last sentence.

Edited by Andrew Davie
Link to comment
Share on other sites

I always adored Sargon on the Apple II.  Here's a side-by-side comparison...
I believe the Apple II horizontal resolution was 280 pixels, with weird-ass 7-bit colour in 3-2-2 format. Something like that.
Anyway, 7 times the horizontal resolution and equivalent vertical resolution...

vsSargon.thumb.png.ecaa643f3c2e26df83e33daded9e8e47.png

Edited by Andrew Davie
  • Like 2
Link to comment
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.
Note: Your post will require moderator approval before it will be visible.

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.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...