How to cross from Singapore to Malaysia
At the Kranji MRT station in Singapore, take the 170 bus that go to Johor.
At the woodlands checkpoint, get off the bus to get immigration exit clearance. Be quick as you'll have to get back to the bus.
The bus will then again stop at the Malaysian Immigration, get entry clearance. From there, take again the 170 bus that go to Larkin. In Larkin is the terminal to the other parts of Malaysia (KL, Malacca, etc).
Use of Malaysian money will begin right after immigration, so be ready with at least a few for the bus ride to Larkin.
In Larkin, there will be money changers where rate is 2.5MYR=SGD1.
If you're heading all the way to Kuala Lumpur, there will be 2 destinations to choose from, TBS or PUDU RAYA. Bus fare is MYR35 and travel shall take 4-5 hrs depending on the driver and traffic condition.
City express and Transnational are the recommended bus lines.
City express will have one quick goilet stop after 2.5hrs and approximately after 170 kms. There are no meals nor vendors in this stop except for this small truck that sells some drinks and chips. Suggested taking your meal before hand.
The other alternative is to take the train (although the whole trip between sinagpore to kuala lumpur takes 8hours). The seats are comfortable, even those economy class, so, in case you're backpacking, you can take the night trips and keep your accomodations expense for a night.
Between the first class and economy class seats is a canteen that serves nasi lemaks (5.50MYR) , mee gorengs(5.50MYR), sandwiches(2.50MYR and up), and drinks (includig coffee 2.5MYR).
There is a comparable difference in the fare whether you buy it within malaysia or singapore. A ticket bought in malaysia (kl-sg) costs 34MYR and if bought from Singapore, will be 34SGD. So, if coming from SG, take the bus to Johor Bahru (SGD1.30) and from Johor Bahru, take the train to Kuala Lumpur.
In case you'd like to drop my Melaka, the nearest sation to alight is Tampil.