at dauin marine reserve, you can snorkel or dive at your heart's content, i forgot how much is the diving fee, but snorkelling for unlimited time is 50 pesos per head only, and if you do not look like a tourist, or a newbie, or make friends with the bantam-dagat, he will not charge you.
the snorkelling area is 6 meters away from the beach, and when its low tide, you can just walk there and kneel on the sand and dip your snorkelling mask to see the fishes.
get there by taking the multi cab (called 'easy ride' in dumaguete) from the dauin terminal, just behind the dumaguete city cathedral. the fare is 18pesos, get off at the dauin public market and walk all the way to the beach at basa st.