This short demo code provides the basis for using Winstar WS0010 based OLED Displays in the SPI (3-wire) connection mode. If other Forum members are interested, I could pursue rolling this into a library file compatible with various size displays. Wiring connections are illustrated in Winstar's WS0010 App Note Page 8. There are also 3 option jumpers that need to be modified in order to convert the display to SPI mode from 4-bit/8-bit parallel mode. These are:

Remove the jumper "L_CS_H" that bridges the "L_CS" connection
Remove the jumper "J68_J80"
Move the jumper "H_PS_L" to the "PS_L" position from its existing "H_PS" position.

Changing these jumper options requires a bit of soldering skill. The PCB is fragile and it's very easy to damage the copper pads and render the display inoperative.

Code:
'****************************************************************
'*  Name    : 2x8_OLED_SPI_Display_Demo                         *
'*  Author  : Roberts                                           *
'*  Notice  : Copyright (c) 2019                                *
'*          : All Rights Abandoned                              *
'*  Date    : 11/24/2019                                        *
'*  Version : 1.0                                               *
'*  Notes   : Demo code that writes to Vishay OLED-008N002A     *
'*          : 2x8 character display via SPI interface           *
'****************************************************************
'
' THIS OLED DEMO PROGRAM USES A PIC16F1619 MICROCONTROLLER IN THE MICROCHIP CURIOSITY BOARD
'
' Vishay (and several other) OLED character OLED displays are based on the Winstar WS0010 Controller
' whose command language closely emulates Hitachi's HD44780.  The WS0010 also accommodates
' an SPI-like 4-wire interface (CS, MOSI, MISO, CLK), that can be efficiently interfaced to small
' pin-count PIC uCs.  In most applications, only a 3-wire chip-select/data/clock interface is needed.
' However, the WS0010 controller requires a 10-bit clock/data sequence rather than the SPI standard 8-bit
' sequence in order to include the display's "RS" and "R/W" command bits.
' This demo code uses PCP's SHIFTOUT command with 16-bit variables truncated to 10-bits to conform with
' the display's interface requirements.
'
' While PBP's LCDOUT command uses $FE to designate a display command input in 4-bit and 8-bit parallel wired 
' modes, this code directly sets the RS=0 to write to the command memory and RS=1 to write to the character memory.
' 
' The following demo features these program segments:
'       Microcontroller configuration
'       Initialization and Variable Declarations
'       OLED Initialization
'       Looping Display of Demo Program Name ("2x8 OLED SPI TEST")
'
' The PIC16F1619 and other EMR core PICs have the LATx.x pin write function that overcomes read/modify/write 
' conflicts that can occur with PORTx.x pin writes.  If this demo code is run on BL or MR core PICs,
' assigning the CS pin function to a different port is necessary, and relocating the Function Set command to
' the end of the OLED initialization sequence might be required to ensure the OLED adopts 2-line mode.
'************************************************************************************************************

'************************** Microcontroller Configuration PIC16F1619 ****************************************
DISABLE DEBUG            ' Disable ICD code for this section

                         ' Microcontroller Configuration from PBP's "PIC***.info" files (see Ref Manual Pg. 100)
                         ' The following configuration is for a PIC16F1619 
#CONFIG
    __config _CONFIG1,  _FOSC_INTOSC & _PWRTE_ON & _MCLRE_ON & _CP_OFF & _BOREN_ON & _CLKOUTEN_OFF
    __config _CONFIG2,  _WRT_OFF & _PPS1WAY_OFF & _ZCD_OFF & _PLLEN_OFF & _STVREN_ON & _BORV_LO & _LVP_OFF
    __config _CONFIG3,  _WDTCPS_WDTCPS4 & _WDTE_ON & _WDTCWS_WDTCWS100 & _WDTCCS_LFINTOSC
#ENDCONFIG

OSCCON = %01110000         ' Set internal osc to 8MHz  (IRCF<3:0> = %1101=4 MHz, %1110=8 MHz, %1111=16 MHz)    
DEFINE OSC 8             ' Tell PBP that the device will clock at 16MHz

ENABLE DEBUG             ' Enable ICD for code that follows

