Moon Patrol images doesn't start in real Vic-20?

Discuss anything related to the VIC
User avatar
nbla000
Salmon Run
Posts: 2582
Joined: Thu Oct 13, 2005 8:58 am
Location: Italy

Moon Patrol images doesn't start in real Vic-20?

Post by nbla000 »

Playing Moon Patrol images in a real PAL Vic-20, the game crash after a while.

This problem does not occur on emulation using vice.

Starting Program:

Code: Select all

1 ONAGOTO3,4
2 A=1:LOAD"MOONPATROL60",8,1
3 A=2:LOAD"MOONPATROLA0",8,1
4 PRINT "RESET THE VIC PLEASE..."
in vice ALT+R for a Soft Reset and the game works fine.

MOONPATROL60 and MOONPATROLA0 images are taken from zimmers.

In real Pal Vic-20, i reset the vic using the User Port or the Drive serial port but the problem is the same.

F1 F1 F1 to start the game, after 2/3 seconds the game freezes and if i reset again the game doesn't start anymore as you made a SYS64802 instead of the hard reset after loading.

does i need to reset the vic via cartridge port?
my 32k expansion doesn't have the reset button. :cry:

I've tested 3 different Vic-20 using a 1541/II and 1581 drive.
User avatar
nbla000
Salmon Run
Posts: 2582
Joined: Thu Oct 13, 2005 8:58 am
Location: Italy

Post by nbla000 »

Just a little consideration.

Since i don't think i'm so unlucky to have 3 bad Vic-20, maybe that Vice emulate the first/last revision of the Vic-20 board that may have some difference so little but that create the problem.

Someone may confirm or deny these considerations ?

Someone may test this game on a real PAL Vic-20 or NTSC/Sweden-Finland Version too?

HERE you may found the 1541 disk image that you must write to the real 1541 floppy using Star Commander or your favorite tool, note 8k each in banks 3 and 5 are required.

PS: I've tested the 32k Ram expansion using a little program and the expansion is OK.
Last edited by nbla000 on Tue Aug 01, 2006 2:30 am, edited 1 time in total.
Boray
Musical Smurf
Posts: 4064
Joined: Mon May 03, 2004 10:47 am

Post by Boray »

Okay, I will try it...

/Anders
PRG Starter - a VICE helper / Vic Software (Boray Gammon, SD2IEC music player, Vic Disk Menu, Tribbles, Mega Omega, How Many 8K etc.)
Boray
Musical Smurf
Posts: 4064
Joined: Mon May 03, 2004 10:47 am

Post by Boray »

I tried it on both my 9v Swedish keyboard vic-20 and on a vic-20 CR and it worked fine on both. Started it with a reset in the serial port.

/Anders
PRG Starter - a VICE helper / Vic Software (Boray Gammon, SD2IEC music player, Vic Disk Menu, Tribbles, Mega Omega, How Many 8K etc.)
User avatar
nbla000
Salmon Run
Posts: 2582
Joined: Thu Oct 13, 2005 8:58 am
Location: Italy

Post by nbla000 »

Boray wrote:I tried it ... on a vic-20 CR...
What means CR, which version is it?
Boray wrote:Started it with a reset in the serial port.
I presume using the serial port in back of the drive since you use the 1541 to load the game, right ?

Do you have used the first loader file or you have manually load the 2 image files?

A last thing... have you tried to play the game for a while ?
The initial screen works so you must play the game for a while to verify it, i know it's an hard job. :wink:

If all tests are done may be that the 3 vic-20 that i use are faulty... :cry:

Since i don't think so the only reason may be the 32k cartridge....
but i've tested it with this program retyped from a list discovered on internet, there are other accurate programs to test memory?
Last edited by nbla000 on Tue Aug 01, 2006 2:30 am, edited 1 time in total.
User avatar
Mike
Herr VC
Posts: 4845
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Post by Mike »

nbla000,

