not really, you cannot usually use -de for "on", but it is OK for "in". Therefore "Lamba masada" sounds like "the lamp is in the table".
(sometimes you can, but often it sounds wrong so when you see "on" try to use üzerinde/üstünde. Except for weird English uses like "on the bus", then you cannot say üzerinde/üstüne of course)
Lamba masada sounds totally ok for me. In/at/on = -de/-da
It's really hard to say on = üstünde always. For instance; on the road. You can't really say Yolun üstündeyim.
üstünde/üzerinde actually means on top of but we use it so frequently that you can translate that into on. but this doesn't mean that on = üstünde and you shouldn't use -de/-da
I don't want to create rules but just when I think about it; i have the feeling for things that are lying on the table, it is OK to use -de/da but not really for things which are standing. Would you really say for example "şişe masada"? even if you say it, how much more likely are you to say "Şişe masanın üstünde."
I often say Şişe, sürahi ve tencere masada. Or Vazo masada. You can also say Kağıt masanın üstünde. The difference is actually about the emphasis. For example if you are preparing the table you would say Şişe masada. (I already put it on the table) But if someone is looking for the bottle you would say Şişe masanın üstünde. to be more specific about the location. Or to imply that there is something on the table and you should be careful you can say Masanın üstünde şişe var. I think you are free to use -de/-da instead of üstünde just like you can use on instead of on top of in English.
For Spanish speakers -> Encima = üstünde
I never thought of our odd "on the bus," but you're right. Poor non-native English speakers! Now I have a mental picture of everyone tied on top, like luggage!
Actually, I'm not a native English speaker, but I've never thought about that too. What you have pictured is really funny. Haha. XD
But "on" could be possible for the bus that doesn't have roof (do they call it "roof"?). Double decker, right? :D
I'm guessing it's because older forms of transportation mostly made sense with the literal sense of "on". "On a horse", "On a boat", etc., and so we kept with it for "bus"?
Then again, that doesn't explain why we say "in a car" and never "on a car".
There is a picture on the wall": "Duvarda (bir) resim var." But i think mostly we say "Duvarda bir resim asılı." (I do not know how you say it in English: A picture is hanging on the wall (?).
1) Is lamba only used for "standing" lamps or can you use it for hanging lamps too?
2) How would you say that the lamp is (hanging) over the table?
How about: Lamba masanın yukarısında asılıdır. Over in this case meaning above?
It uses both.
üst means something like "top" or "upper side".
So from that you get masanın üstü "the table's top" with genitive masanın and possessive üstü.
And then you add the locative to the end of that to get masanın üstünde "at the table's top = on top of the table, on the table".