Jump to content

Photo

player editor


63 replies to this topic

#1 playsoft OFFLINE  

playsoft

    Moonsweeper

  • 344 posts
  • Location:UK

Posted Thu Dec 15, 2011 6:00 PM

Not sure if this will be useful to anyone else, but I've put together a player editor for designing animated multicolour players. It's written in ActionScript using Flex so it runs as Flash in a browser.

The editor is here: http://www.playsoft.co.uk/aplayed.html

There are instructions here: http://www.playsoft....structions.html

There is an example design here: http://www.playsoft.co.uk/mwalk.apl which you can load and play about with in the editor.

And finally there is a little test .xex file here: http://www.playsoft.co.uk/test.xex which uses the above design. It requires 48k, not that it's big it's just how I've laid out memory.

Edited by playsoft, Thu Dec 15, 2011 6:02 PM.


#2 Allan OFFLINE  

Allan

    Quadrunner

  • 6,103 posts
  • Location:Wallingford, CT

Posted Thu Dec 15, 2011 8:19 PM

Very cool. Thanks for writing it and posting it.

Allan

#3 playsoft OFFLINE  

playsoft

    Moonsweeper

  • Topic Starter
  • 344 posts
  • Location:UK

Posted Fri Dec 16, 2011 4:07 PM

You are welcome Allan. It is over 20 years since I last did any A8 programming so I am sure there must be other tools out there, but I googled and could not easily find anything. I have been quite pleased with how my graphics are coming along given the low number of pixels and colours by today's standards.

I have just updated the editor so that if you hold down alt, ctrl or shift and click on a pixel, the pen colour is taken from that pixel. I'd have rather have done this with a right mouse click, but that is not available under Flash. It is available if I build it as an Air application though, so I will do that and make it available.

Paul

#4 Philsan OFFLINE  

Philsan

    River Patroller

  • 3,417 posts
  • New Orleans Saints Super Bowl XLIV Champions
  • Location:Switzerland

Posted Sat Dec 17, 2011 5:04 AM

I've asked for a similar program for years!

Nothing similar exists, in particular so user friendly and with the feature of calculating and display the ORed third color.

Thank you very much Paul!

Would be possible to save players data in a format easy to read with Atari Basic (or with the compatible but enhanced and faster Turbo Basic XL)?
Maybe it just a matter of explaining me how to load .apl files into Atari Basic.

#5 playsoft OFFLINE  

playsoft

    Moonsweeper

  • Topic Starter
  • 344 posts
  • Location:UK

Posted Sat Dec 17, 2011 7:00 AM

The .apl format is a binary format for the editor only, but if you click on LIST it will output the data to a text file for incorporating into your source code.

At the moment I have ouput the player data as hexadecimal prefixed with 0x since I am working in C. For Basic it would be better in decimal (and for assembler hexadecimal prefixed with $). I will modify LIST so that it outputs all 3 types.

I have also noticed that Notepad has trouble with the newlines in the LIST output, although my text editor (I am using Borland CodeWright) is ok with it. Please let me know if you encounter any problems with the newlines in the LIST output.

Paul

#6 kenfused OFFLINE  

kenfused

    Stargunner

  • 1,325 posts
  • Location:Columbus, Ohio

Posted Sat Dec 17, 2011 11:23 AM

Very very nice. And easy to use! I couldn't find the option to select Atari 7800 graphics modes :-D (just kidding) (kinda)

--Ken

#7 bfollett OFFLINE  

bfollett

    Dragonstomper

  • 516 posts

Posted Sat Dec 17, 2011 12:52 PM

Just a quick suggestion for those of us with older 4:3 monitors instead of 16:9 widescreen. Your screen layout is a little wider than what will display in Internet Explorer at a resolution of 1024X768. It looks like you could easily tighten things up a bit.

Thanks,

Bob

#8 playsoft OFFLINE  

playsoft

    Moonsweeper

  • Topic Starter
  • 344 posts
  • Location:UK

Posted Sat Dec 17, 2011 4:41 PM

I've modified the editor so that when you LIST the data it saves C, BASIC and Assembler source code - all to the same file, just use the section you require. I've only tested the C code. Philsan, please let me know if there's anything I should change in the BASIC source code. This is the LIST output generated from mwalk.apl.



