Jump to content
Eagle

My experiments with Atari 7800

Recommended Posts

Ooooh...  Very nice :D

 

Mayhem in Monsterland is one of the games I always wished had been ported to the A8.  Wouldn't be anything wrong with a 7800 version, though!

  • Like 2

Share this post


Link to post
Share on other sites

I never seen before on A7800 

Real dual layer Parallax full screen 160x192 in 160B mode (13 colours)

Glitching little bit one font, will have to redraw the background layer.

Also I will put some colours change on DLI and maybe few different speeds for the background layer. 

I hope you will enjoy.

 

https://raz0red.github.io/js7800/?cart=https://atariage.com/forums/applications/core/interface/file/attachment.php?id=807395

 

Parallax.a78

  • Like 9

Share this post


Link to post
Share on other sites

I would like to present my new idea for A7800 - new graphics mode - Multicolor 160B+

 

Orginal picture - One Zak and his Kracken by Carrion (commodore plus 4) 89 colors used

https://tomseditor.com/gallery/i/33074/one-zak-and-his-kracken-by-carrion

 

Converted for A7800 has 55 colors

I'm still working on glitches and color palette 🎨 

I hope I'll finish in next few weeks

 

https://raz0red.github.io/js7800/?cart=https://atariage.com/forums/applications/core/interface/file/attachment.php?id=811209

 

Multicolor160Bplus.a78

 

CarrionA7800emu.png

  • Like 14

Share this post


Link to post
Share on other sites
1 hour ago, Cyprian said:

how did you reach 55 colors??

 

 

1500 bytes DLI :)

 

