• Please review our updated Terms and Rules here

Bad Apple for PC's

Meh, it's ok. But yea, the animation goes with the music, so it's hard to change the music..

But I just had a thought, if I am going to be using text mode, why don't I just make this a 8088 corruption video file? I'll install a soundcard if I had to, just to do it. (Of which I could technically do, I just have to remove my ethernet card).
 
But I just had a thought, if I am going to be using text mode, why don't I just make this a 8088 corruption video file? I'll install a soundcard if I had to, just to do it. (Of which I could technically do, I just have to remove my ethernet card).

I say go for it, with the sound card. Also, if you could capture the video output with a video capture card, it would look much better in the youtube video.
 
...Also, if you could capture the video output with a video capture card, it would look much better in the youtube video.
The model 25 doesn't have a video out or even a monitor plug, he would have to hack into the internal video lines, and I am not sure he would want to do that.
 
OMFG!!! I just have to share this "music remix" with you all:


That is awesome, was linked earlier up in the thread. Gotta love all the different music these guys have floppy drives playing with an audrino, makes me want to buy one and learn how to program it, lol.
 
Meh, it's ok. But yea, the animation goes with the music, so it's hard to change the music..

But I just had a thought, if I am going to be using text mode, why don't I just make this a 8088 corruption video file? I'll install a soundcard if I had to, just to do it. (Of which I could technically do, I just have to remove my ethernet card).
I dunno, I'd say keep pursuing the monochrome bitmap idea. It's a great concept, and with a video this simple, I think it could really work.

If you don't, I might have to ;)
 
Well what I have right now is all I've been able to push. It was 14MB though, and that's with RLE compression. It probably could be optimized better, like how I order the frames in the executable, but I'm hitting a limit, on how fast the computer can actually draw.

Now, is it possible, at all to do what old game systems can do, kill the raster after a certain spot to free up DMA time? I couldn't find much on that for MCGA, or what effect it would do to the screen.
 
I don't know too much about the internal architecture of MCGA PCs, but unless it's built like Tandy 1000 systems where the video actually steals system memory, then it shouldn't be stealing CPU cycles for DMA. In any case, raster-timing stuff is a lot trickier on the PC; only the EGA and VGA even have a split-screen facility, as far as I know. Probably not worth the trouble.

The thing about RLE is that with a video like that, it's likely to get much more efficient as you size it up, in terms of disk bandwidth, since you have many more solid-color bytes in a row that can be compressed down. With a 64 x whatever bitmap, the most you can hope for is to squash an eight-byte line down to two (maybe one if you tweak your compression technique to allow for long stretches of solid pixels, or you could also allow it to extend a run of bytes past the end of a line and onto the beginning of another.) With a 640 x 200 bitmap, on the other hand, you could go so far as to get an 80-byte solid-color line down to one or two bytes - a much greater savings.

That doesn't address the issue of how much data the CPU can push over ISA, but still, it might be worth a shot.
 
Hi guys,

I really like SEGA bad apple demo, so i want try to code 'bad apple' for XT with full screen CGA resolution 320x200. I am downloaded original bad-apple video, crap size to 320x200, then with help VirtualDub save images sequence. As result i get ~6500 bitmaps. Then i write simple converter from BMP file to CGA memory format:

4899525e6ec0f723033b027e0b0b262e.jpg

My main idea - minimum operation in result program, only copy pre-calculated image to video segment B800:0000. (rep stosw) But One CGA file have fixed size 16384 bytes. Too much for 6500 frames. I am try use simple RLE encoding alghoritm from PCX format:

1. if both bits are 1, the byte is interpreted as the run length. This leaves 6 bits for the actual run length value, i.e. a value range of 0-63
2. in any other case, the byte is interpreted as a single pixel value. This leaves all value for which bit #7 and bit #8 are not 1 at the same time. This requirement is not met by all values of 192 (binary 11000000) and above.

I compress all frames with PCX RLE to ~13 Mb, but i think it is too bad for XT. Each frame compress from 16Kb to 600-3000 bytes. Need more effictive compression alghorithm...
 

Attachments

  • CGA.zip
    3.6 KB · Views: 1
I made some suggestions earlier in the thread, but it mostly boils down to coming up with something that's tailored for CGA, not adapted from a VGA compression algorithm. RLE would be a good choice for this video, just not when it thinks in terms of byte pixels.
 
Back
Top