Hi Somarl,
Because this question is obviously related to the challenge I've set you, I'm not going to give you a full and complete answer so that you will still have something to investigate. However, I will give you a signpost or two:
First of all, your question in relation to SYNC isn't part of the challenge, so will explain that one in full. It's not a concept that I expect a learner to fully understand, so don't worry if you're not following. The system is based on what's known as a double buffer refresh, which means you have to sync the screen
twice before the user will see what you've drawn. Whenever you draw to the screen (with PRINT, or PASTE IMAGE, or any other command that makes something appear on screen) you are not really drawing to the
screen you are drawing to what's called the
backbuffer, which isn't visible to the user. Each time you call a SYNC, the contents of the backbuffer are copied to the viewable screen and the user can see it. Even after you've done this, all future draw operations will continue to work on the backbuffer.
Now, the catch is that the backbuffer has to be SYNC'd too: There's nothing in the backbuffer, even if you've drawn things, until you use SYNC for the first time, because until that point the backbuffer hasn't been rendered. This means that the very first time you call a SYNC, an empty, blackscreen backbuffer is being dumped to the viewable screen and then all the stuff you've drawn is placed in the backbuffer (which the user can't see yet). From that point on, every time you call SYNC you will dump visible stuff to the screen (assuming you've been drawing stuff). In practical terms, the very first SYNC of the day doesn't do anything visible, and every SYNC you call after that is actually displaying a frame
behind your program.
This is why your first SYNC doesn't seem to be working on its own, and why it
does seem to be working when it's in a loop: you're firing many SYNCs per second and the backbuffer is being worked at full speed.
Being just one single frame behind in display isn't really a problem when you're running at 60 frames per second, as it isn't noticable. However as you've seen, it can result in confusion if you don't realise what's going on.
Now, onto the challenge related stuff. You should take a look at two commands called DRAW TO FRONT and DRAW TO BACK. One of these commands (I'll let you investigate and experiment to discover which) is going to help you stop images from preventing your 3D elements from showing up.
I see that you've encountered the demon beast known as the "backdrop" before. It may not have got in your way yet, but it's going to soon. If your background image disappears and gets replaced by a big blue background of evilness, you'll know it has you in its grasp. Since you'd rather be making your own background with your resized image, you may not require the big ugly blue "backdrop" at all. Perhaps you can find some way to turn it off...
You'll know you've got it right because your cube will show up in the middle of your screen in front of the background image without positioning either the cube or the camera in any specific way. Just make the cube; it'll be in the centre of your screen. If you can see it, you'll know you've beaten both the backdrop and the draw order problems you're experiencing.
These questions show you've been doing your homework for the challenge - Carry on, padawan!