Spoiler
            lda #$F6
            sta P2C1
            lda #$04
            sta P2C2
            lda #$21
            sta P2C3
            lda #$03
            sta P3C1
            sta WSYNC
            lda #$24
            sta P0C2
            lda #$3D
            sta P2C2
            lda #$03
            sta P3C2
            sta WSYNC
            lda #$05
            sta P3C1
            lda #$3E
            sta P3C3
            sta WSYNC
            lda #$E2
            sta P3C3
            sta WSYNC
            lda #$c6
            sta P1C3
            lda #$3E
            sta P3C1
            sta WSYNC
            lda #$05
            sta P3C3
            sta WSYNC
            lda #$59
            sta P3C3
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$5A
            sta P1C3
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$c6
            sta P0C2
            sta WSYNC
            lda #$24
            sta P3C1
            sta WSYNC
            lda #$07
            sta P0C2
            lda #$26
            sta P0C3
            lda #$AB
            sta P1C3
            lda #$40
            sta P2C1
            sta WSYNC
            lda #$c6
            sta P1C3
            sta WSYNC
            lda #$F5
            sta P0C2
            lda #$4B
            sta P0C3
            sta WSYNC
            lda #$62
            sta P1C3
            sta WSYNC
            lda #$c6
            sta P1C3
            sta WSYNC
            lda #$62
            sta P1C3
            lda #$C4
            sta P2C2
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$51
            sta P2C1
            sta WSYNC
            lda #$13
            sta P0C3
            sta WSYNC
            lda #$04
            sta P0C2
            sta WSYNC
            lda #$5A
            sta P0C2
            sta WSYNC
            lda #$0E
            sta P3C3
            sta WSYNC
            lda #$05
            sta P2C1
            sta WSYNC
            lda #$26
            sta P1C3
            lda #$3D
            sta P3C3
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$04
            sta P2C1
            sta WSYNC
            lda #$51
            sta P2C1
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$c6
            sta P2C2
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$04
            sta P2C2
            lda #$59
            sta P3C2
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$F5
            sta P1C3
            lda #$5B
            sta P3C3
            sta WSYNC
            lda #$5E
            sta P3C3
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$40
            sta P0C2
            sta WSYNC
            lda #$03
            sta P3C3
            sta WSYNC
            lda #$F1
            sta P2C3
            lda #$26
            sta P3C1
            sta WSYNC
            lda #$E2
            sta P0C3
            lda #$24
            sta P3C1
            sta WSYNC
            lda #$F6
            sta P1C3
            sta WSYNC
            lda #$05
            sta P2C2
            sta WSYNC
            lda #$5E
            sta P3C1
            sta WSYNC
            lda #$c6
            sta P1C3
            sta WSYNC
            lda #$E3
            sta P1C3
            sta WSYNC
            lda #$15
            sta P1C3
            sta WSYNC
            lda #$3E
            sta P3C1
            sta WSYNC
            lda #$50
            sta P1C3
            sta WSYNC
            lda #$c6
            sta P2C2
            lda #$04
            sta P3C1
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$24
            sta P2C2
            lda #$4B
            sta P3C1
            sta WSYNC
            lda #$5E
            sta P2C1
            lda #$c6
            sta P3C1
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$4B
            sta P2C2
            sta WSYNC
            lda #$21
            sta P1C3
            lda #$26
            sta P2C1
            lda #$50
            sta P2C3
            lda #$24
            sta P3C1
            sta WSYNC
            lda #$E3
            sta P2C1
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$51
            sta P2C2
            lda #$04
            sta P2C3
            sta WSYNC
            lda #$C4
            sta P2C3
            sta WSYNC
            lda #$50
            sta P2C2
            sta WSYNC
            lda #$B1
            sta P2C2
            lda #$B6
            sta P2C3
            sta WSYNC
            lda #$B4
            sta P2C3
            sta WSYNC
            lda #$98
            sta P2C1
            sta WSYNC
            lda #$B6
            sta P2C2
            lda #$B1
            sta P2C3
            lda #$AB
            sta P3C1
            sta WSYNC
            lda #$F1
            sta P1C3
            lda #$B2
            sta P2C2
            sta WSYNC
            lda #$B4
            sta P2C2
            lda #$B6
            sta P2C3
            sta WSYNC
            lda #$B2
            sta P1C1
            lda #$24
            sta P2C2
            lda #$26
            sta P3C1
            sta WSYNC
            lda #$62
            sta P1C2
            sta WSYNC
            lda #$53
            sta P1C2
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$5E
            sta P3C1
            sta WSYNC
            lda #$26
            sta P3C1
            sta WSYNC
            lda #$26
            sta P2C3
            lda #$B4
            sta P3C1
            sta WSYNC
            lda #$62
            sta P2C1
            sta WSYNC
            lda #$4B
            sta P2C3
            lda #$23
            sta P3C2
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$E3
            sta P2C1
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$03
            sta P0C1
            lda #$07
            sta P2C1
            lda #$05
            sta P3C3
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$22
            sta P2C3
            sta WSYNC
            lda #$51
            sta P0C1
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$B6
            sta P2C1
            sta WSYNC
            lda #$B1
            sta P1C2
            sta WSYNC
            lda #$03
            sta P2C1
            lda #$E1
            sta P3C3
            sta WSYNC
            lda #$B6
            sta P2C1
            lda #$04
            sta P2C2
            sta WSYNC
            lda #$53
            sta P0C1
            lda #$03
            sta P2C2
            sta WSYNC
            lda #$24
            sta P0C1
            lda #$E3
            sta P2C1
            lda #$51
            sta P2C2
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$c6
            sta P2C2
            lda #$15
            sta P3C1
            sta WSYNC
            lda #$A2
            sta P3C1
            sta WSYNC
            lda #$15
            sta P1C3
            lda #$51
            sta P3C1
            sta WSYNC
            lda #$59
            sta P0C1
            lda #$53
            sta P2C1
            sta WSYNC
            lda #$E3
            sta P3C2
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$23
            sta P2C2
            lda #$B4
            sta P2C3
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$24
            sta P1C3
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$c6
            sta P1C3
            lda #$15
            sta P2C3
            sta WSYNC
            lda #$21
            sta P0C1
            lda #$B4
            sta P1C3
            sta WSYNC
            lda #$53
            sta P1C3
            lda #$59
            sta P2C1
            sta WSYNC
            lda #$B4
            sta P0C1
            lda #$c6
            sta P2C1
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$C4
            sta P0C1
            lda #$CC
            sta P2C1
            sta WSYNC
            lda #$52
            sta P1C1
            sta WSYNC
            lda #$59
            sta P1C3
            lda #$53
            sta P2C2
            sta WSYNC
            lda #$CC
            sta P0C2
            lda #$F1
            sta P2C1
            sta WSYNC
            lda #$52
            sta P0C1
            lda #$22
            sta P0C2
            lda #$B4
            sta P1C1
            sta WSYNC
            lda #$CC
            sta P0C1
            lda #$E1
            sta P0C2
            lda #$23
            sta P3C3
            sta WSYNC
            lda #$24
            sta P0C2
            lda #$E1
            sta P2C3
            sta WSYNC
            lda #$22
            sta P1C2
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$15
            sta P0C1
            lda #$E4
            sta P1C3
            sta WSYNC
            lda #$26
            sta P1C3
            lda #$B1
            sta P2C3
            sta WSYNC
            lda #$52
            sta P2C2
            lda #$E4
            sta P2C3
            sta WSYNC
            lda #$03
            sta P1C1
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$53
            sta P2C2
            sta WSYNC
            lda #$c6
            sta P0C1
            sta WSYNC
            lda #$C4
            sta P1C2
            sta WSYNC
            lda #$22
            sta P1C2
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$09
            sta P1C2
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$22
            sta P1C2
            lda #$4B
            sta P1C3
            sta WSYNC
            lda #$15
            sta P1C1
            lda #$05
            sta P1C2
            sta WSYNC
            lda #$09
            sta P1C1
            lda #$26
            sta P2C3
            sta WSYNC
            lda #$E4
            sta P1C1
            sta WSYNC
            lda #$22
            sta P1C2
            sta WSYNC
            lda #$E1
            sta P2C3
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$C4
            sta P1C2
            sta WSYNC
            lda #$22
            sta P1C3
            lda #$F5
            sta P2C3
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$E1
            sta P1C2
            sta WSYNC
            lda #$12
            sta P1C2
            sta WSYNC
            lda #$21
            sta P2C2
            lda #$50
            sta P2C3
            sta WSYNC
            lda #$F5
            sta P2C2
            lda #$C4
            sta P3C1
            sta WSYNC
            lda #$CC
            sta P0C2
            lda #$13
            sta P2C2
            lda #$AB
            sta P2C3
            sta WSYNC
            lda #$24
            sta P1C2
            lda #$23
            sta P2C3
            lda #$26
            sta P3C3
            sta WSYNC
            lda #$F5
            sta P3C3
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$07
            sta P0C2
            sta WSYNC
            lda #$26
            sta P0C1
            lda #$AB
            sta P1C2
            lda #$12
            sta P2C2
            sta WSYNC
            lda #$24
            sta P1C3
            lda #$F2
            sta P2C2
            sta WSYNC
            lda #$B4
            sta P0C1
            lda #$22
            sta P0C2
            lda #$13
            sta P1C2
            lda #$98
            sta P1C3
            lda #$21
            sta P3C3
            sta WSYNC
            lda #$12
            sta P0C3
            lda #$E1
            sta P3C3
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$15
            sta P2C2
            sta WSYNC
            lda #$E2
            sta P1C3
            lda #$F2
            sta P3C1
            sta WSYNC
            lda #$C1
            sta P0C1
            lda #$c6
            sta P2C3
            lda #$DC
            sta P3C1
            sta WSYNC
            lda #$DE
            sta P0C1
            lda #$B2
            sta P1C3
            sta WSYNC
            lda #$B4
            sta P0C1
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$17
            sta P3C1
            sta WSYNC
            lda #$AB
            sta P0C2
            lda #$B1
            sta P1C2
            lda #$DC
            sta P3C1
            sta WSYNC
            lda #$E4
            sta P0C3
            lda #$E2
            sta P1C1
            sta WSYNC
            lda #$DE
            sta P0C3
            lda #$AE
            sta P2C1
            sta WSYNC
            lda #$CC
            sta P0C3
            lda #$16
            sta P2C1
            sta WSYNC
            lda #$AE
            sta P1C2
            lda #$E4
            sta P2C1
            lda #$B6
            sta P3C1
            sta WSYNC
            lda #$E2
            sta P1C2
            sta WSYNC
            lda #$AE
            sta P1C1
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$B1
            sta P2C1
            sta WSYNC
            lda #$E4
            sta P1C2
            lda #$E1
            sta P2C2
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$00
            sta BACKGRND
            sta WSYNC
            lda #$E1
            sta P1C2
            sta WSYNC
            lda #$E1
            sta P0C3
            sta WSYNC

 

 

