I would add a type-in text parameter (lets call it Search_Code), with a default of % (assuming your data source is SQL).
Then in the data source for the Code list, I would add to the WHERE clause e.g.
WHERE Code LIKE '%' + @Search_Code + '%'
This will restrict the Code list to strings which partially match the Search_Code value (if entered).