kamakazi Posted June 5, 2014 Share Posted June 5, 2014 I am working on a project (still working out some display and register issues) when it dawned on me. The original 400/800 had four controller ports and each port, in simple terms, had its own player register in PM Graphics (or in the OS). XL and XE machines removed two of the controller ports I assume to cut production costs. Does this mean that the extra player registers were removed as well or are they still intact? I'm asking because my game project is designed on paper to take advantage of all four player registers. I don't want to create something for just a specific line of Atari 8-bits...I want it to be able to play on all of them. Thanks in advance! Quote Link to comment Share on other sites More sharing options...
Bryan Posted June 5, 2014 Share Posted June 5, 2014 Totally different things. The controller ports are handled by PIA and ports 3 and 4 were repurposed to handle things like control of built-in BASIC and the self-test. The PMG's are handled by Antic and GTIA and are unaffected, otherwise existing software wouldn't work at all. Quote Link to comment Share on other sites More sharing options...
kamakazi Posted June 6, 2014 Author Share Posted June 6, 2014 I know that they are different...was just having a humorous moment. So if I have a program that uses all four player registers then the XL and XE will still have those registers (P0-P3)? And how much memory should I have on an XEGM with BASIC (Keyboard) running and DOS 2.5 loaded? If I'm not mistaking my XEGM "should" have 64K of RAM. All that BASIC is reporting back is 32K and that is using the command: PRINT FRE(0) Quote Link to comment Share on other sites More sharing options...
+David_P Posted June 6, 2014 Share Posted June 6, 2014 BASIC doesn't see RAM under the OS or under BASIC. That's 24K gone from your 64K. The system reserves the bottom 2K (roughly) for buffers, page zero, the stack etc, so we're up to 26K unavailable. Add a DOS, and that's another chunk of memory gone - leaving you with 32K of RAM available for programming. Quote Link to comment Share on other sites More sharing options...
Bryan Posted June 6, 2014 Share Posted June 6, 2014 I know that they are different...was just having a humorous moment. So if I have a program that uses all four player registers then the XL and XE will still have those registers (P0-P3)? Players are general purpose graphics objects. They don't actually have to be used 1 per controller or anything like that. You have 4 with missiles or 5 without. Do whatever you want with them. Quote Link to comment Share on other sites More sharing options...
kenjennings Posted June 6, 2014 Share Posted June 6, 2014 I know that they are different...was just having a humorous moment. So if I have a program that uses all four player registers then the XL and XE will still have those registers (P0-P3)? But you just said you know they are different. ! ? ! ? ??????? The controller ports are handled by the PIA chip. Player/Missiles are run by the GTIA chip. Removing the controller ports did nothing to change GTIA graphics features. (OK, GTIA does do the joystick triggers, but that just means the two bits for the triggers for those missing controller ports are not used.) Quote Link to comment Share on other sites More sharing options...
Bryan Posted June 6, 2014 Share Posted June 6, 2014 (OK, GTIA does do the joystick triggers, but that just means the two bits for the triggers for those missing controller ports are not used.) One of the triggers is now used to detect a cartridge. On the 400/800 it was done by looking for non-writable memory. 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.