Mix together the ginger, marmalade, garlic, soy sauce, brown sugar, Tabasco and mustard. Stir in the beer. Prick holes all over the roast with a 2 pronged fork. Pour marinade over roast. Cover and refrigerate for at least 2 hours, basting at least twice.
Preheat oven to 200 degrees C.
Place roast on a rack in a roasting pan. Pour about 1 cup of marinade into the roasting pan then discard remaining marinade. Pour olive oil over roast then season with freshly ground black pepper. Cover roasting pan with aluminium foil then seal edges tightly around pan.
Roast for 1 hour in the preheated oven. After the first hour, remove the aluminium foil. Baste, reduce heat to 170 degrees C then continue roasting for 1 more hour. Continue to cook until your desired doneness is reached. Remove roasting pan from oven, place aluminium foil over roast then let rest for about 30 minutes before slicing.