Bob, I have squeezed the display together so it now fits on a 928x630 pixel canvas and is still able to display everything when the maximum settings are reached (16 frames, 48 pixels high, 8 pixel gap). I tested it at 1024x768 and it was ok in IE9. I will put a page together where you can open it in a pop up window as that will make a little more vertical space available.

Ken, alas with the squished display there's no longer room for the 7800 button :)

Paul

#9 Philsan OFFLINE  

Philsan

    River Patroller

  • 3,417 posts
  • New Orleans Saints Super Bowl XLIV Champions
  • Location:Switzerland

Posted Sat Dec 17, 2011 4:52 PM

Excellent Paul!

#10 Philsan OFFLINE  

Philsan

    River Patroller

  • 3,417 posts
  • New Orleans Saints Super Bowl XLIV Champions
  • Location:Switzerland

Posted Sat Dec 17, 2011 5:02 PM

For my needs I would like to have the data in this order too:
FRAME 1 - P0 - P1
FRAME 2 - P0 - P1
FRAME 3 - P0 - P1
FRAME 4 - P0 - P1

Now the format is
P0 - FRAME 1 - FRAME 2 - FRAME 3 - FRAME 4
P1 - FRAME 1 - FRAME 2 - FRAME 3 - FRAME 4

#11 playsoft OFFLINE  

playsoft

    Moonsweeper

  • Topic Starter
  • 344 posts
  • Location:UK

Posted Sat Dec 17, 2011 5:11 PM

Like this?

Attached Files


Edited by playsoft, Sat Dec 17, 2011 5:35 PM.


#12 Philsan OFFLINE  

Philsan

    River Patroller

  • 3,417 posts
  • New Orleans Saints Super Bowl XLIV Champions
  • Location:Switzerland

Posted Sat Dec 17, 2011 5:32 PM

Yes.

10110 REM **** FRAME 1
10100 REM **** P0 DATA ****
10120 DATA 0,0,28,42,94,64,159,188
10130 DATA 104,124,252,255,127,28,0,62
10140 DATA 71,82,83,98,119,63,38,36
10150 DATA 36,36,36,56,60
10310 REM **** P1 DATA ****
10120 DATA 0,0,28,42,94,64,159,188
10130 DATA 104,124,252,255,127,28,0,62
10140 DATA 71,82,83,98,119,63,38,36
10150 DATA 36,36,36,56,60
10160 REM **** FRAME 2
10100 REM **** P0 DATA ****
10120 DATA 0,0,28,42,94,64,159,188
10130 DATA 104,124,252,255,127,28,0,62
10140 DATA 71,82,83,98,119,63,38,36
10150 DATA 36,36,36,56,60
10310 REM **** P1 DATA ****
10120 DATA 0,0,28,42,94,64,159,188
10130 DATA 104,124,252,255,127,28,0,62
10140 DATA 71,82,83,98,119,63,38,36
10150 DATA 36,36,36,56,60


#13 Philsan OFFLINE  

Philsan

    River Patroller

  • 3,417 posts
  • New Orleans Saints Super Bowl XLIV Champions
  • Location:Switzerland

Posted Sat Dec 17, 2011 5:35 PM

Like this?

Exactly!

#14 playsoft OFFLINE  

playsoft

    Moonsweeper

  • Topic Starter
  • 344 posts
  • Location:UK

Posted Sat Dec 17, 2011 5:38 PM

No problem, LIST will generate both BASIC formats shortly...

#15 Philsan OFFLINE  

Philsan

    River Patroller

  • 3,417 posts
  • New Orleans Saints Super Bowl XLIV Champions
  • Location:Switzerland

Posted Sat Dec 17, 2011 5:41 PM

Thank you.

BTW, your Drelbs game is very nice:
http://www.playsoft.co.uk/

#16 playsoft OFFLINE  

playsoft

    Moonsweeper

  • Topic Starter
  • 344 posts
  • Location:UK

Posted Sat Dec 17, 2011 6:14 PM

The latest version of the editor (0.5) now outputs both BASIC listings.

Drelbs was my first effort at programming in ActionScript and I am pleased with how it turned out. I learnt a lot from doing it and it made me appreciate how well programmed the original 8-bit version was.

Paul

Edited by playsoft, Sat Dec 17, 2011 6:16 PM.


#17 fox OFFLINE  

fox

    Chopper Commander

  • 240 posts
  • Location:Poland

Posted Mon Dec 19, 2011 5:39 PM

