NMS8245 2+ upgrade

Página 5/6
1 | 2 | 3 | 4 | | 6

Por Philip

Champion (380)

imagem de Philip

11-09-2018, 12:02

Angelo Sanna wrote:
Philip wrote:

That's very nice actually, because I'm making a automatic detection of the presence of the F4 register.
You can test it for me Smile

No problem Smile

Thanks!

Angelo Sanna wrote:
Philip wrote:

What do you get if you type this after powering on the 8250?
?INP(&HF4). Because there are normal and inverted implementations of the f4 register apparently...

255.

It seems you need the regular rom, not the inverted f4 version (see below)

NYYRIKKI wrote:

Personally I replaced F4-port with RETURN-key. -> If return is not pressed the logo is displayed and if return is pressed, then the logo is skipped. This kind of works since many times when you execute some command to perform soft reset, you apply the command with RETURN-key anyway...

Nice idea, I took the liberty to steal this feature as well.

So the new features in these roms are the f4 detection and if it is not found the f4 emulation with the RETURN key.

https://msx.vanderhoeven.org/systemroms/nms8245_2p.zip
https://msx.vanderhoeven.org/systemroms/nms8250_2p.zip

Also included are version for an inverted f4 port. Just to be clear (hopefully :) ), in the 8245 version the inverted rom replaces the normal rom, not the extra rom.

Por Angelo Sanna

Resident (40)

imagem de Angelo Sanna

11-09-2018, 22:54

Yes, will check this out Philip, many thanks! Smile

** edited message, not needed to quote you again. **

Por Angelo Sanna

Resident (40)

imagem de Angelo Sanna

20-09-2018, 21:50

Have finally get new EPROMS 27Cxxx's to burn the system software. So I think this would be in a few days. I keep you informed. Smile

Por Angelo Sanna

Resident (40)

imagem de Angelo Sanna

29-09-2018, 03:02

Philip wrote:

Nice idea, I took the liberty to steal this feature as well.

So the new features in these roms are the f4 detection and if it is not found the f4 emulation with the RETURN key.

https://msx.vanderhoeven.org/systemroms/nms8250_2p.zip

Also included are version for an inverted f4 port. Just to be clear (hopefully :) ), in the 8245 version the inverted rom replaces the normal rom, not the extra rom.

Hey Philip, just testing right now. I have burn the NMS 8250 EPROMS. I have tested the normal version, the inverted version not yet. But It is working. I have desolder the F4 latch IC's from the motherboard (74LS173 & 74LS02) and the 8250 is booting with 2+ logo. In basic I have also used the command: ?INP(&HF4) and also a return with 255.

If I type: DEF USR=0 (and then) A=USR(0), a cold boot appears. Normally with the orginal F4 latch and the ROMS I used before I get a warm boot without MSX boot logo. But I have understand this "warm" boot is not important and not many programs use this warm boot, right? Can you or someone else confirm this? Thnx!

So, because it is working I guess the version with inverted F4 is not needed to test? Can you also confirm this? :)

Por Angelo Sanna

Resident (40)

imagem de Angelo Sanna

29-09-2018, 03:21

Oh yes, another question @Philip, it is about the diskROM, I see other behaviour. The led of the diskdrive flashes twice, and the third time to read a disk. What version of diskROM is this? Is it an edited version? Or is it the 1.8 Philips fast diskROM? Can you tell more about this version? Normally the led of the drive flashes once, and then for the second time to read the disk.

I have also a question about the c-sync signal, but I have read here there is a solution for the NMS8245 with the V9958. Because on a new LCD scart monitor the screen is not stable. On CRT it is stable as rock. I have experimented with an LM1881N c-sync IC but it is not an solution.

I guess it is something with the +5Volt powerline from the powersupply in the 8245. So I do some more research, and will test it soon with an 7805 with directly powerlines to the V9958 with some 100nF capacitors on the 7805. It is like the schematic of Hans Oranje for the 8280, also with a seperate powerline to the V9958 with an 7805.