Share this post


Link to post
Share on other sites

@Synthpopalooza something else ;)

@Cyprian crossplatform tool (base on pchg) I'm still working on timings and colors. Also I'm using my scripts (data,dli,palets)

@SlidellMan yes only static screens (16kb)

 

My another test LSD Lizards by Jok - Amiga 32 colors

https://tomseditor.com/gallery/i/31046/madesolskogen-aka-lsd-lizards-by-jok&lang=en

 

 

https://raz0red.github.io/js7800/?cart=https://atariage.com/forums/applications/core/interface/file/attachment.php?id=811848

I'm getting better :)

In this mode I can use all 256 colors on screen

Biggest problem I have so far is A7800 palette 🎨 

There is too many of them ;( I just need ONE.

 

Enjoy

 

LSDLizard.a78

 

 

LSDLizardScrEmu.png

  • Like 7

Share this post


Link to post
Share on other sites

You should also try 320B.  I did some experiments with interlacing that get about 70 colors in 160A, about 100 in 160B, and 20 in 320B.  Its done by swapping charsets.

Share this post


Link to post
Share on other sites

@Cyprian not my tool. I know that one for ST. I'll send you PM

I can change up to 6 colors per line.  

LSD Lizards are up to 3 colors per scanline.

 

But I'll probably stay with 3 colors max and change my DLI script to generate something like this:

 

	ldx #$23
	ldy #$45
	lda #$67
	sta WSYNC
	stx P0C1
	sty P0C2
	sta P0c3

 

@Synthpopalooza I will try with 320B next.

But I'm not going to experiment with interlacing.

  • Like 1

Share this post


Link to post
Share on other sites

When you do 320B ...

 

It works like Antic 4 on the XL/XE but with one caveat:  00 and 01 can't occupy the same nybble.  It will result in both pixels being blank.  There is a way to defeat this, by engaging what is called Kangaroo mode, by turning off transparency.  The tradeoff for this is, 00 on your sprites will return the BG color, and not transparency.

 

Also you get two palettes available instead of just one.  Not usually used in game because of high DMA/MARIA costs, but can be used for static pictures/title screens.

Share this post


Link to post
Share on other sites

The other modes (apart from the 4 color 160A and two color 320A)

 

320C ... is a 320 pixel mode, but has the limitation that every nybble must take its color from the same Px palette number.

 

320D ... is a weird one.  Even columns are taken from one palette and odd columns from another.  I did try an interlace experiment once where you swap character sets and also color palettes, to get a 320 pixel vertical line interlace, but it didn't look very well.  So 320D is, at least to me, not of much use.

 

DMA costs:  160A/320A has lower DMA overhead than 160B/320B.  320C DMA overhead matches to 320B, and 320D DMA overhead matches to 320A.  This should be kept in mind when using these modes for actual in-game graphics.

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.
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...