The .apl format is a binary format for the editor only

Why? I'd be happy to add it to http://fail.sourceforge.net/ but I need documentation.

Edited by fox, Mon Dec 19, 2011 5:40 PM.


#18 playsoft OFFLINE  

playsoft

    Moonsweeper

  • Topic Starter
  • 344 posts
  • Location:UK

Posted Tue Dec 20, 2011 12:29 PM

The .apl format is a binary format for the editor only

Why? I'd be happy to add it to http://fail.sourceforge.net/ but I need documentation.


Because the tool doesn't trouble itself with the low level format of the file, it let's ActionScript take care of that:

private static function browseForSaveFile ():void
{
  printString (50, 8, "SAVE", true);

  fileRef = new FileReference ();

  fileRef.addEventListener (Event.CANCEL, saveComplete);
  fileRef.addEventListener (Event.COMPLETE, saveComplete);

  var data:ByteArray = new ByteArray();

  data.writeInt (FILE_VERSION);
  data.writeInt (frames);
  data.writeInt (height);
  data.writeInt (gap);
  data.writeObject (p0Colour);
  data.writeObject (p1Colour);
  data.writeInt (bgColour);
  data.writeObject (p0Data);
  data.writeObject (p1Data);
  data.writeInt (frame);
  data.writeInt (penColour);
  data.writeInt (anim_rate);

  fileRef.save (data);

  inhibitPress = true;
}

If you hex view a .apl file, writeInt() simply generates a 32-bit integer value but writeObject() generates all the information it needs in order to be able to reinstantiate that object when it is read back, i.e. it needs type information, not just the data values.

Above p0Colour and p1Colour are single dimensional arrays with 17 elements (maximum number of frames + 1 for the copy buffer); p0Data and p1Data are two dimensional arrays (actually an array of arrays), the first dimension is 17 again, the second dimension is 48 (the maximum height).

Interestingly although the full set of data is saved each time (i.e. 16 frames and the copy buffer at maxium height, regardless of what is actually being used in the design) the size of the resulting .apl file varies. Hence it appears that the ActionScript encoding is affected by the data values too.

When I implemented the file routines I made them as simple as possible because I did not envisage any attempt to use them outside of the editor. I could modify the code to save the data byte at a time in order to achieve a well known format which is not reliant on ActionScript encoding. I already have a file version in there which means I can maintain backwards compatibility with the existing format. This shouldn't be too complicated if there is value in doing it?

-Paul

#19 playsoft OFFLINE  

playsoft

    Moonsweeper

  • Topic Starter
  • 344 posts
  • Location:UK

Posted Tue Dec 20, 2011 1:39 PM

I have just uploaded a new version of the editor (0.6) which saves the .apl file in a new format. I don't have time to document it this evening, will do so tomorrow. The editor remains backwards compatible with the old format which it will continue to load.

-Paul

#20 fox OFFLINE  

fox

    Chopper Commander

  • 240 posts
  • Location:Poland

Posted Tue Dec 20, 2011 1:55 PM

ActionScript's encoding is not that complicated. See for example here: http://cvlib.googlec...tor/amf/AMF3.as

Of course, a simpler format not based on ActionScript's encoding is always welcome.

#21 playsoft OFFLINE  

playsoft

    Moonsweeper

  • Topic Starter
  • 344 posts
  • Location:UK

Posted Wed Dec 21, 2011 4:51 PM

ActionScript's encoding is not that complicated. See for example here: http://cvlib.googlec...tor/amf/AMF3.as

Of course, a simpler format not based on ActionScript's encoding is always welcome.


The first 4 bytes are a file version identifier and for version 1 they are 0x08 0x55 0x70 0x19. You have seen the original ActionScript save routine so with your encoding information you should be able to work out the binary format if you want to support the original file format.

The new format has file version identifier bytes of 0x9a 0xf8 0x39 0x21 and this is a marked up dump of mwalk.apl.