'************************** Initialization and Variable Declarations *****************************************
TRISB.4 = 0      ' Set CS to output
TRISB.5 = 0      ' Set uC SCK pin to output
TRISB.6 = 0      ' Set uC SI pin to output

                ' SPI signals use LATx.x assignments to prevent read/modify/write conflicts on a single I/O port
CS  Var LATB.4  ' uC chip select output pin
SCK Var LATB.5  ' uC clock out pin
SI  Var LATB.6  ' uC data out / LCD Data in pin

CHR_x VAR WORD   ' variable name of characters sent to display
i VAR BYTE       ' loop counter variable    
CS = 1           ' Disable SPI device select CS for OLED 

'************************** SPI OLED Initialization Sequence ************************************************* 
                   'Each command is 10 bits with "00" RS & RW prefix (RS=0,RW=0)
                   'Example: $0028 = %0000 0000 0010 1000 -> 10-bit truncated = %0000101000
                   
    CS = 0                                  'Enable LCD on SPI bus
    SHIFTOUT SI, SCK, 5, [$0028\10]         'Function Set - D/L=0, N=2, Default Font
    CS = 1 : PAUSE 1 : CS = 0               'Disable CS / Pause / Enable CS
    SHIFTOUT SI, SCK, 5, [$0008\10]         'Display OFF
    CS = 1 : PAUSE 1 : CS = 0               'Disable CS / Pause / Enable CS
    SHIFTOUT SI, SCK, 5, [$0006\10]         'Entry Mode - Cursor moves right
    CS = 1 : PAUSE 1 : CS = 0               'Disable CS / Pause / Enable CS
    SHIFTOUT SI, SCK, 5, [$0001\10]         'Clear Display
    CS = 1 : PAUSE 30 : CS = 0              'Disable CS / Pause / Enable CS
    SHIFTOUT SI, SCK, 5, [$0002\10]         'Return Home (line 1 / position 1)
    CS = 1 : PAUSE 30 : CS = 0              'Disable CS / Pause / Enable CS
    SHIFTOUT SI, SCK, 5, [$000C\10]         'Display ON
    CS = 1                                  'Disable CS
    
'************************** Demo Program Name Display ********************************************************    
             'This sequence demonstates sending a character string to the OLED display
             'Each display character is 10 bits with "10" RS & RW prefix (RS=1,RW=0)
             'Example: $0200 = %0000 0010 0000 0000
             '         CHR_x = %          0100 0100 (the letter "D")
             'Bitwise OR'd and 10-bit truncated = %1001000100
main:
    CS = 0
    SHIFTOUT SI, SCK, 5, [$0080\10]              'Start at Line 1 / Position 1
    CS = 1
    
      For i = 0 to 7
      LOOKUP i, ["2x8 OLED"],CHR_x               'Get 1 character at a time from the string
      CS = 0
      SHIFTOUT SI, SCK, 5, [($0200 | CHR_x)\10]  'Bitwise OR to create 10-bit data sequence with RS=1
      CS = 1
      Pause 100                                  'Output the characters at 1/10 second intervals 
      Next i                                     'Output all 8 characters on line 1
    Pause 500                                    'Pause 1/2 second
    
    CS = 0
    SHIFTOUT SI, SCK, 5, [$00C0\10]              'Start at Line 2 / Position 1
    CS = 1
    
      For i = 0 to 7
      LOOKUP i, ["SPI TEST"],CHR_x               'Get 1 character at a time from the string
      CS = 0
      SHIFTOUT SI, SCK, 5, [($0200 | CHR_x)\10]  'Bitwise OR to create 10-bit data sequence with RS=1
      CS = 1
    Pause 100                                    'Output the characters at 1/10 second intervals
    Next i                                       'Output all 8 characters on line 2
    PAUSE 2000                                   'Pause 2 seconds after both lines are displayed
    
    CS = 0                                       'Enable CS
    SHIFTOUT SI, SCK, 5, [$0001\10]              'Clear Display
    CS = 1 : PAUSE 1000                          'Disable CS / Pause 1 second with blank display 
    
Goto main                                        'Repeat forever