pouët.net

Go to bottom
CGA Plasma
[nfo]
screenshot added by orac81 on 2025-04-26 00:33:52
platform :
type :
release date : april 2025
  • 4
  • 2
  • 0
popularity : 52%
 52%
  • 0.67
alltime top: #31754
added on the 2025-04-26 00:33:52 by orac81 orac81

popularity helper

increase the popularity of this prod by spreading this URL:

or via: facebook twitter pinterest tumblr bluesky threads

comments

CGAPLAS.COM

Plasma graphics effect for 8086/CGA/No FPU. ASM source inc.
Written in NASM (Netwaork Asm), showing some basic asm methods.
This program is written 8088/86 code, CGA hires, no FPU needed.
Is there another plasma demo like this? I dont know.

Set FLYBACK var to build version with VDU flyback check - needed
on modern PCs, since its would be too fast.
The version with no check (CGAPLASX.COM) is faster on a real 8088/86.

It maps the output in CGA pixel pairs, so "dithering" gives the impression of more colours.

Its nearly a 256 Byte demo, with a bit more work it probably would be.

assemble with: NAS2COM name
or NASM -f bin name.asm -o name.com
added on the 2025-04-26 00:38:01 by orac81 orac81
Nice ... good to see something positive to come out of that color scheme
rulez added on the 2025-04-26 14:33:25 by Steel Steel
Looks great on a composite monitor. The nibble patterns all resolve to separate colors.
rulez added on the 2025-04-27 17:33:10 by gloriouscow gloriouscow
I have added SDL-PLASMA, VGA-PLASMA, and Turbo-C version to the original cgapkas.zip, same link..
added on the 2025-04-30 18:07:20 by orac81 orac81
Sweet, but 512 bytes is quite huge for such an effect.
Have a look at those 32 bytes (and less) variations of plasma / 2D CAs

Plasmosis 32b
Dirojed 32b
Dirojed CGA 32b
Earthview 32b

There are definitely more, but the setup is similar in all those prods ;)
rulez added on the 2025-05-07 16:37:28 by HellMood HellMood
Thumbs for running on 8088
rulez added on the 2025-05-07 17:28:55 by Optimus Optimus
@HM: Yes I wrote it 10 years back as a demo for a PC1512, (8086, CGA, no 8087), I couldn't find one for CGA 320x200 hires, (did anyone ever make one? I only see VGA ones) so I tried making my own. Its 280 bytes. It was more about (re) learning 8086 asm than microcoding. Its a bit clunky.

coding 8086+CGA is more difficult/bigger than VGA 0x13 demos. CGA hires layout needs bigger code. No FPU means Sin via lookup, (90 bytes), there are probably smaller codes, but 8086 speed is an issue.
Looking at the code the Y precalc table can be dropped and just calculated on the fly. I see plenty of places where I can improve the code, use regs instead of ram, di+stosb, loopnz, etc, so it will readily go <256b, but <128b will be tricky. but feel free to try!
added on the 2025-05-08 16:24:16 by orac81 orac81
The effect addresses the display as if it is 160x100, 16 colour by dithering. As GC says this resolves to solid 16 col in real Ntsc composite. (unintended effect!) It switches B8000/BA000 on alt frames (interlace). Overall near 4x "apparent" speed for just 320x200 mapping.

This a link to run cgaplasma under (GCs) MartyPC 8088 Xt emu.

https://martypc.net/?mount=fd:0:CGA%20Plasma%20(orac81).img
Just click on Display -> Composite Monitor for the 16 colour effect.

This to online dosbox:
http://twt86.co/?c=uAQAzRD%2BBnoD%2FgZ6A%2F4OewOLDnoDv58AiMrokABQiOroigBbAdiIhQgC%2FsH%2Bxf7F%2FsVPfeP%2BBnwD%2Fg59A%2F4OfQOLDnwDv8cAiMroYABQiOroWgBbAdiIhawC%2FsH%2Bwf7B%2Fs1PfeO4ALiOwL%2FGAInrg%2BMBsQ3T43UBR4qtrAKxBL6fAIqECAIA6CTwiMJOioQIAgDo0ugI0CaIB0NOfeRPT33XRbQBzRZ1A%2BlZ%2F8OJ04PjP9HigOKAdAOA8z%2BKh8gB0O5zAjT%2FwwCAg4aJjI%2BSlZibn6KlqKutsLO2uby%2BwcTGyczO0dPV2Nrc3uDi5Obo6uvt7%2FDy8%2FT19%2Fj5%2Bvv7%2FP39%2Fv7%2F%2F%2F%2F%2F
added on the 2025-05-08 16:53:25 by orac81 orac81
It would be easy to get down from the current 280 to 256 bytes if you don't store a sine table...
added on the 2025-05-08 17:16:54 by hfr hfr

submit changes

if this prod is a fake, some info is false or the download link is broken,

do not post about it in the comments, it will get lost.

instead, click here !

[previous edits]

add a comment

Go to top