0 : 0x9a 0xf8 0x39 0x21 - file version identifier
4 : 0x04 - number of frames
5 : 0x1d - height
6 : 0x00 - gap
7 : 0x14 0x14 0x14 0x14 0x14 0x14 0x14 0x14 - P0 colour, frames 1..16
15 : 0x14 0x14 0x14 0x14 0x14 0x14 0x14 0x14
23 : 0x14 - P0 colour, copy buffer
24 : 0x28 0x28 0x28 0x28 0x18 0x18 0x18 0x18 - P1 colour, frames 1..16
32 : 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18
40 : 0x28 - P1 colour, copy buffer
41 : 0x00 - background colour
42 : 0x00 0x00 0x1c 0x2a 0x5e 0x40 0x9f 0xbc - P0 data, frame 1 (48 bytes)
50 : 0x68 0x7c 0xfc 0xff 0x7f 0x1c 0x00 0x3e
58 : 0x47 0x52 0x53 0x62 0x77 0x3f 0x26 0x24
66 : 0x24 0x24 0x24 0x38 0x3c 0x00 0x00 0x00
74 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
82 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
90 : 0x00 0x00 0x1c 0x2a 0x5e 0x40 0x9f 0xbc - P0 data, frame 2 (48 bytes)
98 : 0x68 0x7c 0xfc 0xff 0x7f 0x1c 0x00 0x3e
106 : 0x47 0x52 0x53 0x62 0x77 0x3f 0x22 0x30
114 : 0x70 0x78 0xf0 0xe6 0x63 0x00 0x00 0x00
122 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
130 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
138 : 0x00 0x00 0x1c 0x2a 0x5e 0x40 0x9f 0xbc - P0 data, frame 3 (48 bytes)
146 : 0x7c 0x7c 0xe8 0xff 0x7f 0x1c 0x00 0x3e
154 : 0x47 0x52 0x4b 0x2a 0x3f 0x3f 0x26 0x24
162 : 0x24 0x24 0x24 0x38 0x3c 0x00 0x00 0x00
170 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
178 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
186 : 0x00 0x00 0x1c 0x2a 0x5e 0x40 0x9f 0xbc - P0 data, frame 4 (48 bytes)
194 : 0x7c 0x7c 0xe8 0xff 0x7f 0x1c 0x00 0x3e
202 : 0x47 0x52 0x4b 0x2a 0x3f 0x3f 0x62 0x46
210 : 0x4e 0x8e 0x96 0xe6 0x63 0x00 0x00 0x00
218 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
226 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
234 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P0 data, frame 5 (48 bytes)
242 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
250 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
258 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
266 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
274 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
282 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P0 data, frame 6 (48 bytes)
290 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
298 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
306 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
314 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
322 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
330 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P0 data, frame 7 (48 bytes)
338 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
346 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
354 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
362 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
370 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
378 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P0 data, frame 8 (48 bytes)
386 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
394 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
402 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
410 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
418 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
426 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P0 data, frame 9 (48 bytes)
434 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
442 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
450 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
458 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
466 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
474 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P0 data, frame 10 (48 bytes)
482 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
490 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
498 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
506 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
514 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
522 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P0 data, frame 11 (48 bytes)
530 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
538 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
546 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
554 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
562 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
570 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P0 data, frame 12 (48 bytes)
578 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
586 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
594 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
602 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
610 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
618 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P0 data, frame 13 (48 bytes)
626 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
634 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
642 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
650 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
658 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
666 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P0 data, frame 14 (48 bytes)
674 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
682 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
690 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
698 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
706 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
714 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P0 data, frame 15 (48 bytes)
722 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
730 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
738 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
746 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
754 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
762 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P0 data, frame 16 (48 bytes)
770 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
778 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
786 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
794 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
802 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
810 : 0x00 0x00 0x1c 0x2a 0x5e 0x40 0x9f 0xbc - P0 data, copy buffer (48 bytes)
818 : 0x68 0x7c 0xfc 0xff 0x7f 0x1c 0x00 0x3e
826 : 0x47 0x52 0x53 0x62 0x77 0x3f 0x22 0x30
834 : 0x70 0x78 0xf8 0xe6 0x63 0x00 0x00 0x00
842 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
850 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
858 : 0x00 0x00 0x00 0x1c 0x3c 0x3f 0x60 0x5c - P1 data, frame 1 (48 bytes)
866 : 0x3c 0x28 0x68 0x5f 0x0f 0x20 0x3c 0x00
874 : 0x38 0x2d 0x2c 0x3d 0x38 0x30 0x18 0x18
882 : 0x18 0x18 0x18 0x1c 0x1e 0x00 0x00 0x00
890 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
898 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
906 : 0x00 0x00 0x00 0x1c 0x3c 0x3f 0x60 0x5c - P1 data, frame 2 (48 bytes)
914 : 0x3c 0x28 0x68 0x5f 0x0f 0x20 0x3c 0x00
922 : 0x38 0x2d 0x2c 0x3d 0x38 0x30 0x1c 0x0e
930 : 0x0e 0x06 0x06 0xc6 0x63 0x00 0x00 0x00
938 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
946 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
954 : 0x00 0x00 0x00 0x1c 0x3c 0x3f 0x60 0x5c - P1 data, frame 3 (48 bytes)
962 : 0x28 0x28 0x7c 0x5f 0x0f 0x20 0x3c 0x00
970 : 0x38 0x2d 0x34 0x1d 0x0c 0x0c 0x18 0x18
978 : 0x18 0x18 0x18 0x1c 0x1e 0x00 0x00 0x00
986 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
994 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1002 : 0x00 0x00 0x00 0x1c 0x3c 0x3f 0x60 0x5c - P1 data, frame 4 (48 bytes)
1010 : 0x28 0x28 0x7c 0x5f 0x0f 0x20 0x3c 0x00
1018 : 0x38 0x2d 0x34 0x1d 0x0c 0x0c 0x1c 0x38
1026 : 0x30 0x70 0x60 0xc6 0x63 0x00 0x00 0x00
1034 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1042 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1050 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P1 data, frame 5 (48 bytes)
1058 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1066 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1074 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1082 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1090 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1098 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P1 data, frame 6 (48 bytes)
1106 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1114 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1122 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1130 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1138 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1146 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P1 data, frame 7 (48 bytes)
1154 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1162 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1170 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1178 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1186 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1194 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P1 data, frame 8 (48 bytes)
1202 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1210 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1218 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1226 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1234 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1242 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P1 data, frame 9 (48 bytes)
1250 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1258 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1266 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1274 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1282 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1290 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P1 data, frame 10 (48 bytes)
1298 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1306 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1314 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1322 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1330 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1338 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P1 data, frame 11 (48 bytes)
1346 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1354 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1362 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1370 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1378 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1386 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P1 data, frame 12 (48 bytes)
1394 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1402 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1410 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1418 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1426 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1434 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P1 data, frame 13 (48 bytes)
1442 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1450 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1458 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1466 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1474 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1482 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P1 data, frame 14 (48 bytes)
1490 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1498 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1506 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1514 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1522 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1530 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P1 data, frame 15 (48 bytes)
1538 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1546 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1554 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1562 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1570 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1578 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 - P1 data, frame 16 (48 bytes)
1586 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1594 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1602 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1610 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1618 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1626 : 0x00 0x00 0x00 0x1c 0x3c 0x3f 0x60 0x5c - P1 data, copy buffer (48 bytes)
1634 : 0x3c 0x28 0x68 0x5f 0x0f 0x20 0x3c 0x00
1642 : 0x38 0x2d 0x2c 0x3d 0x38 0x30 0x1c 0x0e
1650 : 0x0e 0x06 0x06 0xc6 0x63 0x00 0x00 0x00
1658 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1666 : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
1674 : 0x01 - selected frame
1675 : 0x03 - pen colour
1676 : 0x04 - animation rate


#22 fox OFFLINE  

fox

    Chopper Commander

  • 240 posts
  • Location:Poland

Posted Fri Dec 23, 2011 3:16 AM

Posted Image
:)

#23 playsoft OFFLINE  

playsoft

    Moonsweeper

  • Topic Starter
  • 344 posts
  • Location:UK

Posted Fri Dec 23, 2011 11:07 AM

Glad the information was useful!

I've started a new web page containing everything in the first post and a new option of running in a pop-up window:

http://playsoft.co.uk/atari_index.html

When I get around to building the Air version it will also be available from here.

-Paul

#24 mono OFFLINE  

mono

    Star Raider

  • 77 posts

Posted Sun Sep 3, 2017 12:18 PM

Is your player editor still accessible? I've got 404 :/



#25 Schlortt OFFLINE  

Schlortt

    Combat Commando

  • 9 posts

Posted Wed Sep 6, 2017 7:34 AM

I love the player editor.  Up to 16 frames of animation and each frame can have its own colors.  The best thing is that it is an easy way to see what the third color of the overlapped two players will be.  List the file and you have text that you can paste right into your BASIC program, assembly or C.  He isn't paying to host that site anymore, but I hope he will add the standalone version to this thread.  






0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users