ROC curve is a plot of sensitivities against specifities. You can use the free program R and its packages like pROC or ROCR to draw the curve and calculate those ratios.
If you only have TN, TP, FN and FP, your ROC "curve" would have a single, nontrivial point. A ROC curve is draw when you have a scoring classifier (i.e., a classifier that outputs a numerical value that can be mapped to an estimate to the likelihood of the instances belonging to a class). Several machine learning packages have tools to aid in drawing the ROC curve (weka, R packages, scikit-learn). Also, this tool can help in understanding ROC charts (https://www.cs.bris.ac.uk/Research/MachineLearning/rocon/)
Also, ave a look at my paper:
Article A Survey on Graphical Methods for Classification Predictive ...
You could also plot the ROC curve using Excel or you could even plot it by hand using graphing software depending on the number of cut-scores you are working with (not very convenient if your algorithm is putting out dozens or more cut-points).
Software would be more convenient if you want to calculate the area under that ROC curve to see how well the prediction/classification algorithm is working. Not knowing your problem, you can then compare the AUCs under different conditions.