And of course if it is not the solution, I will test it with the resistor and parallel an capacitor on pin 6 (csync output on the V9958), because I have read more people here got this problem. The c-sync signal is not clear. But this must be have a reason. So I think this is because the power supply in the 8245 is not clean enough. And yes, I have already replaced the capacitors in the power supply and tested it on low ESR. Maybe you or someone else who is reading here have an opinion about this. Let me know. Smile

Por Philip

Champion (380)

imagem de Philip

30-09-2018, 21:20

Quote:

Hey Philip, just testing right now. I have burn the NMS 8250 EPROMS. I have tested the normal version, the inverted version not yet. But It is working. I have desolder the F4 latch IC's from the motherboard (74LS173 & 74LS02) and the 8250 is booting with 2+ logo. In basic I have also used the command: ?INP(&HF4) and also a return with 255.

If I type: DEF USR=0 (and then) A=USR(0), a cold boot appears. Normally with the orginal F4 latch and the ROMS I used before I get a warm boot without MSX boot logo. But I have understand this "warm" boot is not important and not many programs use this warm boot, right? Can you or someone else confirm this? Thnx!

So, because it is working I guess the version with inverted F4 is not needed to test? Can you also confirm this? Smile

Thanks for testing! Good to hear it actually works Smile
The warm boot is not used a lot indeed. Synth Saurus 2 is one of them. But it should still work with the return-f4-emulation.

There is no point in testing the inverted F4 version as the only difference is that it inverses the F4 bit before writing and after reading it.

Por Philip

Champion (380)

imagem de Philip

30-09-2018, 21:35

Angelo Sanna wrote:

Oh yes, another question @Philip, it is about the diskROM, I see other behaviour. The led of the diskdrive flashes twice, and the third time to read a disk. What version of diskROM is this? Is it an edited version? Or is it the 1.8 Philips fast diskROM? Can you tell more about this version? Normally the led of the drive flashes once, and then for the second time to read the disk.

The diskrom is indeed the 1.8 Philips fast diskrom. It is not altered. Can you test the new roms with your old diskrom?

Angelo Sanna wrote:

I have also a question about the c-sync signal, but I have read here there is a solution for the NMS8245 with the V9958. Because on a new LCD scart monitor the screen is not stable. On CRT it is stable as rock. I have experimented with an LM1881N c-sync IC but it is not an solution.

I guess it is something with the +5Volt powerline from the powersupply in the 8245. So I do some more research, and will test it soon with an 7805 with directly powerlines to the V9958 with some 100nF capacitors on the 7805. It is like the schematic of Hans Oranje for the 8280, also with a seperate powerline to the V9958 with an 7805.

And of course if it is not the solution, I will test it with the resistor and parallel an capacitor on pin 6 (csync output on the V9958), because I have read more people here got this problem. The c-sync signal is not clear. But this must be have a reason. So I think this is because the power supply in the 8245 is not clean enough. And yes, I have already replaced the capacitors in the power supply and tested it on low ESR. Maybe you or someone else who is reading here have an opinion about this. Let me know. Smile

On my 8250 converted to 2+ (but it was the same before converting it) the screen is slightly wobbly. I thought I fixed this by replacing all of the capacitors. But then I found it only wobbles when there is a monitor on top of it. It doesn't matter if it a crt of a lcd.

The screen on my 8245 is rock solid on both crt and lcd. The only thing is the diskdrive that disturbs the screen. So I fixed that by replacing it with a gotek Smile

Por Pentarou

Hero (523)

imagem de Pentarou

03-04-2019, 06:49

Philip or NYYRIKKI, If someone of you are reading this: Could you explain how to patch the msxnewbios sources to skip a slot with a keypress?

Por NYYRIKKI

Enlighted (6067)

imagem de NYYRIKKI

03-04-2019, 14:01

Seems that I've missed quite a few posts here...

Philip wrote:

Nice idea, I took the liberty to steal this feature as well.