I've quick-glued together a test program. It first fills a complete block with one of the values 0..255, and then checks whether the block has retained this value. If the check fails, the border changes from green to red, and the offending address is displayed.

This is still more a less a static test. It only checks, that all addresses can hold all their possible values over a prolonged period. There are also other ways RAM can fail, for example a location that changes its value, even though another location has been addressed. For this, a more complicated test is needed.

The program checks BLK1. For BLK2, BLK3, and BLK5, change both occurences of the value 32 to 64, 96, and 160, respectively.

1 POKE55,0:POKE56,32:CLR:FORT=673TO733:READA:POKET,A:NEXT
2 DATA169,29,141,15,144,169,0,133,251,133,252,168,169,32,133,253
3 DATA162,32,165,251,145,252,200,208,251,230,253,202,208,246
4 DATA169,32,133,253,162,32,165,251,209,252,208,13,200,208,249
5 DATA230,253,202,208,244,230,251,208,214,96,169,26,141,15,144,96
6 SYS673
7 IFPEEK(36879)=26THENPRINT"ADDRESS"PEEK(782)+256*PEEK(253)"FAILED!"

Here's the source:

Code: Select all

02a1   A9 1D      LDA #$1D
02a3   8D 0F 90   STA $900F
02a6   A9 00      LDA #$00
02a8   85 FB      STA $FB
02aa   85 FC      STA $FC
02ac   A8         TAY
02ad   A9 61      LDA #$20
02af   85 FD      STA $FD
02b1   A2 20      LDX #$20
02b3   A5 FB      LDA $FB
02b5   91 FC      STA ($FC),Y
02b7   C8         INY
02b8   D0 FB      BNE $02B5
02ba   E6 FD      INC $FD
02bc   CA         DEX
02bd   D0 F6      BNE $02B5
02bf   A9 61      LDA #$20
02c1   85 FD      STA $FD
02c3   A2 20      LDX #$20
02c5   A5 FB      LDA $FB
02c7   D1 FC      CMP ($FC),Y
02c9   D0 0D      BNE $02D8
02cb   C8         INY
02cc   D0 F9      BNE $02C7
02ce   E6 FD      INC $FD
02d0   CA         DEX
02d1   D0 F4      BNE $02C7
02d3   E6 FB      INC $FB
02d5   D0 D6      BNE $02AD
02d7   60         RTS
02d8   A9 1A      LDA #$1A
02da   8D 0F 90   STA $900F
02dd   60         RTS
Michael
carlsson
Class of '6502
Posts: 5516
Joined: Wed Mar 10, 2004 1:41 am

Post by carlsson »

I'm quite sure this problem has something to do with NMI timers being reset or not reset depending on which kind of reset you execute (the cartridge is supposed to start with a hard power on, while we would generate a reset signal from the bus).
Anders Carlsson

Image Image Image Image Image
tlr
Vic 20 Nerd
Posts: 567
Joined: Mon Oct 04, 2004 10:53 am

Post by tlr »

carlsson wrote:I'm quite sure this problem has something to do with NMI timers being reset or not reset depending on which kind of reset you execute (the cartridge is supposed to start with a hard power on, while we would generate a reset signal from the bus).
These two ways of restarting the machine are very similar.
The reset-line goes straight into the VIA's for example.
The machine also pulls reset low during a power-cycle.

Can you make a program that reliably differentiates a power-cycle from a hard-reset? ;)

It could be possible if there are parts of a chip that does not get reset by the reset-line fed to it, but I don't know of any such parts.
Boray
Musical Smurf
Posts: 4064
Joined: Mon May 03, 2004 10:47 am

Post by Boray »

>What means CR, which version is it?

CR=the c64 power supply version. So I tried it both a new and an old vic-20.

>I presume using the serial port in back of the drive since you
>use the 1541 to load the game, right ?

Yes.

>Do you have used the first loader file or you have manually load
>the 2 image files?

I used your loader.

