Stuck on "Waiting"?

Started by jaymzjulian, April 17, 2019, 07:50:04 PM

Previous topic - Next topic

LamerDeluxe

Thanks for testing this! Really odd how the others cards seem to be inserted more securely, as the cartridge housing doesn't seem to be causing that. Maybe the extra 2mm would make a difference with my Vectrex connector though.

Mine is angled downwards a bit, even without any cable attached. The 3D demo crashes often or gets stuck on waiting.

LamerDeluxe

Okay, for science I opened up my Debris cartridge and inserted only the PCB. The connection was deeper and more tight, I could still tilt it up and down. So I think modifying the PCB for deeper insertion would help. It would also make the casing sit close against the slot for extra stability.

Then I measured the thickness of both PCBs and they both measured 1.63mm.

I've just connected it to my computer and tried a little bit of programming. a Text2Sprite object gave me a parameter error when I tried to rotate it. A LineSprite box worked fine.

The command line interface and trying to figure out the correct Basic syntax, then seeing some results made me feel like I was programming my VIC-20 for the first time as a kid. That was a really nice bonus.

I'm not sure my workflow is correct. I might have overlooked something in the manual. I'm now saving directly to the Vectrex32 mass storage device from my text editor and then issueing the load and run commands in the terminal. I'm a bit worried of wearing out the flash memory, as I save often.

Then I tried creating some 3D graphics and at some point the load command froze. Then my text editor told me the code had changed and asked me to reload. I shouldn't have done that, the source was empty now and that was that. I wonder if I tried to load too quickly after saving.

Still odd how the 3D demo has been giving me so much trouble, I wonder what the difference is.

Anyway, I'm enjoying trying to do some programming on this, can't wait to use the power of the 32 bit CPU properly. Odd how I'm still expecting smoother motion than the Vectrex is capable of.

Vectrex32

You could try shaving off some of the board around the edge connector. If you do it with the covers still on, any important traces should be safe. If you break it, you can return it to me for a free replacement.

Can you post the Rotate call that caused the parameter error?

The flash is rated for a minimum of 10,000 writes. That's a lot, and it doesn't mean it will fail at 10,001; it just means it's guaranteed to work until at least 10,000. Estimate how often you save (e.g. you work on it 2 hours a day and save every 10 minutes, for a total of 12 saves a day) and you can figure out how long it's guaranteed for (833 days in this example - over two years of working on the V32 two hours a day!).

You're using the same workflow I do, but as you've found, you can't load a file while it's still saving! Sorry about the lost program. :-(

What trouble is the 3D demo giving? You mention it crashed after creating 10 ships. If you have a terminal window open, it'll probably show you an error message, and I bet it'll be that there are too many vectors to draw in the allotted time.

- Bob

LamerDeluxe

Thanks for the kind offer! I will do that.

The only difference with that command was that the first parameter was a text2sprite object instead of a linesprite. I can try to reproduce it and then send you the exact command.

I save more often than that, but that is good to know. I wonder if it would be possible to add a function to upload from the terminal directly to memory and have it execute.

Load freezing while saving is a bit tricky. I'll start waiting a couple of seconds before trying to load. And I'll try to remember to not allow the editor to refresh if it goes wrong :)

The 3D demo often went black, glitched or jumped into Mine Storm. I'll have a try with the terminal attached to see what happens.

Vectrex32

I'm not sure what you mean by "upload from the terminal directly to memory". The editor and the terminal are two different programs, both running on the PC.

On my system, when I save a file to the V32, the Vectrex buzz stutters. That's how I know when the save is complete. Do you see (or hear) the same thing?

Jumping into Mine Storm is a really hard crash. Try it with the PC connected and a terminal window up. Does the PC lose the USB connection?

- Bob

LamerDeluxe

I thought you might be able to upload the file over the serial connection, using the terminal, into the memory of the cartridge. Of course the Vectrex32 would have to be updated to be able to do something like that, if it is even possible.

I have a late no buzz Vectrex model, so I haven't noticed that.

I'll hook up the Vectrex in a moment and will test what happens when it crashes.

LamerDeluxe

Well, I've been trying to run the 3D demo and I can't get it to run at all with the cable connected. The display just glitches out and goes black. Here's what I did:

Connected to the computer, ctrl-c, stop, load demo3d.bas, run, PRESS BUTTON 1 IN THE MENU:

Glitch + short audio -> black screen, no message, just a blinking cursor, terminal doesn't respond anymore.

Reset Vectrex

Still a black screen

Same thing after turning the Vectrex off, re loading etc.

Propping up the cartridge

Same thing happens

Overwrite the 3d demo with a new copy

Same thing

Propping up again

Screen collapses, crashes again

Re-insert cartridge multiple times

Doesn't help

Try it without the cable from the menu, runs first time.
Move three ships outside the display with the camera controls and it crashes.
Reset makes it go to Mine Storm

Second try

Dies right after pressing button 1 again, black screen.

Trying misslebreak outvaders:

Crashes to black screen the first time the ball hits the paddle.

Safe to say it is quite unstable here.

EDIT: I did play this game a couple of times before and it worked fine. And during development yesterday it seemed pretty stable.

LamerDeluxe

Okay, I got my Dremel and removed the protusions on the sides. Before I did that I noticed from the markings on the edge contacts that insertion of the contacts had only been 2mm.

It is now about 4mm, looking at the fresh markings, slightly less than two thirds of the lenght of the contacts. I think the housing is preventing it from going in further now. It does already feel more sturdy.

I will clean things up here and do another test.

LamerDeluxe

First try with the 3D demo from the menu: Glitch and crash
Reset and it works, that is odd

10 is still the maximum amount of ships before it crashes. The demo should probably have a limit.

Reset goes to the waiting message

Second go

Glitch and crash

Reset and again it works, weird

Button 4, back to menu

Missilebreak Outvaders

Crash on first ball contact again

This is all with the cable disconnected.

Well this might have helped somewhat, but not enough.

I vaguely remember later Vectrex models having a difference with the cartridge connections. Could that have anything to do with this?

I'm going to try without the housing to see if that helps at all.

LamerDeluxe

#24
Now that I have removed the housing I thought I'd inspect the board a bit. The soldering of the chips is not really clean, I'm seeing specs of solder near the leads of the chips.

But more importantly, I'm seeing some potential and one most likely short between the leads of the two chips. I guess that could very well be the cause of these problems.

A heads up: Removing the two protusions at the sides of the edge connector does get really close to one of the traces. So be very careful if you do this.

EDIT: Inserting it without the housing gives a really nice solid connection. The connector seems to go all the way in now.
Went over the leads of the chips with a toothbrush and a jewelers flathead screwdriver. Maybe this will help.

EDIT2: Well all of this hasn't helped. The 3D demo still crashed right away.

EDIT3: Vectorgunner and Lunar Lander seem to work fine. Yankee does a very short beep and immediately returns to the main menu.

Vectrex32

Am I correct that the situation appears to be deteriorating? I.e. things that worked before are no longer working?

I suggested early on that there might be a problem with the way the Vectrex edge connector is soldered to its board. If things are deteriorating, that would be be consistent with bad solder joints that are cracking.

LamerDeluxe

It does look like that Before this I only had trouble with the 3D demo and then only sometimes. I'm not really looking forward to fixing that, but that would have to be done anyway to keep my Vectrex working correctly.

Messing around with my simple rotating box demo seems to be working fine though, without the cartridge housing.

Vectrex32

I just saw something surprising. I ran the 3D demo, pressed button 1 and the Vectrex screen went blank. If I reset the Vectrex, it would restart, re-establish communication with the V32, and display the 3D demo screen with the first Tie fighter visible. After that, I could create more Tie fighters.

So something caused the Vectrex to crash but not the V32. At this point, I don't know what. But it doesn't appear to be a loose connection.

- Bob

LamerDeluxe

#28
Yes, I have that exact same behaviour now. I hope this is something that could be fixed in software then.
EDIT: Does your 3D demo crash when you move everything off screen by moving the camera? And by adding more than ten ships?

Vectrex32

Finally had some time to look at this.

I edited Demo3D.bas and added:
call WaitForFrame(JoystickDigital, Controller1, JoystickX + JoystickY)

after line 35. This solved the problem where the Vectrex crashes right after you press button 1 to leave the Instructions screen.

The other two problems, crashing after 10+ ships and crashing after moving the ships off the screen, are BASIC program crashes. They display error messages on the terminal. As such, I'm not worried about them. It's only a demo program. Consider them to be demonstrations of issues that can arise in your code. ;-)

- Bob