|
Post by mirkosoft on Apr 26, 2016 18:37:34 GMT
I mean in my case is problem that it is not displayed on real Commodore monitor (I own 1084) 'cause I don't want risk damage. Before mode switch I turn off 1084 and output is only CGA2VGA converter which can display up to 1600 wide modes and connection to PEXHDCAP card allows me to create screenshots or record video - like you could see in comparison of SCPU128 (SCPU part is recorded on RGBI2SV - needs not extra large resolution) vs Mega 65 (M65 part is downscaled from 1920×1200 to 1440×900 and scaled to 1280×800). So, here's Q if it is not problem of adapter...
Miro
|
|
|
Post by mirkosoft on Apr 26, 2016 1:47:22 GMT
So, finally. I created near same text output except using POKE, I created calling Kernal65 by CPU switching - simple Z80 reads characters, 8502 outputs them to screen. Now it looks like stupidity, but in large programs calling Kernal65 routines, what can be written universally, can reduce code written for Z80...
Examples both working 100% correctly - so now no any problem, now I know that both Z80s working correctly. I attached diskimage and sources - simple start of both routines is SYS5120
Miro
z80call65kernal.d64 (170.75 KB)z8128kernal65call.asm (1.37 KB)_z8064kernal65call.asm (1.13 KB)
|
|
|
Post by mirkosoft on Apr 26, 2016 1:40:33 GMT
This is for me unknown - in all 8563 was designed before was Commodore 128 released, Commodore 900 was computer developed in 1984 and cancelled, then was 8563 imported to C128...
Really I never saw working C900 - why? Only 2 working prototypes exists.
Miro
|
|
|
Post by mirkosoft on Apr 25, 2016 17:02:28 GMT
I mean it opens new graphics capabilities and it will be controlled with external processor, so at moment can 8502 work with other tasks. It removes for all known attribute clash, only simple limit there is: Up to 1MB VideoRAM is not so easy to fill with data - CBM FS can work with 16MB file size, but if C128 has unexpanded 128K RAM - it must to load and store to VRAM, then next byte... No all has SCPU with for this 1MB RAM, but really can be used mode with less requirements in data size. For example our 8563 was used in Commodore 900 prototype first and had reserved 128K VDC-RAM, this allowed to display 1024x800 graphic mode. In description of this controller is written possibility to work with 1600x1200 graphics, color graphics lower, but not for impossible display it, reason is memory costs - with so high resolution are memory costs higher. In discussion is able to use this card also for other platforms - req'd is only interface, processor is in card... Problem always stay in memory filling. But like VDC-RAM sometimes used as RAMdisk 64K or 48K, this VRAM can be RAMdisk 1MB large... Miro
|
|
|
Post by mirkosoft on Apr 25, 2016 15:33:58 GMT
Hi!
Interesant, what a type of FPGA want you to use? I own Nexys4DDR, if you will make project it will be great to use with. I'm using with Nexys4DDR Mega 65 and Apple II.
Project status update: As controller will be used HD63484 which is much more than VDC and much more than 80 column card. Size of VideoRAM with this controller is up to 1MB. Used interface will need to connect to HP-IB or CAN bus. Also for DMA access will have own processor, currently not selected yet. Currently we are talking about CBM2ISA - Commodore Expansion Port to ISA bus - this makes more possibilities than to single videocard.
Miro
|
|
|
Post by mirkosoft on Apr 24, 2016 17:35:10 GMT
Hi!
I used DCR - so rev2 or 8568. Also results were different if was SCPU running at 20MHz. I was following instructions in this thread.
Miro
|
|
|
Post by mirkosoft on Apr 24, 2016 17:31:51 GMT
2MHz mode test: Both Z80 (C128 internal, in CP/M cartridge) can be activated from 8502 @ 2MHz. Z8064 was tested also in SCPU slow mode and turned on 2MHz - works. Z8064 limit is only SCPU in slow mode Z8128 limit is SCPU turned off and accessible in C128 mode only CP/M 2.2 limit is SCPU in slow mode, working in C64 mode only, 2MHz cannot to be tested for garbage screen - overclocking 8502 to 1,3MHz in not applicable, it activates Z80... CP/M 3.0 limit is same as Z8128
|
|
|
Post by mirkosoft on Apr 24, 2016 17:06:05 GMT
Ok, first: These routines are not running on CP/M - these routines are separate and only one requirement is Z80. Addressing: Z8128 has same addressing like 8502 (8502-$0400 = Z8128-$0400), Z8064 addressing is different (8502-$0400 = Z8064-$F400 like 8502-$1000 = Z8064-$0000)
answer working modes: 1. works 2. works 3. works not
In all cases: code running with Z8064 is 100% working no matter of SCPU mode (8/16-bit) only requires SCPU turbo off, tested was not 2MHz (when I create calling x65Kernal routines from Z80 I'll test it) In case of Z8128 works only if is SCPU turned off, 2MHz tested not yet. Working, but really mysterious behavior, routines - in VICE x128 working correctly. For to be sure I removed CP/M cartridge, removed SCPU, they have same behavior no matter if was before calling Z8128 routine activated and turned off Z8064. Summary: 1. routines cannot be used with CP/M (both versions) 2. Z8064 routines working correctly 3. Z8128 routines have mysterious behavior, but in x128 working
Accessing $0400 is in calling Z8128 from 8502, without running CP/M, have same application from 8502 or Z80 = default VIC-IIe screen. The sources and compiled programs will not run with CP/M not matter if 2.2 or 3.0 CP/M: 2.2 - works only in C64 mode, with Z8064, with or without SCPU, at 1MHz 3.0 - works only in C128 mode, with Z8128, without SCPU, tested was 1MHz
I'm going to test 2MHz and then add reply.
Miro
|
|
|
Post by mirkosoft on Apr 24, 2016 1:05:05 GMT
Looks like will be used other controller. Update when will be sure which.
Miro
|
|
|
Post by mirkosoft on Apr 24, 2016 0:54:28 GMT
I tried to use 1024x296(i) with CGA2VGA converter, image looks wide, I attached screenshot, but really it looks unusable or it has to be so? Miro 17
|
|