Retinal prostheses are being developed worldwide to help restore partial vision in patients suffering from eye diseases such as retinitis pigmentosa (RP) or age-related macular degradation (AMD). This paper presents a flexible electrode driver using 65 nm CMOS process for a 1024-electrode epiretinal prosthesis. The electrode driver is part of the implant device which is used to deliver electrical stimulus current to retinal tissues via electrodes. The electrode driver can drive its electrode to function as active or return. The electrode driver is able to provide stimulus current with fully programmable parameters such as pulse width, inter-phase delay, amplitude, stimulation rate. 6-bit digital to analog converters (DAC's) define 64 levels of the amplitude of the stimulus current starting from the depolarization threshold at each electrode, which helps utilize all 6-bit data to represent light brightness. The electrode driver supports both current amplitude coding and stimulation rate coding to represent light brightness. The electrode driver operates in an alternately pull-push manner with only one current sink or current source working at a time, which helps reduce headroom voltage while guaranteeing charge balance at the active electrode. The use of positive supplies instead of both positive and negative supplies simplifies CMOS circuit design.