Jump to content

playsoft

+AtariAge Subscriber
  • Content Count

    578
  • Joined

  • Last visited

  • Days Won

    2

Posts posted by playsoft


  1. EDIT: Actually now I think about it the guy my mate when to see wasn't Harvey at all but some other guy who I think knew him. It was a long time ago :)

     

    Harvey lives in New Zealand but he did visit the UK before I knew him. I think he was over here for about 10 months and he stayed in Hull!


  2. I also like the music (hoping for some nice sfx too).

     

    The only thing I can take any credit for with the music is a converter which takes a midi file and turns it into simple data for the 8-bit. The project will need a musician but it may not be the best platform to attract any interest. I am reluctant to pull in a tracker as I'm trying to minimise cpu cycles and it's 15kHz since I use a Pokey timer for the sprites.

     

    Little heavy on the eyes while moving left and right ...

     

    Noted. I personally prefer to have the horizontal movement present than not to have it, but the thing to do is to make it selectable.

     

    Great! Have considered entering this into the ABBUC competition?

     

    I don't think you can put out demos if you want to enter the competition. As this is going to be a long term project, I didn't really want that restriction.

     

    seems 2013 battle of Mode9 games... ;)

     

    It definitely won't be finished this year... probably not next year either.

     

    i'm sure i don't know what you mean... mine's based on something i started in 2010 and have just refined (where "refine" means "completely redesign and code from scratch"). =-)

     

    Great minds... and I thought I was doing something sort of original...

     

    I would love to see more games using GTIA in text mode. I did some experimentation with that back in the day ... I had a concept of a Breakout style game using this mode, and DLI's to color the blocks. There have been a few games which made use of this mode too ... like Henry's House, and a couple of other Breakout games as well.

     

    I would not recommend that anyone bother to download it, as it's only a magazine game and pretty horrible by today's standards, but here I did the ships in GTIA 9 with ANTIC 2 underneath.

     

    Does anyone have the APX GTIA Demonstration diskette? I am sure I remember a 400/800 running a demo in a shop with a GTIA 9 digitised picture of Miss Piggy. I would really like to see it again but I can't find it anywhere. I have seen mention of the APX disk so I wonder if it's on there?

    • Like 1

  3.  

    That looks excellent - you are going to have a fun time working in GTIA 9. Good luck in the competition.

     

    Like the buses, you wait 30 years for a GTIA 9 vertical scroller and then two arrive at the same time! Actually mine won't arrive any time soon though and it doesn't look like we're doing exactly the same thing. I'll post a work in progress demo shortly - should be a GTIABlast! thread.

     

    Paul


  4. Having recently come back to the 8-bit I was thinking how nice it would be to use a modern controller with lots of buttons.

     

    Would it be feasible to develop an adapter which allowed an existing multi button joypad to be connected to two joystick ports?

     

    The d-pad and one button would go to port 1 for compatibility with existing software. The other buttons go to port 2, which can be made use of by new software.


  5. How would we get on A8 (Hardware Priors cannot get it) when the guy enter those Bars and it's suspended (see on the video at about 0:40) where he is at the some time above the 'backs' gfxs but 'masked by some of the Metalic Bars:

     

    In the PM graphics data, the frames for swinging from the bars could have those horizontal sections left blank (and hence transparent), that way the bars would appear to be in front.

     

    That might be how it's done above, since it's only the horizontal bar which appears in front - the vertical bar supports appear behind the player.


  6. I have vague memories of the TCR stores as I'd only visit a few times a year with my uncle. I'd forgotten Mike's Computer Store and Pilot Software but they ring bells now. I do remember on one such trip going to Pizzahut for the very first time - they must have been fairly new to the UK back then. We were hungry and both ordered large pizzas - the waitress asked if we were sure we both wanted large but we said yes, we were hungry. Suffice to say there was a lot of pizza left over.

     

    We'd also occasionally visit Southend for the arcades, the scalextric shop and a look in Maplins on the way home. I think that's where I saw the A8 for the first time and where I ended up buying my 400. When I could afford a disk drive I thought I'd try the local Dixons instead of TCR or Southend. I remember asking the assistant if they sold disk drives for the Atari computers and his exact words were "A disk what?".


  7. If I can remember how after all these years (some is familiar...) then I aim to write something this year. I did have the seed of an idea but I am not sure where I am going with it next. The demo is very basic and completely pointless, use the joystick to enclose an area and it will fill with red. Scrolls at half speed by default, press the trigger to toggle between full speed scrolling.

    - Paul

    PL080112.XEX

    • Like 1

  8. Nice to see you on here Paul, Spent many a happy hour typing in and playing some of your games in P6/NAU :)

     

    Thanks NuY, I had a lot of fun learning to program on the 8-bit and it was always great when Les would publish something. A chance visit here a couple of months ago and I was blown away by what is being done nowadays and it has inspired me to get my Atari down from the loft.


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


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


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


  12. Dual Display Utility which overlays a normal text mode screen over a graphics screen (as mentioned previously, I'm no expert programmer so all I know is that it's flipping the two displays via a DLI/VBI :)).

     

    That brings back some wonderful memories, the sheer thrill at having my first program published in a magazine. I had written it on my uncle's Atari 800 and sent it off to PCW. I think they acknowledged intention to publish but quite a few issues went by with no sign of it. I had just started college and one day I picked up the latest copy of the magazine to read on the train and there it was - not only published but progam of the month as well. I was paid £50 per published page plus £150 for program of the month - fantastic for a student and it brought me an Atari 400 of my own. I ended up getting royalties when they published it in the Best Of book, for publishing in some foriegn magazines (I never knew which magazines) and even when they got someone to write a C64 version. Fun times.

     

    - Paul

    • Like 1

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

    • Like 1

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


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


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


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

    • Like 5

  18. I wanted to try my hand at writing something in Adobe Flex and thought Drelbs was a good program to start with.

     

    You can play it here: http://www.playsoft.co.uk

     

    I have fond memories of Electrician too if I ever decide to do another.

    Will check it out :cool:

    Playsoft hmm must be Paul Lay :thumbsup: Let's have a new a8 game ;-)

     

    That would be an interesting thing to try some time. 2009 being the 30th anniversary of the A8 would have been the time to do it... maybe 2019 then, that will give me a bit of time to read up on all the stuff I've forgotten.

×
×
  • Create New...