So the new features in these roms are the f4 detection and if it is not found the f4 emulation with the RETURN key.

Ok... Smile In this case I'll give you another tip as well...

During early boot MSX checks that the upper 32KB of RAM does not have bit errors and there is indeed 32KB (and not ie. 8KB or 16KB) ... It actually does this two times!... As all MSX2+ machines have minimum of 64KB of memory this is utterly useless check. Even if you have failed RAM-chips in your machine, I've newer heard that this would have actually saved the day for anyone.... Only thing it can do is to move BASIC programs storage area up from #8000 and this way reduce RAM in use and probably only make the real problem even more hard to pin point.

Personally I changed it so that it checks only every 256th byte, but I see no reason why the check could not be removed completely if you want... This will save few seconds of boot time and will make the RETURN-check much more seamless (as you don't need to hold it down while MSX is doing these checks)

Pentarou wrote:

Philip or NYYRIKKI, If someone of you are reading this: Could you explain how to patch the msxnewbios sources to skip a slot with a keypress?

Yeah, well that is actually a bit difficult as the boot process is quite complex and you really don't want to break or make incompatible any part of that.

Personally I used keys "1" and "2" and did it by patching ROM like this:
#7DA1: #EF
#7FEF: #CD,#8C,#01
#018C: #79,#E6,#03,#C8,#FE,#03,#C8,#C5,#87,#47,#AF,#CD,#EC,#0B,#F3,#A0,#C1,#C0,#C1,#C9

... would be nice to know how Philip solved this?

Por Pentarou

Hero (523)

imagem de Pentarou

04-04-2019, 19:33

Thanks for your help,

NYYRIKKI wrote:

Personally I changed it so that it checks only every 256th byte,

Could you tell me what BIOS function needs to be modded to achieve this? (name of the function or where is located?)

Quote:

Personally I used keys "1" and "2" and did it by patching ROM like this:

Key "1" would conflict with Nextor, so I'd need to use other keys.

But I don't understand how your code works Question

; original from source
J7D87:	CALL	C7E1A
	PUSH	HL
	LD	HL,04241H
	RST	DCOMPR          ;Compares HL with DE - Z-flag set if HL and DE are equal. C-flag set if HL is less than DE.
	POP	HL			; expansion ROM ?
	LD	B,0
        JR	NZ,J7DBE		; nope, next slot
;
j7da0:  CALL	NZ,C7FFx		; if extension ROM has INIT, call INIT after VR
;
C7FFx:	IN	A,(VDP_PORT+1)		; C7FF5 for MSX2 or C7FF2 for MSX2+
	RLCA
	JR	NC,C7FFx		; wait for VR
	JP	CALSLT
; NYYRIKKI's code disassembly
7da0 ef        call 7fef
;
7fef cd8c01    call    018ch
;
; 018c
;
018c 79        ld      a,c
     e603      and     03h
     c8        ret     z
     fe03      cp      03h
     c8        ret     z
     c5        push    bc
     87        add     a,a
     47        ld      b,a
     af        xor     a
     cdec0b    call    0bech   ;Subroutine SNSMAT Returns the value of the specified line from the keyboard matrix
     f3        di
     a0        and     b
     c1        pop     bc
     c0        ret     nz
     c1        pop     bc
     c9        ret

and Philip's code is also different but I don't understand where it does the magic:

 Philip's code is a bit different than source after 7d8a

7d87 cd1a7e    call    7e1ah
7d8a f7        rst     30h
7d8b 83        add     a,e        ;slot 3-0
7d8c 0e3f      ld      c,3fh      ;address 03f
7d8e 00        nop
7d8f 00        nop
7d90 0600      ld      b,00h
;
7da0 c4f27f    call    nz,7ff2h
;
;From here onwards is slot 3-0. Code is same as source
0e3f cd790f    call    0f79h ;code at 0f79 is same as source
0e42 e1        pop     hl
0e43 c9        ret
Página 5/6
1 | 2 | 3 | 4 | | 6