Answering these as they apply to the C128 (and in most places, the C64): > What address is the userport at and the DDR for it? $DD02 is the DDR, and $DD03 is "Port B" (the main port). $DD00/1 are the corresponding addresses for the few bits of Port A that are available at the User Port. > What is the pinout of the userport regarding datalines only, is it > C64/V20 compatible? Regarding only the data lines.. Top: 1, 12: Ground 2: +5v 3: Reset 4-7: not important 8: /PC 9: /ATN (/PA3) 10-11: not important Bottom: A, N: Ground B: /Flag2 C-L: PB0 - PB7 (resp.) M: PA2 > Where is the input buffer (loc512 on the C64/Vic20)? C128: $0200 is the 512-byte input buffer, $0354 is the 10-byte keyboard buffer, > Where to I load in order to initiate a vector based autorun function > (ie I normally use the CHROUT vector/tape buffer on a C64)? I don't quite follow. Multi-load routines work the same way in a C128 as they do in other machines - fill the screen with commands, fill the keyboard buffer with $0D, and exit to BASIC, or just execute a LOAD command within the program, with the proper lines at the start of the program to handle BASIC's wraparound to the start when the LOAD is done. > Where are BASIC start /end text pointers? Start of Text: $2D Start of Variables: $2F Start of Arrays: $31 End of Arrays (+1): $33 Start of Strings: $35 End of Strings: $39 All variables, arrays, dynamic strings, etc are stored in Bank 1 and follow a similar format to that used in the C64 (strings are different, so I understand) > What is some simple code to bank I/O in and out of processor space? $FF00: Bits 7, 6: Ram Bank select (only 00/01 work on stock machines) 5, 4: RAM/ROM Select for $C000-$FFFF range: 00: Kernal 01: Internal Function ROM  10: External Function ROM 11: RAM 3, 2: RAM/ROM Select for $8000-$BFFF 00: BASIC (High half) 01: Internal Function ROM  10: External Function ROM 11: RAM 1: RAM/ROM Select for $4000-$9FFF (0=BASIC Low half, 1=RAM) 0: I/O Select for $D000-$DFFF (0=I/O Devices, 1=See bits 5, 4) So to reveal all the RAM in Bank 0, just set this register to $3F. To get at all the RAM in Bank 0, but with I/O devices, set it to $3E. Stock configuration would be to set this to $00. -- ___________________________________ _____ _____ | _///@@@| | | email@example.com /'//ZZ@@|____ | | |'''/ |'/@7 | | http://home.kscable.com/natedac |`'| `~~' | | | `| .--. | | C64/C128 - What's *YOUR* hobby? | `\____|___\ | | \_ | | |___________________________________ \_____| _____| - This message was sent through the cbm-hackers mailing list. To unsubscribe: echo unsubscribe | mail firstname.lastname@example.org.
Archive generated by hypermail 2.1.1.