>A last thing... have you tried to play the game for a while ?

Yes, I played it for a couple of minutes.

/Anders
PRG Starter - a VICE helper / Vic Software (Boray Gammon, SD2IEC music player, Vic Disk Menu, Tribbles, Mega Omega, How Many 8K etc.)
User avatar
nbla000
Salmon Run
Posts: 2582
Joined: Thu Oct 13, 2005 8:58 am
Location: Italy

Post by nbla000 »

Using the Mike's program i've retested my 32k cartridge and no errors found in any block.
carlsson wrote:I'm quite sure this problem has something to do with NMI timers
Since i think that if carlsson says a thing probably is the right thing, i've retested a lot of cartridge games :lol: on my real Pal Vic-20 and no problems discovered for any games except for MS-PacMan, disk image HERE.

Actually Ms-PacMan it's another game that need an Hardware reset, the game starts it's playable for a while but occasionally freeze and when reset again the game starts but it's no more playable.

But now the question is, since the game works well on emulation and in 2 version of real Boray's Vic-20, why in some models the game doesn't work well ?
if is a NMI timers question why the problems is not general but for some machines only?

I think that may be a carlsson works ONLY!!!! any other accept the challenge or simply may help us?
Last edited by nbla000 on Tue Aug 01, 2006 2:31 am, edited 1 time in total.
User avatar
eslapion
ultimate expander
Posts: 5458
Joined: Fri Jun 23, 2006 7:50 pm
Location: Canada
Occupation: 8bit addict

Post by eslapion »

Has anybody tought of the possibility that your ram expander must be set to READ ONLY before resetting ?

That's one thing VICE does when it loads a ROM image, the memory area becomes read only.
Boray
Musical Smurf
Posts: 4064
Joined: Mon May 03, 2004 10:47 am

Post by Boray »

My ram expander was not set to read-only when I tested it...
PRG Starter - a VICE helper / Vic Software (Boray Gammon, SD2IEC music player, Vic Disk Menu, Tribbles, Mega Omega, How Many 8K etc.)
User avatar
nbla000
Salmon Run
Posts: 2582
Joined: Thu Oct 13, 2005 8:58 am
Location: Italy

Post by nbla000 »

Yes, i don't think is a RAM matter but as Carlsson says a NMI timers question
Boray confirm this and Vice doesn't work properly for protected Ram images that try to write to itself example Omega Race Original

In any case i use an expansion like this without 2k eprom and 32k memory switch 1/2/3/6 enable banks 5/2/3/1, i don't know what switch 4/5 do, someone know this cartridge?
Boray
Musical Smurf
Posts: 4064
Joined: Mon May 03, 2004 10:47 am

Post by Boray »

I don't know anything about NMI timers (I think ;) )... I would say there must be something wrong with your ram expander. Or maybe your PSU if you used the same one when you tried with your vic-20s....

/Anders
PRG Starter - a VICE helper / Vic Software (Boray Gammon, SD2IEC music player, Vic Disk Menu, Tribbles, Mega Omega, How Many 8K etc.)
carlsson
Class of '6502
Posts: 5516
Joined: Wed Mar 10, 2004 1:41 am

Post by carlsson »

Ok. After a bit of solder hack to my memory expansion (I hope it will retain functionality now - you'd not want to see a picture), I loaded Moon Patrol and noticed that SYS64802 indeed won't start it, but a reset button (mine is on the user port) works. I can play the game as long as I want.

I also noticed the center screen mechanism is in function even while playing the game, but it is acts buggy if one moves the screen while playing.

Altogether a better game than I remembered it. It uses multicolour, but not in a spectacular way. It has good scrolling and smooth movements, good animations and background music.

So, perhaps there is a problem with nbla's memory expansion or reset button, if you tried three VICs and get the same error. Or the files transferred from Zimmers were buggy. Mine were transferred years ago, but supposedly from the same source.
Anders Carlsson

Image Image Image Image Image
Post Reply