The process of developing and running software that simulates programs and computers from another era. There are two main reasons for retrocomputing—both of them serious. The first is to extend the life of software that runs on obsolete computers; the second is to produce historical artefacts.