Jetboot Jack Posted September 7, 2002 Share Posted September 7, 2002 COOL!!! Mark - that's awesome!!!!! And it leaves you a bag of HW sprites for extra colors and details!!!! At last another software sprites in text mode demo - I though the Harlequin Menace one was gonna be the last time anyone believed me it could be done.... So here's one of the Menace demos to add to the whole discussion sTeVE menace.zip Quote Link to comment Share on other sites More sharing options...
Wrathchild Posted September 7, 2002 Author Share Posted September 7, 2002 Mark, what is the "4 colour bit pair flipping" table used for Yes, for drawing the left facing player. Because of their aligning , the flip is controlled by a single flag. (In the A800Win debugger, type 'F BC BC 1' to see the effect). The table is simply: MNOP = PONM - e.g. 01001110 = 10110001 I assume all of the Barbarian is chars that get redefined every frame? The draw area is actually 8 lines of chars. Although I'm using a 32 wide playfield for the demo the arrangement is for 40. 3 lines are arranged... 0,1,2,3,... 40,41,42,43,... 80,81,82,83,... This repeats for the next 3 lines and then 2 more. Each section has a DLI to use one of 3 charset banks. The refresh works by redrawing the background and then placing the sprites on top. Hence the need for a double buffer. In all I'll need a minimum of 3 buffers of 32*8*8 bytes for the battle area. The rest of the screen is practically fixed. IIRC, the 2 screens per game (4 in all) were Run-Length-Encoded and reconstructed between levels (I'll need to check this). I'll try and get these out for a later demo. If you see the C64 version, the colours are very 'tactically' arranged. Therfore they will be easy to replicate on the A8 with DLIs. One idea I've had is to do the snake bodies (the heads will be characters) as hw-sprites. These would be drawn one per VBI. Has anyone else done something like this before? Does it flicker, does the colour intensity drop, etc? I'm a bit hessitant to use these though as I need the sprites for effects and the servant. Perhaps the 5th colour and some on-the-fly DLI colour changes would do the trick, although that will hit the frame rate I guess. Glad you liked the demo, I'll write up an explanation of the sprite drawing when I have a bit more free time (I'm on holiday in 2 weeks time, so probably then). Currently the drawing uses another table to correct the untouched C64 data. I'd like to remove this re-map and correct the original data instead. At that point I'll probably give out the source-code. (I use CA65/LD65 from the CC65 cross-dev suite but its quite similar to the D/TASM everyone else seems to use) Mark Quote Link to comment Share on other sites More sharing options...
Sheddy Posted September 7, 2002 Share Posted September 7, 2002 Hi Steve, shame Menace never came out. Looking good in mode 4 already . Were there any plans to use the 5th colour? Mark, thanks for the explanation, so the way you address the screen is pretty much like a bit-map, plus you get the extra colour - nice! On alternating the players position every vblank, I can tell you that in my experience, yes, it will flicker, but it is less noticable if the colours are kept quite dark, but the intensity does also drop...so it needs a bit of compromise They also have a kind of see-through look to them, unless you put a black mask behind them (which kind of spoils any speed benefit - but you do get extra colours) Regards Quote Link to comment Share on other sites More sharing options...
Wrathchild Posted September 8, 2002 Author Share Posted September 8, 2002 so the way you address the screen is pretty much like a bit-map Not really, it mirrors the C64 screen layout: Screen chars: 0,1,2,3... 40,41,42,43... Offset into char-ram 0,8,16,24... 320,328,336,344... The C64 bitmap byte offsets are arranged like this: 0,8,16... 1,9,17... 2,10,18... ... 7,15,23... 320,328,336... 321,329,337... etc. I much prefer the Atari raster method. The BBC also uses the same arrangement as the C64, the advantage I can see it has is that you can easily poke 8 byte chars to the screen. Any other advantages? The Antic 4/multiple charset method of laying out a screen has a small disadvantage in that there are 8 chars (64 bytes) wasted at the end of the charset. (3 lines of 40 = 120 out of 128 chars). They could be utilitised in other ways though... Thanks for the hw-sprite tips, guess I need to use the 5th colour but still the snakes will be hard to achieve. Maybe they'll both have to be the same colour. Regards, Mark Quote Link to comment Share on other sites More sharing options...
Heaven/TQA Posted September 8, 2002 Share Posted September 8, 2002 i had just a quick look into system3's international karate... nice tricks there as well and archer used a similar mode enter monitor type f 62d2 62da 02 and you will see how the fighters were done in charmode and with nice player/missle overlayers... and nice switches with the background color in that area as well... you can cheat the player overlayers with "c 3764 1f" 611f contains the charbase 6120 the player-base hve Quote Link to comment Share on other sites More sharing options...
Heaven/TQA Posted September 8, 2002 Share Posted September 8, 2002 or type "a 378c lda #$e0 378e nop" and voila...back to system charset... hve Quote Link to comment Share on other sites More sharing options...
Jetboot Jack Posted September 9, 2002 Share Posted September 9, 2002 As to the 5 color use in Menace: Black background 2 colors for main playfield (inc parallax layer on later demos) 1 unique color for tha Aliens (each wave different) and bonus objects (you only collide with this color) 1 color for explosion fx (white in some of the demos) sTeVE Quote Link to comment Share on other sites More sharing options...
Heaven/TQA Posted December 26, 2002 Share Posted December 26, 2002 any news on the babarian front???? Quote Link to comment Share on other sites More sharing options...
Wrathchild Posted December 29, 2002 Author Share Posted December 29, 2002 At the beginning of September I'd added the logo and switched to a 40 column display. Its a little messy and so I'll try to get it tidied and released. The best thing would be to make this one open-source as I've got alot of the C64 code disassembled. One of my two daughters has had us in and out of hospital recently and so I'm not getting to do much coding at the mo Plus the other one has just started crawling and is close to walking, so she needs watching! I'm thinking of setting up a site for open development of some A8 conversion projects. A list of games I'd like to do (in prefered order of completion): Barbarian, Speedball, The Sentinel (Firebird) Rock'n'Bolt Paperboy, I'd be happy to oversee/assist things as I'd be trying to complete Elite myself Another thing Ia im to have a go at is something Final Fantasy-ish (e.g. I love FF3 on the NES) Who's in? Regards, Mark Quote Link to comment Share on other sites More sharing options...
Wrathchild Posted December 29, 2002 Author Share Posted December 29, 2002 Forgot to add... I have concerns over the snakes... it won't be possible to replicate the colours from the C64 except by using hw-sprites. Even then its still tricky as the 2nd player's jacket is a sprite along with the blood-splats and the grunt/servant. I'll probably end up leaving the colours as bland, e.g. from the available palette, and use hw-sprites for the heads in order to match the colours... see how it goes I guess. Backgrounds should turn out OK, but may need a few tricks to pump out a few extra colours. Regards again, Mark Quote Link to comment Share on other sites More sharing options...
emkay Posted December 29, 2002 Share Posted December 29, 2002 With the same DLI Trick, that I've used in ADMIRANDUS, it is possible to view one Player twice on one Scanline. It is enough time in one DLI, to change (double) two PLAYERS ... three will cost more CPU... But, you have to use GR.8 or 15 Mode-Line and a DLI in each Line will cost CPU-Power. So, if you will only try it in the Lines of the Fighters-region, the used CPU Power may still be low enough for a fast game.... BUT, this will work on a real machine only... I think For better understanding: It WORKS on a real machine, but no Emulator may do so... For the rest of the Display, you may use a Char-Mode with simple PMG-Overlays.... Quote Link to comment Share on other sites More sharing options...
emkay Posted December 29, 2002 Share Posted December 29, 2002 In the fact that my last real programming on the XL is 12 year ago, I made a sceme, that is showing, why the Players not flickering, when doubled in the DLI. Quote Link to comment Share on other sites More sharing options...
Jetboot Jack Posted December 30, 2002 Share Posted December 30, 2002 emkay - can you provide demo code of your multiplexer?? sTeVE Quote Link to comment Share on other sites More sharing options...
emkay Posted December 30, 2002 Share Posted December 30, 2002 Due to the long time some Disks are lost. But to write such a DLI in Basic may be possible. Shall I try? I mean to set the mnemonics with pokes I may tell you in words, the start of the DLI is allways in the same time at all scanlines. Every step of the Prozessor is fixed to the scanline. Just in the moment, when the HPOSP0 is set in the DLI, the position of the Player 0 will be set new. Let's say, the "switchpoint" is at coordinate 100. While the Player is in the coordinated range above 100 it will be set once properly. The first Player that was displayed in the Scanline before 101, cannot be "killed", because the Scanline cannot be redrawn in that short time. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.